:root {
    --bg: #080b18;
    --bg-2: #0d1123;
    --panel: rgba(18, 24, 47, .86);
    --panel-strong: #12182f;
    --panel-soft: #171f3d;
    --line: rgba(150, 168, 255, .16);
    --text: #f8f9ff;
    --muted: #9aa8ca;
    --cyan: #5fe5ff;
    --blue: #4f78ff;
    --violet: #8f5cff;
    --pink: #ff4cae;
    --yellow: #ffd95a;
    --green: #5ce6a2;
    --red: #ff6d7d;
    --shadow: 0 24px 70px rgba(0, 0, 0, .36);
    --radius: 22px;
}

* { box-sizing: border-box; }
html { color-scheme: dark; }
body {
    margin: 0;
    min-height: 100vh;
    color: var(--text);
    background: var(--bg);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
input, select, textarea {
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: rgba(5, 9, 25, .74);
    color: var(--text);
    padding: .84rem .95rem;
    outline: none;
    transition: border-color .2s, box-shadow .2s, background .2s;
}
input:focus, select:focus, textarea:focus {
    border-color: rgba(95, 229, 255, .72);
    box-shadow: 0 0 0 3px rgba(95, 229, 255, .10);
    background: rgba(7, 13, 34, .96);
}
textarea { resize: vertical; }

.app-backdrop {
    position: fixed;
    inset: 0;
    z-index: -2;
    background:
        radial-gradient(circle at 10% 0%, rgba(79, 120, 255, .19), transparent 34%),
        radial-gradient(circle at 90% 5%, rgba(255, 76, 174, .14), transparent 32%),
        radial-gradient(circle at 50% 85%, rgba(143, 92, 255, .13), transparent 38%),
        linear-gradient(180deg, #080b18 0%, #090c19 58%, #070914 100%);
}
.app-backdrop::after {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .45;
    background-image:
        radial-gradient(circle at 20px 20px, rgba(255,255,255,.28) 1px, transparent 1.4px),
        radial-gradient(circle at 80px 60px, rgba(95,229,255,.20) 1px, transparent 1.4px);
    background-size: 110px 110px, 170px 170px;
    mask-image: linear-gradient(to bottom, black, transparent 75%);
}

.topbar {
    position: sticky;
    top: 0;
    z-index: 30;
    min-height: 74px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 2rem;
    padding: .7rem max(1.1rem, calc((100vw - 1380px) / 2));
    background: rgba(7, 10, 22, .82);
    border-bottom: 1px solid var(--line);
    backdrop-filter: blur(10px);
}
.brand-mini, .user-chip { display: flex; align-items: center; gap: .72rem; }
.brand-mini strong, .user-chip strong { display: block; font-size: .95rem; line-height: 1.1; }
.brand-mini small, .user-chip small { color: var(--muted); font-size: .72rem; }
.mini-ball, .item-orb, .empty-ball, .nexus-mark {
    position: relative;
    flex: 0 0 auto;
    border-radius: 50%;
    background: linear-gradient(#ef4867 0 46%, #f8f8ff 46% 100%);
    border: 2px solid #0a0d18;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.2), 0 8px 24px rgba(0,0,0,.28);
}
.mini-ball { width: 33px; height: 33px; }
.mini-ball::after, .item-orb::after, .empty-ball::after, .nexus-mark::after {
    content: "";
    position: absolute;
    left: 0; right: 0; top: 46%;
    height: 10%;
    min-height: 4px;
    background: #0a0d18;
}
.mini-ball span, .item-orb span, .empty-ball span, .nexus-mark span {
    position: absolute;
    z-index: 2;
    left: 50%; top: 51%;
    transform: translate(-50%, -50%);
    width: 29%; height: 29%;
    border-radius: 50%;
    background: #f7f9ff;
    border: 3px solid #0a0d18;
}
.desktop-nav { justify-self: center; display: flex; align-items: center; gap: .25rem; }
.desktop-nav > a {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    color: var(--muted);
    padding: .65rem .82rem;
    border-radius: 11px;
    font-size: .88rem;
    font-weight: 700;
    transition: .2s ease;
}
.desktop-nav > a:hover, .desktop-nav > a.active { color: #fff; background: rgba(111, 132, 255, .11); }
.desktop-nav > a.active { box-shadow: inset 0 -2px 0 var(--cyan); }
.nav-badge {
    display: inline-grid;
    place-items: center;
    min-width: 20px;
    height: 20px;
    padding: 0 .35rem;
    border-radius: 999px;
    font-size: .7rem;
    color: #071016;
    background: var(--yellow);
}
.nav-badge-muted { color: var(--muted); background: rgba(154,168,202,.16); }
.user-menu { display: flex; align-items: center; gap: .5rem; }
.user-chip { padding: .36rem .5rem; border-radius: 12px; }
.user-chip:hover { background: rgba(255,255,255,.04); }
.avatar {
    width: 36px; height: 36px;
    display: inline-grid; place-items: center;
    flex: 0 0 auto;
    border-radius: 50%;
    font-weight: 900;
    background: linear-gradient(145deg, var(--blue), var(--violet));
    box-shadow: 0 8px 24px rgba(79,120,255,.22);
}
.avatar-large { width: 54px; height: 54px; font-size: 1.25rem; }
.icon-button {
    width: 38px; height: 38px;
    border: 1px solid var(--line);
    border-radius: 11px;
    color: var(--muted);
    background: rgba(255,255,255,.035);
}
.icon-button:hover { color: #fff; border-color: rgba(255,255,255,.24); }

.page-shell { width: min(1380px, calc(100% - 2rem)); margin: 0 auto; padding: 2.2rem 0 6.2rem; }
.page-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 1rem;
    margin-bottom: 1.5rem;
}
.page-heading h1 { margin: .15rem 0 .35rem; font-size: clamp(2rem, 5vw, 3.45rem); line-height: .98; letter-spacing: -.045em; }
.page-heading p { margin: 0; color: var(--muted); max-width: 720px; }
.eyebrow { color: var(--cyan) !important; font-size: .72rem !important; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.muted { color: var(--muted); }
.text-link, .panel-heading > a { color: var(--cyan); font-weight: 800; font-size: .88rem; }
.section-gap { margin-top: 1.2rem; }
.subheading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: .9rem; }
.subheading h2 { margin: .15rem 0 0; font-size: 1.45rem; }

.panel {
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: linear-gradient(180deg, rgba(22, 29, 57, .84), rgba(13, 18, 38, .86));
    box-shadow: var(--shadow);
    padding: 1.15rem;
    backdrop-filter: blur(8px);
}
.panel-form { padding: 1.35rem; }
.panel-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.panel-heading h2 { margin: .18rem 0 0; font-size: 1.35rem; }
.toolbar-panel { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.sticky-panel { position: sticky; top: 92px; align-self: start; }

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    min-height: 42px;
    border: 1px solid transparent;
    border-radius: 12px;
    padding: .72rem 1rem;
    font-weight: 850;
    color: #fff;
    transition: transform .15s ease, filter .15s ease, border-color .15s ease, background .15s ease;
}
.button:hover { transform: translateY(-1px); filter: brightness(1.06); }
.button:disabled { cursor: not-allowed; opacity: .5; transform: none; }
.button-primary { background: linear-gradient(135deg, #546eff, #875cf7 60%, #ba55f7); box-shadow: 0 12px 28px rgba(86, 104, 255, .22); }
.button-secondary { background: rgba(95,229,255,.08); border-color: rgba(95,229,255,.28); color: #c8f8ff; }
.button-success { background: linear-gradient(135deg, #25b979, #4ed99b); color: #06170f; }
.button-danger { background: rgba(255, 109, 125, .11); border-color: rgba(255,109,125,.34); color: #ff9ba7; }
.button-ghost { background: rgba(255,255,255,.035); border-color: var(--line); color: var(--muted); }
.button-full { width: 100%; }
.button-small { min-height: 34px; padding: .45rem .7rem; font-size: .78rem; }
.card-actions, .approval-actions { display: flex; gap: .6rem; flex-wrap: wrap; }
.card-actions .button { flex: 1; }

.alert {
    margin-bottom: 1rem;
    padding: .82rem 1rem;
    border-radius: 13px;
    border: 1px solid var(--line);
    font-weight: 700;
}
.alert-success { color: #bfffe0; background: rgba(92,230,162,.08); border-color: rgba(92,230,162,.22); }
.alert-error { color: #ffc3ca; background: rgba(255,109,125,.08); border-color: rgba(255,109,125,.23); }

.form-stack { display: grid; gap: 1rem; }
.form-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.field { display: grid; gap: .38rem; }
.field > span { font-size: .78rem; font-weight: 800; color: #dce3ff; }
.field em { color: var(--muted); font-style: normal; font-weight: 500; }
.field-error { color: #ff93a0; font-weight: 650; }
.field-span-2 { grid-column: span 2; }
.check-row { display: flex; align-items: center; gap: .55rem; color: var(--muted); font-size: .85rem; }
.check-row input { width: auto; accent-color: var(--blue); }
.inline-field { display: flex; align-items: center; gap: .7rem; }
.inline-field select { width: min(310px, 100%); }
.search-field {
    width: min(520px, 100%);
    display: flex;
    align-items: center;
    gap: .6rem;
    padding-left: .85rem;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: rgba(5,9,25,.7);
}
.search-field span { color: var(--cyan); font-size: 1.2rem; }
.search-field input { border: 0; background: transparent; box-shadow: none; }
.segmented { display: grid; grid-template-columns: 1fr 1fr; gap: .45rem; padding: .3rem; background: rgba(0,0,0,.18); border: 1px solid var(--line); border-radius: 13px; }
.segmented label { cursor: pointer; text-align: center; padding: .65rem; border-radius: 9px; color: var(--muted); font-weight: 800; }
.segmented label.selected { color: #fff; background: rgba(91,113,255,.16); box-shadow: inset 0 0 0 1px rgba(95,229,255,.12); }
.segmented input { display: none; }

.inventory-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.inventory-grid-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.item-card {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: .9rem;
    min-height: 355px;
    padding: 1.2rem;
    border: 1px solid var(--line);
    border-radius: 24px;
    background:
        radial-gradient(circle at 15% 5%, rgba(95,229,255,.12), transparent 30%),
        linear-gradient(155deg, rgba(23,31,63,.94), rgba(12,16,35,.95));
    box-shadow: var(--shadow);
}
.item-card::after {
    content: "";
    position: absolute;
    width: 170px; height: 170px;
    right: -70px; top: -85px;
    border-radius: 50%;
    border: 1px solid rgba(95,229,255,.08);
    box-shadow: 0 0 0 25px rgba(95,229,255,.018), 0 0 0 50px rgba(95,229,255,.012);
}
.item-card-top { display: flex; justify-content: space-between; align-items: start; position: relative; z-index: 2; }
.item-orb { width: 88px; height: 88px; border-width: 4px; }
.item-orb span { border-width: 5px; }
.ball-great { background: linear-gradient(#478cff 0 46%, #f8f8ff 46% 100%); }
.ball-great::before { content: ""; position: absolute; z-index: 1; inset: 8px 12px auto; height: 16px; border: 6px solid #ef476f; border-bottom: 0; border-radius: 22px 22px 0 0; }
.ball-ultra { background: linear-gradient(#1b2130 0 46%, #f8f8ff 46% 100%); }
.ball-ultra::before { content: ""; position: absolute; z-index: 1; left: 15px; right: 15px; top: 4px; height: 38px; border-left: 10px solid #ffd43b; border-right: 10px solid #ffd43b; }
.quantity-badge { min-width: 58px; padding: .55rem .7rem; border-radius: 999px; background: rgba(5,8,20,.68); border: 1px solid var(--line); color: var(--yellow); font-size: 1rem; font-weight: 900; text-align: center; }
.item-card-body { flex: 1; position: relative; z-index: 2; }
.item-card-body h2 { margin: .45rem 0 .35rem; font-size: 1.55rem; }
.item-card-body p { margin: 0; color: var(--muted); line-height: 1.5; }
.category-tag { display: inline-flex; padding: .25rem .48rem; border-radius: 999px; color: #bdf5ff; background: rgba(95,229,255,.08); border: 1px solid rgba(95,229,255,.14); font-size: .62rem; font-weight: 900; letter-spacing: .08em; }
.item-meta { display: flex; justify-content: space-between; gap: .6rem; align-items: center; color: var(--muted); font-size: .78rem; }
.item-meta strong { color: #fff; }
.pending-note { color: var(--yellow); }
.compact-card { min-height: 250px; }
.compact-card .item-orb { width: 64px; height: 64px; }

.request-list { display: grid; gap: .65rem; }
.request-row {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: .85rem;
    padding: 1rem;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: rgba(17,23,46,.72);
}
.request-row.dense { padding: .75rem .85rem; }
.request-main { min-width: 0; }
.request-title { display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
.request-main p { margin: .25rem 0; color: var(--muted); font-size: .85rem; }
.request-main small { display: block; color: #7f8db3; margin-top: .18rem; }
.request-main .reason { color: #ffbdc5; }
.request-row time { color: var(--muted); font-size: .75rem; white-space: nowrap; }
.status { display: inline-flex; align-items: center; width: fit-content; border-radius: 999px; padding: .28rem .55rem; font-size: .68rem; font-weight: 900; }
.status-pending { color: #ffe399; background: rgba(255,217,90,.10); border: 1px solid rgba(255,217,90,.20); }
.status-approved { color: #bfffe0; background: rgba(92,230,162,.10); border: 1px solid rgba(92,230,162,.20); }
.status-rejected { color: #ffc0c8; background: rgba(255,109,125,.10); border: 1px solid rgba(255,109,125,.20); }
.status-cancelled { color: #b7c0dd; background: rgba(154,168,202,.09); border: 1px solid rgba(154,168,202,.16); }

.stats-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; }
.stat-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-height: 145px;
    padding: 1.2rem;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: linear-gradient(150deg, rgba(24,32,65,.91), rgba(13,18,39,.9));
    box-shadow: var(--shadow);
}
.stat-card.stat-alert { background: linear-gradient(150deg, rgba(64,48,24,.62), rgba(30,21,31,.9)); border-color: rgba(255,217,90,.18); }
.stat-icon { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 16px; color: var(--cyan); background: rgba(95,229,255,.08); font-size: 1.5rem; font-weight: 900; }
.stat-card small, .stat-card span { display: block; color: var(--muted); }
.stat-card strong { display: block; margin: .1rem 0; font-size: 2.25rem; line-height: 1; }

.player-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; }
.player-card { padding: 1.15rem; border: 1px solid var(--line); border-radius: 20px; background: rgba(17,23,46,.76); box-shadow: 0 14px 40px rgba(0,0,0,.22); }
.player-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: .8rem; }
.player-card h2 { margin: 0 0 .15rem; }
.player-card > p { margin: 0; color: var(--muted); }
.player-meta { display: grid; gap: .25rem; margin: .8rem 0 1rem; color: #8795ba; font-size: .78rem; }

.master-inventory-layout, .catalog-layout { display: grid; grid-template-columns: minmax(280px, 360px) 1fr; gap: 1.2rem; align-items: start; }
.catalog-list { display: grid; gap: .7rem; }
.catalog-card { display: flex; gap: .9rem; align-items: center; padding: 1rem; border: 1px solid var(--line); border-radius: 17px; background: rgba(17,23,46,.72); }
.catalog-main { flex: 1; display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.catalog-main h3 { margin: .35rem 0 .2rem; }
.catalog-main p { margin: 0; color: var(--muted); }
.catalog-actions { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; justify-content: flex-end; }

.approval-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .8rem; }
.approval-card { display: grid; gap: .9rem; padding: 1rem; border: 1px solid rgba(255,217,90,.14); border-radius: 18px; background: linear-gradient(145deg, rgba(27,31,56,.95), rgba(15,20,39,.9)); }
.approval-user { display: flex; align-items: center; gap: .7rem; }
.approval-user small { display: block; color: var(--muted); }
.approval-item { display: flex; align-items: center; gap: .8rem; padding: .8rem; border-radius: 14px; background: rgba(4,7,20,.35); }
.approval-item h3 { margin: .1rem 0; font-size: 1.1rem; }
.approval-item p, .approval-item small { margin: 0; color: var(--muted); }
.approval-card > time { color: var(--muted); font-size: .74rem; }
.approval-actions .button { flex: 1; }
.count-pill { display: inline-flex; align-items: center; justify-content: center; min-width: 30px; height: 30px; border-radius: 999px; background: rgba(255,217,90,.10); color: var(--yellow); font-size: .85rem; vertical-align: middle; }
.rejection-panel { display: grid; grid-template-columns: 1fr 1.3fr auto; gap: 1rem; align-items: end; border-color: rgba(255,109,125,.22); }

.timeline { display: grid; gap: .4rem; }
.timeline-row { position: relative; display: grid; grid-template-columns: 24px 1fr; gap: .75rem; }
.timeline-row::before { content: ""; position: absolute; left: 11px; top: 28px; bottom: -10px; width: 2px; background: var(--line); }
.timeline-row:last-child::before { display: none; }
.timeline-marker { width: 14px; height: 14px; margin-top: 20px; justify-self: center; border-radius: 50%; box-shadow: 0 0 0 5px rgba(95,229,255,.06); }
.timeline-marker.positive { background: var(--green); }
.timeline-marker.negative { background: var(--pink); }
.timeline-card { padding: .9rem 1rem; border: 1px solid var(--line); border-radius: 15px; background: rgba(17,23,46,.70); }
.timeline-head, .timeline-foot { display: flex; justify-content: space-between; align-items: center; gap: .8rem; }
.timeline-card p { margin: .25rem 0; color: var(--muted); font-size: .85rem; }
.timeline-card small { color: #c0cae6; }
.timeline-foot { margin-top: .55rem; color: #7381a7; font-size: .72rem; }
.movement { display: inline-flex; min-width: 38px; justify-content: center; padding: .28rem .5rem; border-radius: 8px; font-weight: 900; }
.movement-in { color: #bfffe0; background: rgba(92,230,162,.09); }
.movement-out { color: #ffc0c8; background: rgba(255,109,125,.09); }

.table-wrap { overflow: auto; border: 1px solid var(--line); border-radius: 18px; background: rgba(14,19,40,.82); box-shadow: var(--shadow); }
.data-table { width: 100%; border-collapse: collapse; min-width: 1050px; }
.data-table th { position: sticky; top: 0; z-index: 1; text-align: left; padding: .8rem; font-size: .67rem; letter-spacing: .07em; text-transform: uppercase; color: #8998bf; background: #11172f; }
.data-table td { padding: .8rem; border-top: 1px solid rgba(150,168,255,.09); color: #cbd4ef; font-size: .82rem; vertical-align: top; }
.data-table tr:hover td { background: rgba(95,229,255,.025); }
.nowrap { white-space: nowrap; }

.empty-state { grid-column: 1 / -1; min-height: 280px; display: grid; place-items: center; align-content: center; text-align: center; gap: .4rem; padding: 2rem; border: 1px dashed rgba(150,168,255,.22); border-radius: 22px; background: rgba(14,19,40,.46); }
.empty-state.compact { min-height: 150px; }
.empty-state h2 { margin: .35rem 0 0; }
.empty-state p { margin: 0; color: var(--muted); }
.empty-ball { width: 70px; height: 70px; }
.empty-inline { padding: 1rem; color: var(--muted); text-align: center; border-radius: 13px; background: rgba(255,255,255,.025); }
.empty-inline.large { grid-column: 1 / -1; padding: 2rem; }

.mobile-nav { display: none; }

.guest-body {
    min-height: 100vh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 14% 16%, rgba(79,120,255,.28), transparent 28%),
        radial-gradient(circle at 84% 12%, rgba(255,76,174,.17), transparent 28%),
        radial-gradient(circle at 58% 86%, rgba(143,92,255,.18), transparent 34%),
        #070a16;
}
.stars { position: fixed; inset: 0; pointer-events: none; opacity: .45; }
.stars-one { background-image: radial-gradient(circle at 10px 10px, white 1px, transparent 1.3px); background-size: 92px 92px; }
.stars-two { background-image: radial-gradient(circle at 40px 80px, #5fe5ff 1px, transparent 1.4px); background-size: 157px 157px; }
.guest-shell { width: min(1120px, calc(100% - 2rem)); min-height: 100vh; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 2rem; padding: 2rem 0; }
.brand-panel { position: relative; min-height: 550px; display: flex; flex-direction: column; justify-content: center; padding: 2rem; }
.brand-panel h1 { margin: .2rem 0 .7rem; max-width: 560px; font-size: clamp(3rem, 8vw, 5.8rem); line-height: .85; letter-spacing: -.07em; background: linear-gradient(135deg, #fff 10%, #8ef0ff 55%, #ac8aff); -webkit-background-clip: text; color: transparent; }
.brand-copy { max-width: 480px; color: var(--muted); line-height: 1.65; }
.nexus-mark { width: 98px; height: 98px; margin-bottom: 1rem; box-shadow: 0 0 60px rgba(79,120,255,.30); }
.brand-orbit { position: absolute; width: 420px; height: 420px; border: 1px solid rgba(95,229,255,.08); border-radius: 50%; left: -110px; top: 50%; transform: translateY(-50%); box-shadow: 0 0 0 50px rgba(95,229,255,.018), 0 0 0 100px rgba(143,92,255,.012); z-index: -1; }
.auth-panel { display: flex; justify-content: center; }
.auth-card { width: min(430px, 100%); padding: 1.5rem; border-radius: 24px; border: 1px solid var(--line); background: rgba(15,21,43,.82); box-shadow: var(--shadow); backdrop-filter: blur(10px); }
.auth-card-wide { width: min(620px, 100%); }
.auth-card h2 { margin: .2rem 0 .3rem; font-size: 2rem; }
.auth-card > .muted { margin: 0 0 1.2rem; }
.auth-footer { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); text-align: center; color: var(--muted); font-size: .84rem; }
.auth-footer a { color: var(--cyan); font-weight: 800; }

@media (max-width: 1080px) {
    .desktop-nav { display: none; }
    .topbar { grid-template-columns: 1fr auto; }
    .stats-grid, .player-grid, .inventory-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .approval-grid { grid-template-columns: 1fr; }
    .master-inventory-layout, .catalog-layout { grid-template-columns: 320px 1fr; }
    .rejection-panel { grid-template-columns: 1fr; align-items: stretch; }
}

@media (max-width: 760px) {
    body { padding-bottom: 72px; }
    .topbar { min-height: 64px; padding: .55rem .8rem; }
    .brand-mini strong { font-size: .85rem; }
    .brand-mini small { display: none; }
    .user-chip > span:last-child { display: none; }
    .page-shell { width: min(100% - 1rem, 1380px); padding-top: 1.25rem; padding-bottom: 2rem; }
    .page-heading { align-items: flex-start; flex-direction: column; margin-bottom: 1rem; }
    .page-heading h1 { font-size: 2.25rem; }
    .page-heading .button { width: 100%; }
    .mobile-nav {
        position: fixed;
        z-index: 50;
        left: .55rem; right: .55rem; bottom: .55rem;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        padding: .4rem;
        border: 1px solid var(--line);
        border-radius: 18px;
        background: rgba(10,14,29,.93);
        box-shadow: 0 18px 60px rgba(0,0,0,.5);
        backdrop-filter: blur(10px);
    }
    .mobile-nav a { display: grid; place-items: center; gap: .12rem; padding: .42rem .25rem; color: #8290b5; font-size: .62rem; font-weight: 800; border-radius: 12px; }
    .mobile-nav a span { font-size: 1rem; }
    .mobile-nav a.active { color: #fff; background: rgba(82,106,255,.16); }
    .stats-grid, .player-grid, .inventory-grid, .inventory-grid-compact { grid-template-columns: 1fr; }
    .item-card { min-height: 325px; }
    .request-row { grid-template-columns: auto 1fr; }
    .request-row > .button { grid-column: 1 / -1; }
    .request-title { align-items: flex-start; flex-direction: column; }
    .master-inventory-layout, .catalog-layout { grid-template-columns: 1fr; }
    .sticky-panel { position: static; }
    .catalog-main { align-items: flex-start; flex-direction: column; }
    .catalog-actions { justify-content: flex-start; }
    .toolbar-panel { flex-direction: column; align-items: stretch; }
    .inline-field { align-items: stretch; flex-direction: column; }
    .inline-field select { width: 100%; }
    .form-grid-2 { grid-template-columns: 1fr; }
    .field-span-2 { grid-column: auto; }
    .timeline-foot { align-items: flex-start; flex-direction: column; gap: .2rem; }
    .guest-shell { grid-template-columns: 1fr; padding: 1rem 0 2rem; }
    .brand-panel { min-height: auto; padding: 3rem 1rem 1rem; text-align: center; align-items: center; }
    .brand-panel h1 { font-size: 3.4rem; }
    .brand-copy { font-size: .9rem; }
    .brand-orbit { width: 300px; height: 300px; left: 50%; top: 45%; transform: translate(-50%, -50%); }
    .auth-card { padding: 1.1rem; }
}

@media (max-width: 430px) {
    .brand-mini .mini-ball { width: 29px; height: 29px; }
    .user-menu { gap: .2rem; }
    .avatar { width: 32px; height: 32px; }
    .item-orb { width: 76px; height: 76px; }
    .approval-actions, .card-actions { flex-direction: column; }
    .approval-actions .button, .card-actions .button { width: 100%; }
    .segmented { grid-template-columns: 1fr; }
}

.profile-layout { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); gap: 1rem; align-items: start; }
@media (max-width: 760px) { .profile-layout { grid-template-columns: 1fr; } }


/* Nexus tools */
.tool-nav-link { white-space: nowrap; }
.tool-shell { display: grid; gap: 1rem; }
.tool-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.tool-heading h1 { margin: .1rem 0 .25rem; }
.tool-heading p:not(.eyebrow) { margin: 0; color: var(--muted); }
.tool-frame { width: 100%; min-height: calc(100vh - 190px); border: 1px solid var(--line); border-radius: 22px; background: #050711; box-shadow: var(--shadow); }

/* Item images */
.item-image { width: 96px; height: 96px; padding: .35rem; border-radius: 22px; border: 1px solid rgba(95,229,255,.16); background: radial-gradient(circle, rgba(95,229,255,.12), rgba(7,11,28,.82)); overflow: hidden; position: relative; z-index: 2; }
.item-image img { width: 100%; height: 100%; object-fit: contain; display: block; }
.item-image-compact { width: 72px; height: 72px; }
.catalog-thumb { flex: 0 0 76px; width: 76px; height: 76px; padding: .3rem; display: grid; place-items: center; overflow: hidden; border-radius: 16px; border: 1px solid rgba(95,229,255,.14); background: rgba(5,9,25,.55); }
.catalog-thumb img { width: 100%; height: 100%; object-fit: contain; display: block; }
.upload-drop { min-height: 110px; display: grid; place-items: center; align-content: center; gap: .25rem; padding: 1rem; border: 1px dashed rgba(95,229,255,.35); border-radius: 16px; background: rgba(95,229,255,.035); cursor: pointer; text-align: center; transition: .18s ease; }
.upload-drop:hover { border-color: var(--cyan); background: rgba(95,229,255,.07); }
.upload-drop input { display: none; }
.upload-drop strong { color: #eafcff; }
.upload-drop small, .upload-loading { color: var(--muted); font-size: .75rem; }
.image-preview-box { display: flex; align-items: center; gap: .8rem; margin-top: .7rem; padding: .65rem; border: 1px solid var(--line); border-radius: 14px; background: rgba(5,9,25,.5); }
.image-preview-box img { width: 92px; height: 92px; object-fit: contain; border-radius: 12px; background: rgba(255,255,255,.03); }
.image-preview-box > span, .image-preview-box div span { display: block; color: var(--muted); font-size: .75rem; margin-bottom: .25rem; }
.danger-link { color: #ff9bab !important; background: none; border: 0; padding: 0; cursor: pointer; }

@media(max-width:900px){
    .tool-heading { align-items: stretch; flex-direction: column; }
    .tool-frame { min-height: calc(100vh - 230px); border-radius: 16px; }
}

@media(max-width:760px){
    .mobile-nav { overflow-x: auto; justify-content: flex-start; }
    .mobile-nav a { min-width: 76px; flex: 0 0 auto; }
}

/* Economy, shop and transfers */
.wallet-panel {
    display: flex; align-items: center; justify-content: space-between; gap: 1rem;
    padding: 1rem 1.2rem; border: 1px solid rgba(255,217,90,.20); border-radius: 20px;
    background: linear-gradient(135deg, rgba(77,58,18,.45), rgba(19,22,45,.92)); box-shadow: var(--shadow);
}
.wallet-panel > div { display: grid; gap: .15rem; }
.wallet-label { color: #d9c27c; font-size: .7rem; font-weight: 900; letter-spacing: .12em; }
.wallet-value { color: #ffe77d; font-size: 2rem; line-height: 1.1; text-shadow: 0 0 24px rgba(255,217,90,.18); }
.wallet-value.small { font-size: 1.45rem; margin: .15rem 0; }
.wallet-panel small { color: var(--muted); }
.money-inline { display: inline-block; margin-top: .45rem; color: #ffe77d; font-size: .8rem; }
.item-action-stack { display: grid; gap: .45rem; }

/* Modal visibility guard — prevents hidden dialogs from covering the page on first load. */
.modal-backdrop.hidden,
.modal-backdrop[aria-hidden="true"] { display: none !important; }

.modal-backdrop { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 1rem; background: rgba(3,5,14,.82); backdrop-filter: blur(8px); }
.modal-panel { width: min(520px, 100%); padding: 1.3rem; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(160deg,#151d3b,#0b1024); box-shadow: 0 30px 100px rgba(0,0,0,.6); }
.modal-panel h2 { margin: .2rem 0 .35rem; }
.modal-panel .field { margin-top: .85rem; }

.shop-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.shop-card { display: flex; flex-direction: column; gap: .8rem; min-height: 350px; padding: 1rem; border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(155deg,rgba(19,27,56,.94),rgba(10,14,31,.96)); box-shadow: 0 16px 45px rgba(0,0,0,.24); }
.shop-card-main { display: flex; flex: 1; flex-direction: column; }
.shop-card-main h3 { margin: .4rem 0 .25rem; font-size: 1.2rem; }
.shop-card-main p { margin: 0; color: var(--muted); line-height: 1.45; font-size: .83rem; }
.shop-meta { display: flex; justify-content: space-between; gap: .6rem; align-items: center; margin-top: auto; padding-top: .9rem; color: var(--muted); font-size: .75rem; }
.shop-meta strong { color: #ffe77d; font-size: 1rem; }
.small-thumb { width: 54px; height: 54px; flex-basis: 54px; }
.stacked-panels { display: grid; gap: 1rem; }
.transfer-card { border-color: rgba(95,229,255,.20); }
.money-card { border-color: rgba(255,217,90,.22); }

@media(max-width:1080px){ .shop-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:760px){
    .wallet-panel { align-items: stretch; flex-direction: column; }
    .wallet-panel .button { width: 100%; }
    .shop-grid { grid-template-columns: 1fr; }
    .shop-card { min-height: 300px; }
}
/* v0.5 - fichas e Pokémon */
.trainer-sheet { display:flex; flex-direction:column; gap:1rem; }
.sheet-hero { display:grid; grid-template-columns:220px 1fr; gap:1.2rem; padding:1.2rem; }
.trainer-photo { min-height:240px; display:flex; flex-direction:column; gap:.8rem; align-items:center; justify-content:center; border:1px dashed var(--line); border-radius:20px; background:rgba(5,10,28,.55); }
.trainer-photo img { width:min(100%,320px); height:auto; max-height:440px; object-fit:contain; border-radius:18px; background:rgba(0,0,0,.18); }
.trainer-photo>span { font-size:5rem; opacity:.55; }
.sheet-fields label,.trainer-sheet label,.pokemon-form label { display:flex; flex-direction:column; gap:.38rem; color:var(--muted); font-size:.78rem; font-weight:700; }
.sheet-fields input,.trainer-sheet input,.trainer-sheet textarea,.trainer-sheet select,.pokemon-form input,.pokemon-form select { width:100%; padding:.75rem .8rem; border:1px solid var(--line); border-radius:12px; background:rgba(5,10,28,.72); color:var(--text); }
.trainer-sheet textarea { min-height:86px; resize:vertical; }
.form-grid { display:grid; gap:.8rem; } .form-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sheet-columns { display:grid; grid-template-columns:1.4fr .8fr; gap:1rem; }
.sheet-columns>.panel,.trainer-sheet>.panel { padding:1.2rem; }
.attribute-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.8rem; }
.attribute-grid input { font-size:1.5rem; text-align:center; }
.skills-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }
.team-strip { display:flex; gap:.6rem; flex-wrap:wrap; }.team-strip span { padding:.55rem .8rem; border:1px solid var(--line); border-radius:999px; background:rgba(95,229,255,.06); }
.form-actions { display:flex; gap:.7rem; justify-content:flex-end; }
.pokemon-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }.pokemon-card { display:grid; grid-template-columns:150px 1fr; gap:1rem; padding:1rem; }.pokemon-art { width:140px; height:140px; object-fit:contain; }.pokemon-card .card-actions { grid-column:1/-1; }.move-slots { display:grid; grid-template-columns:repeat(2,1fr); gap:.35rem; margin-top:.7rem; }.move-slots span { padding:.4rem .55rem; border-radius:9px; background:rgba(95,229,255,.06); font-size:.75rem; }
.pokemon-form { padding:1.2rem; }.move-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }.move-plus { display:inline-grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--cyan); color:#07101c; margin-right:.3rem; }
@media(max-width:900px){.sheet-hero,.sheet-columns,.pokemon-card{grid-template-columns:1fr}.form-grid.three,.skills-grid{grid-template-columns:repeat(2,1fr)}.pokemon-grid{grid-template-columns:1fr}}
@media(max-width:560px){.form-grid.three,.skills-grid,.attribute-grid,.move-form-grid{grid-template-columns:1fr}}

/* Performance / large catalog UI */
.catalog-autocomplete { position: relative; }
.catalog-results {
    display: none;
    position: absolute;
    z-index: 80;
    left: 0;
    right: 0;
    top: calc(100% + .35rem);
    max-height: 290px;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: .35rem;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #0b1024;
    box-shadow: 0 18px 50px rgba(0,0,0,.42);
}
.catalog-results.open { display: grid; gap: .2rem; }
.catalog-result-option {
    width: 100%;
    border: 0;
    border-radius: 10px;
    padding: .72rem .8rem;
    color: #e9efff;
    background: transparent;
    text-align: left;
    line-height: 1.3;
    cursor: pointer;
}
.catalog-result-option:hover, .catalog-result-option:focus { background: rgba(95,229,255,.09); outline: none; }
.catalog-result-empty { padding: .75rem; color: var(--muted); font-size: .85rem; }
.catalog-results-wide { min-width: min(520px, 90vw); }

.nexus-pager {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .8rem;
    margin: 1.2rem 0 .35rem;
    color: var(--muted);
}
.nexus-pager .disabled, .nexus-pager button:disabled { opacity: .4; pointer-events: none; }

/* Store thumbnails intentionally match inventory thumbnails. */
.shop-image {
    width: 96px;
    height: 96px;
    min-width: 96px;
    min-height: 96px;
    align-self: flex-start;
    display: grid;
    place-items: center;
    padding: .35rem;
    border-radius: 22px;
    border: 1px solid rgba(95,229,255,.16);
    background: radial-gradient(circle, rgba(95,229,255,.12), rgba(7,11,28,.82));
    overflow: hidden;
}
.shop-image img { width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; display: block; }

/* Avoid painting cards that are far outside the viewport. */
.item-card, .shop-card, .catalog-card, .player-card, .pokemon-card, .timeline-card {
    content-visibility: auto;
    contain-intrinsic-size: 320px;
}

@media(max-width: 760px) {
    .catalog-results-wide { min-width: 100%; }
    .nexus-pager { justify-content: space-between; }
    .topbar, .panel, .auth-card, .modal-backdrop { backdrop-filter: none; }
}

/* Pokémon roster, backups and local Pokédex media */
.page-header-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:.55rem; }
.pokemon-roster-section { padding:1.15rem; }
.team-slot-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.team-slot { position:relative; min-width:0; }
.team-slot-number { position:absolute; z-index:4; top:.55rem; right:.65rem; padding:.25rem .5rem; border-radius:999px; background:rgba(3,7,22,.82); border:1px solid rgba(95,229,255,.28); color:var(--cyan); font-size:.68rem; font-weight:900; letter-spacing:.08em; }
.team-empty-slot { min-height:250px; display:grid; place-items:center; align-content:center; gap:.35rem; border:1px dashed rgba(95,229,255,.28); border-radius:20px; color:var(--muted); background:rgba(95,229,255,.025); }
.team-empty-slot span { font-size:2.4rem; color:var(--cyan); opacity:.75; }.team-empty-slot strong{color:var(--text)}
.pokemon-card { grid-template-columns:150px minmax(0,1fr); align-items:start; }
.pokemon-card-media { display:grid; gap:.55rem; justify-items:center; }
.pokemon-art-fallback { width:140px; height:140px; display:grid; place-items:center; border-radius:50%; font-size:3rem; background:radial-gradient(circle,rgba(124,92,255,.2),transparent 70%); }
.pokemon-card-info { min-width:0; }.pokemon-card-info h2 { margin:.45rem 0 .25rem; }
.pokemon-card-tags { display:flex; flex-wrap:wrap; gap:.35rem; align-items:center; }
.location-tag { padding:.28rem .55rem; border-radius:999px; font-size:.67rem; font-weight:900; letter-spacing:.07em; border:1px solid var(--line); }
.location-tag.team { color:#91f7c7; background:rgba(86,227,159,.08); border-color:rgba(86,227,159,.35); }.location-tag.bank { color:#b8c9ee; background:rgba(111,132,180,.08); }
.pokemon-card-pending { border-color:rgba(255,199,93,.38); }
.pokemon-card-actions { display:flex; flex-wrap:wrap; gap:.45rem; align-items:center; }
.pokemon-card-actions form { margin:0; }
.button-audio { background:linear-gradient(135deg,#0d9ed8,#6b52e9); color:#fff; }
.button:disabled, button:disabled { opacity:.45; cursor:not-allowed; filter:grayscale(.25); }
.modal-wide { width:min(760px,100%); max-height:88vh; overflow:auto; }
.backup-toolbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:1rem 0 .65rem; }
.backup-pokemon-list { display:grid; gap:.45rem; max-height:48vh; overflow:auto; padding:.2rem; }
.backup-pokemon-row { display:flex; align-items:center; gap:.7rem; padding:.7rem .8rem; border:1px solid var(--line); border-radius:12px; background:rgba(95,229,255,.035); cursor:pointer; }
.backup-pokemon-row input { width:18px; height:18px; flex:0 0 auto; }.backup-pokemon-row span{display:grid;gap:.12rem}.backup-pokemon-row small{color:var(--muted)}
.file-drop { display:grid; gap:.5rem; padding:1rem; margin:.85rem 0; border:1px dashed rgba(95,229,255,.35); border-radius:14px; background:rgba(95,229,255,.035); color:var(--muted); }
.pokemon-request-thumb { width:70px; height:70px; display:grid; place-items:center; flex:0 0 70px; }.pokemon-request-thumb img{width:100%;height:100%;object-fit:contain}
.pokemon-form-media { display:flex; align-items:center; gap:1rem; padding:1rem; margin-bottom:1rem; }.pokemon-form-media img { width:130px; height:130px; object-fit:contain; }

@media(max-width:1050px){.team-slot-grid{grid-template-columns:1fr}}
@media(max-width:700px){.page-header-actions{justify-content:flex-start}.pokemon-card{grid-template-columns:1fr}.pokemon-card-media{justify-items:start}.team-empty-slot{min-height:170px}.pokemon-form-media{align-items:flex-start}.pokemon-form-media img{width:100px;height:100px}}

/* v0.7.0 — ficha Pokémon, foto e busca no Banco */
.form-grid.five { grid-template-columns: repeat(5, minmax(0,1fr)); }
.pokemon-combat-panel { border-top:1px solid rgba(255,255,255,.08); padding-top:1rem; }
.pokemon-stat-grid input[readonly] { opacity:.82; cursor:default; background:rgba(255,255,255,.035); }
.combat-rule-note { margin:.65rem 0 0; }
.pokemon-combat-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.45rem; margin:.75rem 0; }
.pokemon-combat-summary span { display:flex; flex-direction:column; gap:.15rem; padding:.5rem .6rem; border:1px solid rgba(255,255,255,.08); background:rgba(95,229,255,.045); border-radius:10px; }
.pokemon-combat-summary small { color:var(--muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.04em; }
.pokemon-combat-summary strong { font-size:1rem; }
.pokemon-bank-search { display:flex; gap:.7rem; align-items:center; margin:.7rem 0 1rem; padding:.8rem; }
.pokemon-bank-search .search-field { flex:1; margin:0; }
.trainer-photo img[hidden] { display:none !important; }
.trainer-photo small { text-align:center; }
@media(max-width:1100px){.form-grid.five{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:700px){.form-grid.five,.pokemon-combat-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.pokemon-bank-search{align-items:stretch;flex-direction:column;}}

/* v0.8.0 — Pokedex C-12 */
.c12-nav-link { color:#ffb37d !important; }
.c12-nav-link.active { color:#fff !important; box-shadow:inset 0 -2px 0 #ff7138 !important; }
.c12-hero { min-height:430px; display:grid; grid-template-columns:minmax(320px,.8fr) minmax(440px,1.2fr); gap:1rem; overflow:hidden; padding:2rem; background:radial-gradient(circle at 78% 30%,rgba(255,99,45,.15),transparent 35%),linear-gradient(145deg,rgba(26,28,40,.96),rgba(9,12,25,.96)); }
.c12-hero-copy { align-self:center; position:relative; z-index:2; }
.c12-hero-copy h1 { margin:.2rem 0 .75rem; font-size:clamp(3rem,7vw,6.4rem); line-height:.85; letter-spacing:-.055em; text-transform:uppercase; background:linear-gradient(180deg,#fff,#ffb080 70%,#e94d20); color:transparent; background-clip:text; -webkit-background-clip:text; }
.c12-hero-copy>p:not(.eyebrow) { max-width:650px; color:#c1c8db; font-size:1.05rem; line-height:1.65; }
.c12-status-line { display:flex; align-items:center; gap:.55rem; margin-top:1.3rem; color:#9ae7bf; font-size:.78rem; font-weight:900; text-transform:uppercase; letter-spacing:.1em; }
.c12-status-line span { width:10px; height:10px; border-radius:50%; background:#58e39c; box-shadow:0 0 18px #58e39c; }
.c12-device-art { min-width:0; display:grid; place-items:center; align-self:center; }
.c12-device-art img { width:min(100%,820px); max-height:440px; object-fit:contain; filter:drop-shadow(0 30px 36px rgba(0,0,0,.5)); }
.c12-menu-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.c12-menu-card { min-height:185px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1.1rem; padding:1.25rem; border:1px solid var(--line); border-radius:22px; background:linear-gradient(145deg,rgba(20,27,53,.9),rgba(9,13,29,.95)); box-shadow:var(--shadow); transition:transform .18s,border-color .18s,background .18s; }
.c12-menu-card:hover { transform:translateY(-3px); border-color:rgba(255,126,71,.42); background:linear-gradient(145deg,rgba(29,34,59,.96),rgba(13,17,34,.98)); }
.c12-menu-icon { width:72px; height:72px; display:grid; place-items:center; border-radius:20px; font-size:2rem; color:#fff; background:linear-gradient(145deg,#e95325,#ff8a45); box-shadow:0 13px 28px rgba(226,78,34,.22); }
.c12-menu-card small { color:#ff9d68; font-weight:900; letter-spacing:.12em; }
.c12-menu-card h2 { margin:.2rem 0 .35rem; font-size:1.55rem; }
.c12-menu-card p { margin:0; color:var(--muted); line-height:1.5; }
.c12-menu-card>b { font-size:1.5rem; color:#ff9864; }
.c12-menu-community .c12-menu-icon { background:linear-gradient(145deg,#3b70e7,#7064ef); }
.c12-menu-modules .c12-menu-icon { background:linear-gradient(145deg,#606875,#303744); }
.c12-menu-pokedex .c12-menu-icon { background:linear-gradient(145deg,#16a6c3,#4959d9); }
.c12-admin-strip { display:flex; justify-content:space-between; align-items:center; gap:1rem; border-color:rgba(255,126,71,.18); }
.c12-admin-strip h2 { margin:.15rem 0 .35rem; }
.c12-empty-module { min-height:460px; display:grid; place-items:center; align-content:center; text-align:center; gap:.8rem; }
.c12-module-core { width:110px; height:110px; display:grid; place-items:center; border:1px solid rgba(255,126,71,.32); border-radius:30px; color:#ff8d56; font-size:3rem; background:rgba(255,126,71,.06); box-shadow:0 0 55px rgba(255,102,45,.12); }
.c12-empty-module h2 { margin:.4rem 0 0; }.c12-empty-module p{max-width:620px;margin:0;color:var(--muted)}
.c12-module-slots { display:flex; gap:.6rem; margin-top:1rem; }.c12-module-slots span{padding:.55rem .8rem;border:1px dashed rgba(255,255,255,.15);border-radius:10px;color:#75809e;font-size:.7rem;font-weight:900;}
.status-badge { display:inline-flex; align-items:center; width:fit-content; border-radius:999px; padding:.28rem .55rem; font-size:.68rem; font-weight:900; }
.mission-tabs { display:flex; gap:.45rem; margin-bottom:1rem; padding:.35rem; width:fit-content; max-width:100%; overflow:auto; border:1px solid var(--line); border-radius:14px; background:rgba(5,9,25,.55); }
.mission-tab { border:0; border-radius:10px; padding:.72rem 1rem; color:var(--muted); background:transparent; font-weight:850; white-space:nowrap; }.mission-tab.active{color:#fff;background:rgba(255,112,53,.12);box-shadow:inset 0 0 0 1px rgba(255,126,71,.18)}.mission-tab span{margin-left:.3rem;color:#ffb078;}
.mission-tab-panel{display:none}.mission-tab-panel.active{display:block}.mission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mission-card{display:flex;flex-direction:column;gap:.85rem;min-height:310px;padding:1.2rem;border:1px solid var(--line);border-radius:21px;background:radial-gradient(circle at 95% 0%,rgba(255,102,45,.08),transparent 35%),linear-gradient(155deg,rgba(20,27,52,.94),rgba(10,14,31,.96));box-shadow:0 18px 50px rgba(0,0,0,.24)}.mission-card h2{margin:0;font-size:1.45rem}.mission-card>p{margin:0;color:var(--muted);line-height:1.55;flex:1}.mission-card-head{display:flex;justify-content:space-between;gap:.6rem;align-items:center}.mission-code{color:#ff9e68;font-size:.68rem;font-weight:950;letter-spacing:.12em}.mission-rewards{display:flex;flex-wrap:wrap;gap:.38rem}.mission-reward{display:inline-flex;padding:.38rem .55rem;border-radius:10px;font-size:.72rem;font-weight:850;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035)}.mission-reward.money{color:#ffe477;border-color:rgba(255,217,90,.22);background:rgba(255,217,90,.07)}.mission-reward.item{color:#bfffe1;border-color:rgba(92,230,162,.18);background:rgba(92,230,162,.055)}.mission-reward.neutral{color:var(--muted)}.mission-completed{filter:grayscale(.78);opacity:.62}.mission-completed:hover{opacity:.8}.mission-waiting{border-color:rgba(255,217,90,.22)}.mission-disabled{filter:grayscale(.75);opacity:.58}.mission-rejection{padding:.65rem .75rem;border-radius:11px;color:#ffc4cb;background:rgba(255,109,125,.07);border:1px solid rgba(255,109,125,.18);font-size:.8rem}.mission-admin-list{display:grid;gap:.75rem}.mission-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:1rem}.mission-admin-main h2{margin:.4rem 0 .25rem}.mission-admin-main p{margin:.2rem 0 .5rem}.mission-counts{display:flex;gap:.55rem}.mission-counts span{min-width:76px;padding:.65rem;border:1px solid var(--line);border-radius:12px;text-align:center;color:var(--muted);font-size:.68rem}.mission-counts b{display:block;color:#fff;font-size:1.1rem}.mission-review-row{grid-template-columns:1fr auto}.mission-long-text{color:#d6def2;line-height:1.7}.reward-builder-list{display:grid;gap:.5rem}.reward-builder-row{display:grid;grid-template-columns:minmax(0,1fr) 120px 44px;gap:.5rem}.reward-builder-row .button{padding:.5rem}.mission-reward-builder{padding-top:.4rem;border-top:1px solid var(--line)}
.community-layout{display:grid;grid-template-columns:370px minmax(0,1fr);gap:1rem;align-items:start}.community-post-list,.community-replies{display:grid;gap:.75rem}.community-post-card{display:block;padding:1.1rem;transition:border-color .18s,transform .18s}.community-post-card:hover{transform:translateY(-2px);border-color:rgba(95,229,255,.3)}.community-post-head{display:flex;align-items:center;gap:.7rem}.community-post-head>div{display:grid;gap:.12rem}.community-post-head small{color:var(--muted);font-size:.7rem}.community-post-card h2{margin:.9rem 0 .4rem}.community-post-card>p{margin:0;color:var(--muted);line-height:1.55}.community-post-foot{display:flex;justify-content:space-between;gap:.6rem;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--line);color:#8fa1c9;font-size:.75rem}.community-post-foot span:last-child{color:var(--cyan);font-weight:800}.admin-alias-tag{display:inline-flex;margin-left:.35rem;padding:.18rem .38rem;border-radius:999px;color:#ffb17f;background:rgba(255,112,53,.09);border:1px solid rgba(255,112,53,.16);font-size:.6rem}.community-thread-root{padding:1.35rem}.community-thread-body{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line);line-height:1.75;color:#dde5f8}.community-reply{padding:1rem}.community-reply .community-thread-body{font-size:.9rem}
.c12-pokedex-search{display:grid;grid-template-columns:minmax(260px,1fr) 220px auto auto;align-items:center;gap:.6rem}.c12-pokedex-search .search-field{width:100%}.c12-pokedex-meta{display:flex;justify-content:space-between;gap:1rem;margin:.8rem .2rem;color:var(--muted);font-size:.75rem}.c12-dex-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.c12-dex-card{position:relative;min-height:285px;display:flex;flex-direction:column;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:20px;background:radial-gradient(circle at 50% 32%,rgba(95,229,255,.11),transparent 35%),linear-gradient(160deg,rgba(20,28,53,.96),rgba(10,14,30,.98));overflow:hidden;transition:transform .18s,border-color .18s}.c12-dex-card:hover{transform:translateY(-3px);border-color:rgba(95,229,255,.34)}.dex-number{align-self:flex-start;color:#ff9865;font-size:.68rem;font-weight:950;letter-spacing:.08em}.c12-dex-image{width:180px;height:180px;display:grid;place-items:center}.c12-dex-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 16px rgba(0,0,0,.34))}.c12-dex-card h2{margin:.15rem 0 .45rem;text-align:center}.dex-open{margin-top:auto;color:var(--cyan);font-size:.65rem;font-weight:900;letter-spacing:.08em}.c12-dex-profile{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:1.4rem;align-items:center;padding:1.35rem;background:radial-gradient(circle at 17% 45%,rgba(95,229,255,.13),transparent 32%),linear-gradient(155deg,rgba(21,29,57,.96),rgba(9,13,29,.97))}.c12-profile-art{position:relative;min-height:380px;display:grid;place-items:center;border:1px solid rgba(95,229,255,.12);border-radius:22px;background:radial-gradient(circle,rgba(95,229,255,.12),transparent 60%)}.c12-profile-art .dex-number{position:absolute;left:1rem;top:1rem}.c12-profile-art img{width:min(100%,360px);height:360px;object-fit:contain;filter:drop-shadow(0 22px 22px rgba(0,0,0,.38))}.c12-type-row{display:flex;gap:.4rem;flex-wrap:wrap}.c12-type{padding:.42rem .7rem;border-radius:999px;background:rgba(95,229,255,.08);border:1px solid rgba(95,229,255,.18);font-size:.72rem;font-weight:900}.c12-description{color:#d9e1f3;line-height:1.75;font-size:1rem}.c12-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:1rem 0}.c12-facts span{display:grid;gap:.18rem;padding:.7rem;border:1px solid var(--line);border-radius:12px;background:rgba(5,9,25,.42)}.c12-facts small{color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em}.c12-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.c12-chip-list{display:flex;gap:.45rem;flex-wrap:wrap}.c12-chip-list>span{padding:.55rem .7rem;border:1px solid var(--line);border-radius:11px;background:rgba(95,229,255,.045);font-weight:800}.c12-chip-list small{margin-left:.3rem;color:#ffe276}.c12-secondary-data{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line);color:var(--muted);line-height:1.8}.c12-stat-list{display:grid;gap:.55rem}.c12-stat-list>div{display:grid;grid-template-columns:120px 1fr 42px;align-items:center;gap:.6rem;font-size:.78rem}.stat-track{height:8px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.stat-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#48d3ec,#675bff)}.c12-evolution-line{display:flex;gap:.75rem;overflow-x:auto;padding:.35rem 0}.c12-evo-card{min-width:190px;display:flex;align-items:center;gap:.65rem;padding:.8rem;border:1px solid var(--line);border-radius:14px;background:rgba(95,229,255,.035)}.c12-evo-card:not(:first-child)::before{content:'→';color:#ff9764;font-weight:900}.c12-evo-card img{width:80px;height:80px;object-fit:contain}.c12-evo-card>div{display:grid;gap:.25rem}.c12-evo-card small{max-width:210px;color:var(--muted);font-size:.65rem;line-height:1.35}
.type-fire{border-color:rgba(255,105,60,.35);color:#ffb08c}.type-water{border-color:rgba(77,151,255,.4);color:#acd2ff}.type-grass{border-color:rgba(72,210,112,.38);color:#b6f2c7}.type-electric{border-color:rgba(255,219,66,.4);color:#ffea8c}.type-psychic,.type-fairy{border-color:rgba(245,103,190,.38);color:#ffc0e5}.type-dark,.type-ghost{border-color:rgba(143,112,199,.36);color:#d2c0f7}.type-dragon{border-color:rgba(87,113,255,.4);color:#b8c7ff}.type-steel,.type-rock{border-color:rgba(172,185,207,.32);color:#d8dfeb}
@media(max-width:1120px){.c12-hero{grid-template-columns:1fr;min-height:auto}.c12-device-art img{max-height:360px}.c12-dex-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.community-layout{grid-template-columns:310px 1fr}.mission-admin-row{grid-template-columns:1fr}.mission-counts{justify-content:flex-start}}
@media(max-width:850px){.c12-menu-grid,.mission-grid,.c12-detail-grid{grid-template-columns:1fr}.community-layout{grid-template-columns:1fr}.community-layout .sticky-panel{position:static}.c12-dex-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.c12-pokedex-search{grid-template-columns:1fr 1fr}.c12-dex-profile{grid-template-columns:1fr}.c12-profile-art{min-height:290px}.c12-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.c12-admin-strip{align-items:stretch;flex-direction:column}.mission-counts{overflow:auto}}
@media(max-width:560px){.c12-hero{padding:1.1rem}.c12-hero-copy h1{font-size:3.4rem}.c12-menu-card{grid-template-columns:auto 1fr;min-height:150px}.c12-menu-card>b{display:none}.c12-menu-icon{width:58px;height:58px;border-radius:16px}.c12-dex-grid{grid-template-columns:1fr}.c12-pokedex-search{grid-template-columns:1fr}.c12-pokedex-meta{flex-direction:column;gap:.2rem}.c12-facts{grid-template-columns:1fr 1fr}.reward-builder-row{grid-template-columns:1fr 88px 40px}.mission-review-row{grid-template-columns:1fr}.c12-stat-list>div{grid-template-columns:100px 1fr 34px}}

/* Navigation continuity on tablets: the original layout hid desktop navigation at 1080px,
   while mobile navigation only appeared below 760px. C-12 keeps navigation available in between. */
@media (min-width:761px) and (max-width:1080px){
    body{padding-bottom:76px}
    .mobile-nav{position:fixed;z-index:50;left:.8rem;right:.8rem;bottom:.7rem;display:flex;gap:.25rem;padding:.4rem;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:rgba(8,11,24,.94);box-shadow:0 18px 50px rgba(0,0,0,.4)}
    .mobile-nav a{min-width:82px;flex:0 0 auto;display:grid;place-items:center;gap:.12rem;padding:.45rem .5rem;color:#8290b5;font-size:.63rem;font-weight:800;border-radius:12px}
    .mobile-nav a span{font-size:1rem}.mobile-nav a.active{color:#fff;background:rgba(82,106,255,.16)}
}
@media (max-width:760px){
    .mobile-nav{display:flex;grid-template-columns:none;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}
    .mobile-nav::-webkit-scrollbar{display:none}
    .mobile-nav a{min-width:72px;flex:0 0 auto}
}

/* ========================================================================== */
/* Financeiro v0.9                                                            */
/* ========================================================================== */
.finance-nav-link { color: #f7dc73 !important; }
.finance-heading { align-items: center; }
.finance-status, .finance-provider-card {
    display:flex; align-items:center; gap:.75rem; min-width:190px; padding:.8rem 1rem;
    border:1px solid var(--line); border-radius:16px; background:rgba(13,18,38,.82);
}
.finance-status { flex-direction:column; align-items:flex-start; gap:.15rem; }
.finance-status small, .finance-provider-card small { color:var(--muted); font-size:.68rem; font-weight:850; letter-spacing:.11em; }
.finance-status strong { font-size:1.12rem; }
.finance-ok { --finance-accent:#5ce6a2; }
.finance-warn { --finance-accent:#ffd95a; }
.finance-danger { --finance-accent:#ff6d7d; }
.finance-muted { --finance-accent:#9aa8ca; }
.finance-status.finance-ok, .finance-stat-card.finance-ok { border-color:rgba(92,230,162,.32); }
.finance-status.finance-warn, .finance-stat-card.finance-warn { border-color:rgba(255,217,90,.32); }
.finance-status.finance-danger, .finance-stat-card.finance-danger { border-color:rgba(255,109,125,.32); }
.finance-status strong, .finance-stat-card[class*="finance-"] strong { color:var(--finance-accent, var(--text)); }
.finance-provider-card.online { border-color:rgba(92,230,162,.26); }
.finance-provider-card.offline { border-color:rgba(255,109,125,.28); }
.finance-provider-dot { width:12px; height:12px; border-radius:50%; background:var(--red); box-shadow:0 0 16px rgba(255,109,125,.45); }
.finance-provider-card.online .finance-provider-dot { background:var(--green); box-shadow:0 0 16px rgba(92,230,162,.45); }
.finance-provider-card strong { display:block; margin-top:.12rem; }
.finance-hero-grid, .finance-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.finance-current-card { position:relative; overflow:hidden; }
.finance-current-card::after { content:"PIX"; position:absolute; right:-.2rem; bottom:-2.2rem; font-size:8rem; font-weight:1000; color:rgba(255,217,90,.035); transform:rotate(-10deg); }
.finance-current-card h2 { margin:.35rem 0 .2rem; font-size:1.65rem; }
.finance-big-value, .finance-payment-amount { font-size:clamp(2.1rem,5vw,4rem); font-weight:1000; color:#ffe47d; letter-spacing:-.045em; margin:.6rem 0 1rem; }
.finance-meta-row { display:flex; flex-wrap:wrap; gap:.7rem 1.4rem; color:var(--muted); margin-bottom:1.15rem; }
.finance-meta-row b { color:#fff; margin-left:.3rem; }
.finance-paid-stamp { display:inline-flex; padding:.65rem .85rem; border:1px solid rgba(92,230,162,.3); border-radius:12px; color:#bfffe0; background:rgba(92,230,162,.08); font-weight:900; }
.finance-profile-card h2, .finance-payment-details h2 { margin:.1rem 0; }
.finance-small-note { margin-top:0; font-size:.82rem; line-height:1.55; }
.finance-chip { display:inline-flex; align-items:center; padding:.38rem .62rem; border-radius:999px; border:1px solid var(--line); color:var(--muted); font-size:.72rem; font-weight:850; }
.finance-chip-ok { color:#bfffe0; border-color:rgba(92,230,162,.24); background:rgba(92,230,162,.07); }
.finance-week-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; margin-top:1rem; }
.finance-week-card { position:relative; display:grid; gap:.25rem; min-height:116px; padding:1rem; border:1px solid var(--line); border-radius:16px; background:rgba(5,9,25,.58); cursor:pointer; transition:.18s; }
.finance-week-card:hover { border-color:rgba(95,229,255,.35); transform:translateY(-1px); }
.finance-week-card input { position:absolute; opacity:0; pointer-events:none; }
.finance-week-card:has(input:checked) { border-color:rgba(95,229,255,.62); background:linear-gradient(145deg,rgba(79,120,255,.15),rgba(95,229,255,.07)); box-shadow:inset 0 0 0 1px rgba(95,229,255,.12); }
.finance-week-card.disabled { opacity:.42; cursor:not-allowed; transform:none; }
.finance-week-card strong { padding-right:1.5rem; }
.finance-week-card b { color:#ffe47d; }
.finance-week-card small { color:var(--muted); }
.finance-checkmark { position:absolute; right:.75rem; top:.72rem; width:22px; height:22px; display:grid; place-items:center; border:1px solid var(--line); border-radius:7px; color:transparent; }
.finance-week-card:has(input:checked) .finance-checkmark { color:#071016; background:var(--cyan); border-color:var(--cyan); }
.finance-paybar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1rem; padding:1rem; border-radius:16px; background:rgba(0,0,0,.16); border:1px solid var(--line); }
.finance-paybar small { display:block; color:var(--muted); }
.finance-paybar strong { display:block; margin-top:.12rem; font-size:1.5rem; color:#ffe47d; }
.finance-table-wrap { overflow:auto; }
.finance-table { width:100%; border-collapse:collapse; min-width:780px; }
.finance-table th { padding:.75rem .7rem; text-align:left; color:var(--muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.08em; border-bottom:1px solid var(--line); }
.finance-table td { padding:.85rem .7rem; border-bottom:1px solid rgba(150,168,255,.08); vertical-align:top; }
.finance-table td small { display:block; color:var(--muted); margin-top:.2rem; max-width:340px; }
.finance-row-paid { opacity:.68; }
.finance-row-cancelled { opacity:.45; }
.finance-status-badge { display:inline-flex; align-items:center; border-radius:999px; padding:.33rem .58rem; font-size:.7rem; font-weight:900; border:1px solid var(--line); white-space:nowrap; }
.finance-status-badge.paid, .finance-status-badge.received { color:#bfffe0; border-color:rgba(92,230,162,.28); background:rgba(92,230,162,.08); }
.finance-status-badge.pending, .finance-status-badge.confirmed { color:#fff1aa; border-color:rgba(255,217,90,.28); background:rgba(255,217,90,.08); }
.finance-status-badge.overdue, .finance-status-badge.failed { color:#ffc3ca; border-color:rgba(255,109,125,.3); background:rgba(255,109,125,.08); }
.finance-status-badge.cancelled, .finance-status-badge.refunded { color:#c0c8dd; background:rgba(154,168,202,.08); }
.finance-payment-list { display:grid; gap:.65rem; }
.finance-payment-row { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.85rem 1rem; box-shadow:none; }
.finance-payment-row:hover { border-color:rgba(95,229,255,.28); }
.finance-payment-row small { display:block; color:var(--muted); margin-top:.16rem; }
.finance-payment-right { display:flex; align-items:center; gap:.7rem; }
.finance-payment-layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr); gap:1rem; max-width:1050px; margin:0 auto; }
.finance-pix-card { display:flex; flex-direction:column; align-items:center; text-align:center; gap:.8rem; }
.finance-qr-shell { width:min(320px,80vw); aspect-ratio:1; display:grid; place-items:center; padding:.8rem; border-radius:24px; background:#fff; box-shadow:0 22px 70px rgba(0,0,0,.4); }
.finance-qr-shell img { width:100%; height:100%; object-fit:contain; image-rendering:auto; }
.finance-qr-placeholder { width:260px; aspect-ratio:1; display:grid; place-items:center; border:2px dashed var(--line); border-radius:22px; font-size:3rem; font-weight:1000; color:var(--muted); }
.finance-pix-copy { width:100%; text-align:left; }
.finance-success-orb { width:96px; height:96px; display:grid; place-items:center; border-radius:50%; font-size:2.8rem; font-weight:1000; color:#06170f; background:var(--green); box-shadow:0 0 45px rgba(92,230,162,.25); }
.finance-detail-row { display:grid; grid-template-columns:1fr auto; gap:1rem; padding:.7rem 0; border-bottom:1px solid rgba(150,168,255,.08); color:var(--muted); }
.finance-detail-row b, .finance-detail-row code { color:#fff; text-align:right; overflow-wrap:anywhere; }
.finance-linked-weeks { display:grid; gap:.45rem; }
.finance-linked-weeks > div { display:flex; justify-content:space-between; gap:1rem; padding:.65rem .7rem; border:1px solid var(--line); border-radius:11px; background:rgba(0,0,0,.12); }
.finance-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.8rem; }
.finance-stat-card { display:grid; gap:.2rem; box-shadow:none; }
.finance-stat-card small, .finance-stat-card span { color:var(--muted); }
.finance-stat-card strong { font-size:1.85rem; }
.finance-filter-bar { display:grid; grid-template-columns:minmax(260px,1fr) 190px 190px auto; }
.finance-filter-bar select { min-width:0; }
.finance-action-stack { display:flex; flex-wrap:wrap; gap:.35rem; min-width:210px; }
.finance-action-stack form { display:inline-flex; }
.finance-log-list { display:grid; gap:.2rem; max-height:620px; overflow:auto; }
.finance-log-row { display:grid; grid-template-columns:110px 1fr; gap:.8rem; padding:.7rem .2rem; border-bottom:1px solid rgba(150,168,255,.08); }
.finance-log-row > span { color:var(--muted); font-size:.72rem; }
.finance-log-row p { margin:.15rem 0; color:#dbe3ff; font-size:.83rem; line-height:1.4; }
.finance-log-row small { color:var(--muted); }
.finance-dialog { width:min(540px,calc(100% - 2rem)); border:1px solid var(--line); border-radius:20px; padding:1.25rem; color:var(--text); background:#10162c; box-shadow:0 32px 100px #000a; }
.finance-dialog::backdrop { background:rgba(2,4,12,.78); backdrop-filter:blur(5px); }
.finance-dialog-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.finance-dialog-head h2 { margin:.15rem 0; }

@media(max-width:1050px) {
    .finance-week-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .finance-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .finance-filter-bar { grid-template-columns:1fr 1fr; }
    .finance-filter-bar .search-field { grid-column:1/-1; width:100%; }
}
@media(max-width:780px) {
    .finance-hero-grid, .finance-admin-grid, .finance-payment-layout { grid-template-columns:1fr; }
    .finance-heading { align-items:flex-start; }
    .finance-status, .finance-provider-card { width:100%; }
    .finance-week-grid, .finance-stat-grid { grid-template-columns:1fr; }
    .finance-paybar { align-items:stretch; flex-direction:column; }
    .finance-filter-bar { display:grid; grid-template-columns:1fr; }
    .finance-filter-bar .search-field { grid-column:auto; }
    .finance-payment-row { align-items:flex-start; flex-direction:column; }
    .finance-payment-right { width:100%; justify-content:space-between; }
}

/* v0.10 — inventário responsivo em modo grade */
.inventory-toolbar{align-items:center;gap:.8rem;flex-wrap:wrap}.inventory-view-tools{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.inventory-density-control{display:flex;align-items:center;gap:.55rem;padding:.45rem .65rem;border:1px solid var(--line);border-radius:12px;background:rgba(7,13,35,.55);font-size:.75rem;color:var(--muted)}.inventory-density-control[hidden]{display:none!important}.inventory-density-control input[type=range]{width:150px}.inventory-density-control small{white-space:nowrap;letter-spacing:.08em}.inventory-grid-dense{grid-template-columns:repeat(var(--inventory-columns,5),minmax(0,1fr))!important;gap:.65rem}.inventory-grid-dense .item-card{min-height:0;padding:.65rem;border-radius:14px}.inventory-grid-dense .item-card::after{opacity:.35}.inventory-grid-dense .item-card-top{min-height:58px}.inventory-grid-dense .item-image,.inventory-grid-dense .item-image-compact{width:54px;height:54px;min-width:54px}.inventory-grid-dense .item-image img,.inventory-grid-dense .item-image-compact img{width:54px;height:54px;object-fit:contain}.inventory-grid-dense .item-orb{transform:scale(.62);transform-origin:left top;margin-right:-24px;margin-bottom:-24px}.inventory-grid-dense .quantity-badge{font-size:.68rem;padding:.2rem .4rem}.inventory-grid-dense .category-tag{font-size:.56rem}.inventory-grid-dense .item-card-body h2{font-size:.9rem;line-height:1.15;margin:.3rem 0}.inventory-grid-dense .item-card-body p{font-size:.68rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inventory-grid-dense .item-meta{font-size:.62rem;gap:.25rem;flex-wrap:wrap}.inventory-grid-dense .item-action-stack{gap:.35rem}.inventory-grid-dense .item-action-stack .button{font-size:.66rem;padding:.45rem .35rem}.inventory-grid-dense .compact-card .item-card-body p{-webkit-line-clamp:3}@media(max-width:900px){.inventory-grid-dense{grid-template-columns:repeat(3,minmax(0,1fr))!important}.inventory-density-control input[type=range]{width:110px}}@media(max-width:560px){.inventory-grid-dense{grid-template-columns:repeat(3,minmax(0,1fr))!important}.inventory-grid-dense .item-card-body p{display:none}.inventory-grid-dense .item-action-stack .button{font-size:0}.inventory-grid-dense .item-action-stack .button:before{content:'•';font-size:.9rem}}

.trail-skills-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.trail-skills-grid textarea{min-height:100px}.equipped-item-card{opacity:.58;filter:grayscale(.75)}.equipped-pokemon-mini{display:flex;gap:6px;align-items:center;font-size:.75rem}.equipped-pokemon-mini img{width:28px;height:28px;object-fit:contain}.community-upload-image,.mission-cover{max-width:100%;max-height:420px;object-fit:contain;border-radius:16px}.emoji-bar{display:flex;gap:6px;flex-wrap:wrap}.emoji-bar button{font-size:1.2rem;background:transparent;border:1px solid var(--line);border-radius:8px;cursor:pointer}.pokemon-held-preview{display:flex;gap:12px;align-items:center;margin-top:8px}.pokemon-held-preview img{width:64px;height:64px;object-fit:contain}
@media(max-width:700px){.trail-skills-grid{grid-template-columns:1fr}}

/* v0.12 — eventos, filtros, equipamentos do treinador e nova identidade */
.brand-logo-main{width:min(520px,92%);height:auto;max-height:260px;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.38));margin-bottom:.5rem}.brand-panel h1{margin-top:.4rem}.inventory-category-filter{display:flex;align-items:center;gap:.5rem;padding:.45rem .65rem;border:1px solid var(--line);border-radius:12px;background:rgba(7,13,35,.55);font-size:.75rem;color:var(--muted)}.inventory-category-filter select{min-width:170px;border:0;background:transparent;color:var(--text);outline:none}.inventory-category-filter select option{background:#111831}.equipped-trainer-mini{display:flex;gap:.4rem;align-items:center;font-size:.75rem;color:#d8e2ff;padding:.45rem .55rem;border:1px solid rgba(140,160,255,.18);border-radius:10px;background:rgba(89,108,220,.08)}
.trainer-equipment-section{overflow:hidden}.trainer-equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.trainer-equipment-slot{padding:.9rem;border:1px solid var(--line);border-radius:16px;background:rgba(0,0,0,.12)}.trainer-equipment-slot select{width:100%;margin-top:.35rem}.trainer-equipment-preview{display:grid;grid-template-columns:64px 1fr;gap:.75rem;align-items:center;margin-top:.7rem;padding:.65rem;border:1px solid rgba(132,155,255,.18);border-radius:12px;background:rgba(31,43,87,.28)}.trainer-equipment-preview img{width:64px;height:64px;object-fit:contain}.trainer-equipment-preview strong{display:block}.trainer-equipment-preview p{margin:.25rem 0 0;color:var(--muted);font-size:.78rem;white-space:pre-line;line-height:1.35}
.c12-event-grid{display:grid;gap:1rem}.c12-event-card{display:grid;grid-template-columns:130px 1fr auto;gap:1rem;align-items:center;text-decoration:none;color:inherit;transition:.18s}.c12-event-card:hover{transform:translateY(-2px);border-color:rgba(98,224,255,.45)}.c12-event-art{height:120px;display:grid;place-items:center;border-radius:18px;background:radial-gradient(circle,rgba(255,220,92,.16),rgba(73,83,170,.08));overflow:hidden}.c12-event-art img{width:100%;height:100%;object-fit:contain}.c12-event-fallback{font-size:3rem}.c12-event-copy h2{margin:.3rem 0}.c12-event-copy p{color:var(--muted);margin:.3rem 0}.event-status-row{display:flex;gap:.4rem}.meowth-event-intro,.quiz-result-panel{display:grid;grid-template-columns:minmax(220px,.5fr) minmax(0,1fr);gap:1.5rem;align-items:center}.meowth-event-art,.quiz-meowth{display:grid;place-items:center;min-height:260px}.meowth-event-art img,.quiz-meowth img{max-width:280px;max-height:280px;object-fit:contain;filter:drop-shadow(0 22px 28px rgba(0,0,0,.38))}.quiz-shell{max-width:900px;margin:0 auto;display:grid;gap:1rem}.quiz-progress{display:grid;gap:.45rem;color:var(--muted);font-size:.8rem;font-weight:800}.quiz-progress>div{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.quiz-progress i{display:block;height:100%;background:linear-gradient(90deg,#6a72ff,#5fe5ff);border-radius:999px}.quiz-bubble{position:relative;padding:1.1rem 1.25rem;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:linear-gradient(145deg,rgba(34,45,92,.85),rgba(18,24,54,.92))}.quiz-bubble:before{content:"";position:absolute;left:40px;top:-12px;border-left:12px solid transparent;border-right:12px solid transparent;border-bottom:12px solid rgba(34,45,92,.85)}.quiz-bubble h1{margin:.25rem 0 0;font-size:clamp(1.2rem,2.5vw,1.8rem)}.quiz-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.quiz-option{display:flex;gap:.75rem;align-items:center;text-align:left;padding:1rem;border:1px solid var(--line);border-radius:16px;background:rgba(17,25,55,.85);color:var(--text);font-weight:800;cursor:pointer}.quiz-option:hover{border-color:rgba(95,229,255,.55);transform:translateY(-1px)}.quiz-option span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(95,229,255,.12);color:#aef3ff}.c12-menu-events{background:linear-gradient(145deg,rgba(238,170,62,.08),rgba(129,92,246,.06))}
@media(max-width:760px){.trainer-equipment-grid,.quiz-options{grid-template-columns:1fr}.meowth-event-intro,.quiz-result-panel,.c12-event-card{grid-template-columns:1fr}.c12-event-art{height:160px}.brand-logo-main{max-height:180px}.inventory-category-filter{width:100%;justify-content:space-between}.inventory-category-filter select{min-width:0;flex:1}}

/* v0.13 - fluxos de itens Pokémon */
.modal-panel-wide{width:min(780px,calc(100vw - 28px));max-height:88vh;overflow:auto}.team-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:16px 0}.pokemon-choice-card{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid rgba(133,175,255,.24);border-radius:14px;background:rgba(7,18,42,.78);cursor:pointer;text-align:left;color:inherit}.pokemon-choice-card:has(input:checked),.pokemon-choice-card.selected{border-color:#52d7ff;box-shadow:0 0 0 2px rgba(82,215,255,.13)}.pokemon-choice-card input{width:auto}.pokemon-choice-card img{width:54px;height:54px;object-fit:contain}.pokemon-choice-card span{display:grid;gap:3px}.pokemon-choice-card small{color:var(--muted)}.pokemon-choice-button{width:100%;font:inherit}.special-item-confirm{margin-top:14px;padding:14px;border-radius:14px;background:rgba(42,67,118,.22);border:1px solid rgba(133,175,255,.2)}.nature-change-row{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;text-align:center;margin:12px 0}.nature-change-row span{padding:10px;border-radius:12px;background:rgba(8,18,39,.7)}
.quiz-review-list{display:grid;gap:14px;margin-top:14px}.quiz-review-card{padding:15px;border:1px solid rgba(133,175,255,.2);border-radius:14px;background:rgba(7,18,42,.65)}.quiz-review-card h3{margin:0 0 12px}.quiz-review-options{display:grid;gap:7px}.quiz-review-option{padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.04)}.quiz-review-option.correct{border:1px solid rgba(73,224,150,.55);background:rgba(73,224,150,.09)}.quiz-review-option.wrong{border:1px solid rgba(255,100,120,.55);background:rgba(255,100,120,.09)}.quiz-review-option strong{float:right}
.multi-item-admin-list{display:grid;gap:8px}.multi-item-admin-row{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;gap:8px;align-items:center}.multi-item-admin-row select,.multi-item-admin-row input{min-width:0}
.loot-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.loot-item-rows{display:grid;gap:8px}.loot-item-row{display:grid;grid-template-columns:minmax(0,1fr) 100px auto;gap:8px}.loot-table-grid,.loot-player-list{display:grid;gap:12px}.loot-table-card{padding:14px;border:1px solid rgba(133,175,255,.2);border-radius:14px}.loot-mini-items{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.loot-mini-items span{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.05)}.loot-session-list{display:grid;gap:7px}.loot-session-list a{padding:9px;border-radius:10px;background:rgba(255,255,255,.04)}.loot-player-card{display:flex;justify-content:space-between;gap:15px;align-items:center}.loot-roulette-window{position:relative;overflow:hidden;padding:24px 0;border-radius:18px;background:rgba(5,13,30,.78);border:1px solid rgba(133,175,255,.2)}.loot-track{display:flex;gap:10px;width:max-content;transform:translateX(0)}.loot-wheel-item{width:150px;min-height:150px;display:grid;place-items:center;text-align:center;padding:10px;border-radius:14px;background:#0a1730;border:1px solid #294773}.loot-wheel-item img{width:86px;height:86px;object-fit:contain}.loot-pointer{position:absolute;z-index:2;left:50%;top:0;transform:translateX(-50%);font-size:28px;color:#57ddff}.loot-result{text-align:center;padding:18px}.loot-spin-button{display:block;margin:0 auto}@media(max-width:800px){.loot-admin-grid{grid-template-columns:1fr}.loot-player-card{align-items:flex-start;flex-direction:column}}

/* v0.13 - Evolução por pedra */
.evolution-team-grid .evolution-compatible{border-color:rgba(71,214,151,.45)}
.evolution-team-grid .evolution-incompatible{opacity:.48;filter:grayscale(.65);cursor:not-allowed}
.compatibility-ok{color:#86efac!important;font-weight:700}

/* v0.14 — ficha Pokémon detalhada + seletor de Loot pesquisável */
.pokemon-sheet-card{display:block!important;padding:1.05rem;overflow:hidden}.pokemon-sheet-hero{display:grid;grid-template-columns:190px minmax(0,1fr);gap:1.15rem;align-items:center;padding-bottom:1rem;border-bottom:1px solid rgba(145,170,255,.12)}.pokemon-sheet-art{width:180px!important;height:180px!important;filter:drop-shadow(0 18px 25px rgba(0,0,0,.32))}.pokemon-sheet-identity h2{font-size:clamp(1.55rem,2.5vw,2.15rem);margin:.45rem 0}.pokemon-sheet-subtitle{color:var(--muted);margin:.5rem 0}.pokemon-type-row{display:flex;flex-wrap:wrap;gap:.4rem}.pokemon-type-chip{display:inline-flex;align-items:center;justify-content:center;padding:.28rem .58rem;border-radius:999px;border:1px solid rgba(95,229,255,.24);background:rgba(95,229,255,.09);color:#c9f8ff;font-size:.68rem;font-weight:900;letter-spacing:.04em}.pokemon-sheet-stats{margin-top:.85rem;grid-template-columns:repeat(4,minmax(0,1fr))}.pokemon-sheet-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:.9rem}.pokemon-sheet-info-box{padding:.85rem .9rem;border:1px solid rgba(139,161,255,.16);border-radius:15px;background:linear-gradient(145deg,rgba(26,38,82,.38),rgba(8,16,39,.42));min-width:0}.pokemon-sheet-info-box h3{margin:.28rem 0 .45rem;font-size:1rem}.pokemon-sheet-info-box p{margin:.35rem 0;font-size:.78rem;line-height:1.45;white-space:pre-line}.pokemon-nature-box{grid-column:1/-1}.pokemon-size-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:.55rem 0}.pokemon-size-values span{display:grid;gap:.12rem;padding:.55rem;border-radius:10px;background:rgba(0,0,0,.18)}.pokemon-size-values small,.pokemon-move-meta small{color:var(--muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.06em}.pokemon-sheet-moves{margin-top:1rem}.pokemon-sheet-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.65rem}.pokemon-sheet-section-title h3{margin:.15rem 0}.pokemon-move-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.pokemon-move-detail{min-width:0;padding:.8rem;border:1px solid rgba(95,229,255,.16);border-radius:14px;background:linear-gradient(145deg,rgba(11,25,57,.8),rgba(22,27,65,.65));box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.pokemon-move-detail h4{margin:.45rem 0 .55rem;font-size:.93rem;line-height:1.25}.pokemon-move-detail p{margin:.45rem 0;font-size:.72rem;line-height:1.4;color:#d7e2ff;white-space:normal}.pokemon-move-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.pokemon-move-slot{font-size:.62rem;font-weight:900;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.pokemon-move-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;margin:.55rem 0}.pokemon-move-meta span{display:grid;gap:.12rem;padding:.42rem;border-radius:9px;background:rgba(255,255,255,.035);min-width:0}.pokemon-move-meta strong{font-size:.68rem;overflow-wrap:anywhere}.pokemon-move-empty{display:grid;place-items:center;min-height:110px;color:var(--muted);border-style:dashed}.pokemon-move-empty strong{color:#d4dcf1}.pokemon-move-unknown{border-style:dashed}.pokemon-generator-summary{margin-bottom:1rem;padding:1rem}.pokemon-generator-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.pokemon-generator-summary-head h2{margin:.25rem 0}.pokemon-form-facts{margin-top:.85rem}.move-form-preview{margin-top:.55rem}.move-form-preview:empty{display:none}.move-form-preview .pokemon-move-detail{font-weight:400}.move-form-preview .pokemon-move-detail strong{font-weight:800}
.loot-picker-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.loot-picker-toolbar .search-field{flex:1;min-width:230px}.loot-item-picker{display:grid;gap:.42rem;max-height:470px;overflow:auto;padding:.35rem;border:1px solid rgba(140,160,255,.14);border-radius:14px;background:rgba(3,10,28,.32)}.loot-picker-item{display:grid;grid-template-columns:auto 42px minmax(0,1fr) 92px;gap:.65rem;align-items:center;padding:.58rem;border:1px solid transparent;border-radius:11px;cursor:pointer;background:rgba(255,255,255,.025);transition:.15s}.loot-picker-item:hover{background:rgba(95,229,255,.045);border-color:rgba(95,229,255,.12)}.loot-picker-item.selected{border-color:rgba(95,229,255,.38);background:rgba(95,229,255,.08)}.loot-picker-item[hidden]{display:none!important}.loot-picker-item>input{width:auto}.loot-picker-item img,.loot-picker-icon{width:42px;height:42px;object-fit:contain;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.04)}.loot-picker-name{display:grid;min-width:0}.loot-picker-name strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loot-picker-name small{color:var(--muted);font-size:.64rem}.loot-weight-field{display:grid;gap:.15rem}.loot-weight-field small{font-size:.58rem;color:var(--muted)}.loot-weight-field input{width:100%;min-width:0;padding:.38rem .42rem}.loot-picker-actions{display:flex;justify-content:space-between;gap:.7rem;flex-wrap:wrap}
@media(max-width:780px){.pokemon-sheet-hero{grid-template-columns:1fr}.pokemon-card-media{justify-items:center}.pokemon-sheet-facts,.pokemon-move-detail-grid{grid-template-columns:1fr}.pokemon-nature-box{grid-column:auto}.pokemon-sheet-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pokemon-sheet-section-title{align-items:flex-start;flex-direction:column}.loot-picker-item{grid-template-columns:auto 38px minmax(0,1fr)}.loot-weight-field{grid-column:2/-1;display:none}.loot-picker-item.is-weighted.selected .loot-weight-field{display:grid}.loot-picker-item img,.loot-picker-icon{width:38px;height:38px}.pokemon-move-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
.loot-picker-main{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.65rem;align-items:center;cursor:pointer;min-width:0}.loot-picker-main img{width:42px;height:42px;object-fit:contain}.loot-picker-item{grid-template-columns:auto minmax(0,1fr) 92px}.loot-picker-item>input{align-self:center}@media(max-width:780px){.loot-picker-item{grid-template-columns:auto minmax(0,1fr)}.loot-picker-main{grid-template-columns:38px minmax(0,1fr)}.loot-weight-field{grid-column:2/-1}}

/* =========================================================
   Nexus Dimension v0.15.0 — Bugs, Backup, Loot e Combate
   ========================================================= */
.status-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.28rem .62rem;font-size:.72rem;font-weight:800;letter-spacing:.04em;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}
.status-new,.status-pending,.status-draft{background:rgba(255,186,0,.12);border-color:rgba(255,186,0,.28)}
.status-analysis,.status-active{background:rgba(52,152,219,.15);border-color:rgba(52,152,219,.32)}
.status-resolved,.status-approved,.status-finished{background:rgba(46,204,113,.13);border-color:rgba(46,204,113,.3)}
.status-ignored,.status-rejected{background:rgba(149,165,166,.12);border-color:rgba(149,165,166,.25)}

.bug-report-heading,.loot-list-heading,.backup-request-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.bug-report-list,.backup-request-list{display:grid;gap:1rem;margin-top:1rem}
.bug-report-card,.backup-request-card{border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:1rem;background:rgba(8,13,30,.55)}
.bug-report-meta{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;color:var(--muted,#aeb5c8);font-size:.86rem}
.bug-report-text{white-space:pre-wrap;line-height:1.6;margin:.8rem 0}
.bug-context{padding:.75rem;border-radius:12px;background:rgba(255,255,255,.045);white-space:pre-wrap}
.bug-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.65rem;margin:.85rem 0}
.bug-image-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px;border:1px solid rgba(255,255,255,.12)}

.backup-general-panel{grid-column:1/-1}
.backup-general-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}
.backup-own-list{display:grid;gap:.5rem;margin-top:1rem}
.backup-own-row{display:grid;grid-template-columns:auto auto 1fr;gap:.7rem;align-items:center;padding:.65rem .75rem;border-radius:12px;background:rgba(255,255,255,.045)}
.backup-own-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted,#aeb5c8)}
.backup-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:.65rem;margin:.85rem 0}
.backup-summary-grid span{padding:.75rem;border-radius:12px;background:rgba(255,255,255,.045);display:flex;flex-direction:column;gap:.2rem}
.backup-summary-grid b{font-size:1.25rem}
.backup-review-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-top:1rem}

.loot-card-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.75rem}
.loot-list-heading .inline-form input[type=search]{min-width:min(330px,70vw)}

.combat-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.combat-list-card{display:block;text-decoration:none;color:inherit;transition:transform .18s ease,border-color .18s ease}
.combat-list-card:hover{transform:translateY(-3px);border-color:rgba(122,163,255,.45)}
.combat-list-card h2{margin:.65rem 0 .35rem}
.combat-list-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.combat-manage-grid,.combat-action-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem}
.combat-setup-list{display:grid;gap:.65rem;margin-top:1rem}
.combat-setup-row{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.035)}
.combat-setup-row.side-alpha{border-left:3px solid #4da3ff}.combat-setup-row.side-beta{border-left:3px solid #ff6577}
.combat-setup-row small{display:block;color:var(--muted,#aeb5c8);margin-top:.15rem}.combat-turn-number{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.1);font-weight:900}
.combat-arena{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:1rem;align-items:start}
.combat-side{display:grid;gap:.85rem}.combat-side>h2{text-align:center;margin:0 0 .2rem}.combat-vs{align-self:center;font-size:1.4rem;font-weight:1000;padding:.65rem;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13)}
.combatant-card{display:grid;grid-template-columns:86px 1fr;gap:.85rem;padding:.8rem;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,rgba(10,16,37,.92),rgba(22,28,52,.72));position:relative;overflow:hidden}
.combat-side-alpha .combatant-card{box-shadow:inset 3px 0 0 rgba(77,163,255,.7)}.combat-side-beta .combatant-card{box-shadow:inset -3px 0 0 rgba(255,101,119,.7)}
.combatant-card.is-turn{border-color:rgba(255,216,72,.75);box-shadow:0 0 0 2px rgba(255,216,72,.14),0 0 28px rgba(255,216,72,.12)}
.combatant-card.is-ko{filter:saturate(.35);opacity:.62}
.combatant-art{display:grid;place-items:center;min-height:82px}.combatant-art img{width:82px;height:82px;object-fit:contain;filter:drop-shadow(0 8px 15px rgba(0,0,0,.35))}.combatant-art span{font-size:2.4rem}
.combatant-title{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.combatant-title h3{margin:0;font-size:1.05rem}.combatant-title span{font-weight:800;color:#d7def2}.combatant-copy p{font-size:.82rem;color:var(--muted,#aeb5c8);margin:.15rem 0 .55rem}
.combat-hp-line{display:grid;grid-template-columns:1fr auto;gap:.55rem;align-items:center}.combat-hp-track{height:10px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden}.combat-hp-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#39d98a,#b8ee5c)}.combat-hp-line b{font-size:.8rem}.combat-ko-label{display:inline-block;margin-top:.45rem;font-size:.7rem;color:#ff8a96}
.combat-audio-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.combat-audio-panel audio{width:min(540px,100%)}
.combat-master-controls{overflow:hidden}.combat-master-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.combat-master-grid .form-stack:last-child{grid-column:1/-1}.combat-hp-admin{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.combat-hp-admin .inline-form{padding:.5rem;border-radius:12px;background:rgba(255,255,255,.04)}.combat-hp-admin input{width:76px}
.combat-log-list{display:flex;flex-direction:column;gap:.45rem;max-height:520px;overflow:auto;padding-right:.25rem}.combat-log-row{display:grid;grid-template-columns:72px 1fr;gap:.7rem;padding:.6rem .7rem;border-radius:11px;background:rgba(255,255,255,.035);border-left:3px solid rgba(255,255,255,.12)}.combat-log-row time{font-size:.74rem;color:var(--muted,#aeb5c8)}.combat-log-row p{margin:0;line-height:1.45}.combat-log-row.log-attack{border-left-color:#ff6577}.combat-log-row.log-dice{border-left-color:#b785ff}.combat-log-row.log-xp{border-left-color:#ffd348}.combat-log-row.log-turn{border-left-color:#4da3ff}
.c12-menu-combat{--c12-accent:#ff6577}.c12-menu-bugs{--c12-accent:#b785ff}

@media (max-width:900px){.combat-manage-grid,.combat-action-grid,.combat-master-grid{grid-template-columns:1fr}.combat-master-grid .form-stack:last-child{grid-column:auto}.combat-arena{grid-template-columns:1fr}.combat-vs{justify-self:center}.backup-summary-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}}
@media (max-width:620px){.combatant-card{grid-template-columns:68px 1fr}.combatant-art img{width:64px;height:64px}.backup-own-row{grid-template-columns:1fr auto}.backup-own-row small{grid-column:1/-1}.bug-report-heading,.loot-list-heading{align-items:stretch}.loot-list-heading .inline-form input[type=search]{min-width:0;width:100%}}
.combat-hp-track i{transition:width .35s ease}
.combat-log-row.log-initiative{border-left-color:#72e6ff}
.combatant-card.is-turn{animation:combatTurnPulse 2.2s ease-in-out infinite}
@keyframes combatTurnPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@media (prefers-reduced-motion:reduce){.combatant-card.is-turn{animation:none}.combat-hp-track i{transition:none}}

/* ===== Nexus Dimension v0.16 — Battle Game UI ===== */
.combat-list-link{display:block;color:inherit;text-decoration:none}.combat-list-card.is-trashed{opacity:.78;border-style:dashed}.combat-admin-card-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.8rem;margin-top:.8rem;border-top:1px solid rgba(255,255,255,.08)}
.combat-generator-dialog{width:min(1180px,96vw);height:min(900px,92vh);padding:0;border:1px solid rgba(109,184,255,.32);border-radius:22px;background:#071020;color:#eef6ff;box-shadow:0 30px 100px rgba(0,0,0,.6)}.combat-generator-dialog::backdrop{background:rgba(1,4,13,.82);backdrop-filter:blur(6px)}.combat-generator-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid rgba(255,255,255,.09)}.combat-generator-head h2{margin:.15rem 0}.combat-generator-dialog>p{padding:0 1.2rem}.combat-generator-dialog iframe{display:block;width:100%;height:calc(100% - 120px);border:0;background:#081123}
.battle-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.battle-topbar h1{margin:.15rem 0 0}.battle-top-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.battle-round{font-weight:1000;letter-spacing:.08em;padding:.6rem .85rem;border-radius:999px;background:rgba(55,176,255,.13);border:1px solid rgba(55,176,255,.3);color:#8cdcff}
.battle-turn-order{border:1px solid rgba(92,170,255,.22);border-radius:18px;background:linear-gradient(180deg,rgba(8,22,47,.98),rgba(5,13,30,.96));box-shadow:0 18px 50px rgba(0,0,0,.25);overflow:hidden}.battle-turn-order-title{text-align:center;font-weight:1000;font-size:.78rem;letter-spacing:.13em;padding:.6rem;color:#cfe7ff;border-bottom:1px solid rgba(255,255,255,.08)}.battle-turn-track{display:flex;gap:.4rem;overflow-x:auto;padding:.7rem .8rem}.battle-turn-token{position:relative;min-width:92px;display:grid;grid-template-columns:22px 42px;grid-template-rows:42px auto;align-items:center;gap:.25rem .45rem;padding:.4rem .55rem;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.035);transition:.2s}.battle-turn-token.side-alpha{border-bottom:3px solid #2f9dff}.battle-turn-token.side-beta{border-bottom:3px solid #ff5367}.battle-turn-token.is-current{transform:translateY(2px);border-color:#ffd348;box-shadow:0 0 0 2px rgba(255,211,72,.12),0 0 24px rgba(255,211,72,.18)}.battle-turn-token.is-ko{opacity:.4;filter:grayscale(1)}.battle-turn-token img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 5px 7px rgba(0,0,0,.45))}.battle-turn-token small{grid-column:1/-1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:.68rem;font-weight:800}.battle-turn-pos{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-size:.7rem;font-weight:1000;background:rgba(255,255,255,.1)}.battle-turn-arrow{position:absolute;top:-13px;left:50%;transform:translateX(-50%);color:#ffd348;text-shadow:0 0 12px #ffd348}.battle-token-fallback{font-size:1.6rem}
.battle-turn-banner{width:min(620px,92%);margin:.85rem auto -.2rem;position:relative;z-index:5;text-align:center;padding:.75rem 1rem;border-radius:18px;background:linear-gradient(135deg,rgba(7,44,80,.96),rgba(4,17,42,.96));border:1px solid #28bfff;box-shadow:0 0 30px rgba(40,191,255,.18)}.battle-turn-banner.is-defense{border-color:#ff5269;background:linear-gradient(135deg,rgba(84,13,28,.96),rgba(35,7,18,.96));box-shadow:0 0 30px rgba(255,82,105,.15)}.battle-turn-banner span{display:block;font-size:.75rem;font-weight:1000;letter-spacing:.18em;color:#bfe8ff}.battle-turn-banner strong{display:block;font-size:clamp(1.55rem,4vw,2.7rem);line-height:1;color:#fff;margin:.2rem 0;text-transform:uppercase;font-style:italic;text-shadow:0 5px 18px rgba(0,0,0,.4)}.battle-turn-banner small{color:#b9c7dc}
.battle-stage{position:relative;min-height:520px;margin-top:1rem;border-radius:24px;overflow:hidden;border:1px solid rgba(117,191,255,.25);background:linear-gradient(#50a9e9 0 42%,#8bcf6c 42% 60%,#5c9b48 60%);box-shadow:inset 0 -50px 100px rgba(8,30,15,.25),0 25px 65px rgba(0,0,0,.3);isolation:isolate}.battle-stage::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 16%,rgba(255,255,255,.75) 0 3%,transparent 3.5%),radial-gradient(circle at 27% 13%,rgba(255,255,255,.6) 0 4%,transparent 4.5%),linear-gradient(180deg,transparent 0 50%,rgba(17,67,34,.16) 50%);opacity:.75}.battle-sky{position:absolute;inset:0 0 45%;background:radial-gradient(ellipse at 75% 22%,rgba(255,255,255,.85) 0 5%,transparent 5.3%),radial-gradient(ellipse at 68% 18%,rgba(255,255,255,.7) 0 7%,transparent 7.4%),linear-gradient(#48a9eb,#a9def2);z-index:-3}.battle-hills{position:absolute;left:-5%;right:-5%;bottom:30%;height:42%;background:radial-gradient(ellipse at 25% 100%,#315f43 0 35%,transparent 36%),radial-gradient(ellipse at 60% 100%,#3d7750 0 38%,transparent 39%),radial-gradient(ellipse at 90% 100%,#2f6943 0 34%,transparent 35%);z-index:-2;filter:drop-shadow(0 -6px 8px rgba(0,0,0,.12))}.battle-ground{position:absolute;left:-5%;right:-5%;bottom:-20%;height:63%;background:radial-gradient(ellipse at center,#7aba59 0 55%,#4b8b42 75%);z-index:-1}.battle-ground::after{content:"";position:absolute;left:10%;right:10%;top:42%;height:32%;border-radius:50%;border:2px solid rgba(255,255,255,.16);box-shadow:0 0 0 18px rgba(214,204,139,.08)}
.battle-fighter{position:absolute;width:48%;height:100%;bottom:0}.battle-fighter-left{left:0}.battle-fighter-right{right:0}.battle-platform{position:absolute;width:64%;height:15%;bottom:4%;left:18%;border-radius:50%;background:radial-gradient(ellipse,rgba(54,66,39,.42),rgba(43,59,31,.05) 65%,transparent 66%);transform:perspective(250px) rotateX(65deg)}.battle-pokemon-art{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);width:min(310px,72%);height:min(340px,66%);object-fit:contain;filter:drop-shadow(0 18px 15px rgba(0,0,0,.35));transition:.2s}.battle-fighter-right .battle-pokemon-art{transform:translateX(-50%) scaleX(-1)}.battle-fighter.is-active .battle-pokemon-art{filter:drop-shadow(0 0 16px rgba(255,225,84,.8)) drop-shadow(0 18px 15px rgba(0,0,0,.35));animation:battlePokemonFloat 1.6s ease-in-out infinite}.battle-pokemon-fallback{position:absolute;bottom:23%;left:50%;transform:translateX(-50%);font-size:8rem}.battle-hud{position:absolute;top:5%;z-index:4;width:min(360px,78%);padding:.75rem .9rem;border-radius:16px;background:linear-gradient(135deg,rgba(5,15,31,.93),rgba(12,29,49,.86));border:1px solid rgba(255,255,255,.22);box-shadow:0 14px 30px rgba(0,0,0,.25);backdrop-filter:blur(8px)}.battle-hud-left{left:4%}.battle-hud-right{right:4%}.battle-hud-title{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.55rem}.battle-hud-title strong{text-transform:uppercase;font-size:1.05rem}.battle-hud-title span{font-weight:900}.battle-resource{display:grid;grid-template-columns:26px 1fr auto;gap:.45rem;align-items:center;margin:.35rem 0}.battle-resource>b{font-size:.76rem;color:#d7e8fb}.battle-resource>span{font-size:.72rem;font-weight:900}.battle-resource-track{height:10px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden;border:1px solid rgba(0,0,0,.25)}.battle-resource-track i{display:block;height:100%;border-radius:99px;transition:width .4s ease}.battle-resource-track.hp i{background:linear-gradient(90deg,#26c45e,#8ee343)}.battle-resource-track.pp i{background:linear-gradient(90deg,#1f89ff,#42d8ff)}
.battle-command-shell{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);gap:1rem}.battle-command-menu,.battle-action-panel{border:1px solid rgba(117,191,255,.2);border-radius:20px;background:linear-gradient(180deg,rgba(7,18,37,.98),rgba(5,12,28,.98));padding:.8rem;box-shadow:0 18px 45px rgba(0,0,0,.22)}.battle-command-menu{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.battle-command{display:flex;align-items:center;gap:.7rem;text-align:left;min-height:76px;border-radius:15px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,#293344,#161e2b);color:#98a2b3;padding:.8rem 1rem;font-size:1.25rem}.battle-command span{display:flex;flex-direction:column}.battle-command b{font-size:1rem}.battle-command small{font-size:.66rem;font-weight:600;opacity:.7}.battle-command.fight.is-active{background:linear-gradient(135deg,#f4c321,#e79714);color:#17130a;border-color:#ffe06c;box-shadow:0 0 0 2px rgba(255,211,72,.15),0 8px 25px rgba(236,167,20,.2)}.battle-command:disabled{cursor:not-allowed;filter:saturate(.2);opacity:.48}.battle-action-panel{display:grid;align-items:center}.battle-fight-form{display:grid;gap:.75rem}.battle-move-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.battle-move-option input{position:absolute;opacity:0}.battle-move-option span{display:flex;flex-direction:column;gap:.25rem;padding:.85rem;border-radius:14px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.045);cursor:pointer;transition:.18s}.battle-move-option input:checked+span{border-color:#ffd348;background:rgba(255,211,72,.11);box-shadow:inset 4px 0 0 #ffd348}.battle-move-option b{font-size:.95rem}.battle-move-option small{color:#9eacc2;font-size:.7rem}.battle-waiting-message{font-size:1.05rem;text-align:center;color:#b9c7dc;margin:1rem}.battle-defense-form{text-align:center}.battle-defense-form p{color:#9eacc2;font-size:.8rem}
.battle-clash-panel{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.7rem}.battle-die-side{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:170px;border-radius:18px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.04)}.battle-die-side.attack{border-color:rgba(255,91,91,.55);background:radial-gradient(circle,rgba(255,69,69,.16),transparent 65%)}.battle-die-side.defense{border-color:rgba(70,163,255,.55);background:radial-gradient(circle,rgba(59,142,255,.16),transparent 65%)}.battle-die-side small{font-size:.74rem;font-weight:1000;letter-spacing:.08em}.battle-die-number{font-size:clamp(3.5rem,8vw,6.4rem);line-height:1;font-weight:1000;margin:.35rem;color:#fff;text-shadow:0 0 30px currentColor;animation:battleDicePop .6s cubic-bezier(.2,1.6,.45,1)}.battle-die-side.attack .battle-die-number{color:#ff5b62}.battle-die-side.defense .battle-die-number{color:#51a7ff}.battle-die-number.waiting{animation:battleWaiting 1.2s ease-in-out infinite}.battle-clash-vs{font-weight:1000;font-size:1.25rem;color:#ffd348}
.battle-result-card{display:grid;grid-template-columns:150px auto 150px 1fr;gap:.8rem;align-items:center;padding:1rem;border-radius:20px;background:linear-gradient(135deg,rgba(8,20,44,.98),rgba(8,13,28,.98));border:1px solid rgba(255,255,255,.13);box-shadow:0 15px 40px rgba(0,0,0,.24)}.battle-result-die{display:grid;grid-template-columns:1fr auto;align-items:end;padding:.7rem;border-radius:15px;background:rgba(255,255,255,.04)}.battle-result-die small{grid-column:1/-1;font-weight:1000;font-size:.7rem}.battle-result-die strong{font-size:3.2rem;line-height:1}.battle-result-die.attack strong{color:#ff626d}.battle-result-die.defense strong{color:#59acff}.battle-result-die span{font-weight:900}.battle-result-vs{font-weight:1000}.battle-result-copy h2{margin:.2rem 0;color:#ffd348}.battle-result-copy p:last-child{margin-bottom:0}
.battle-team-rosters{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.battle-roster{padding:.8rem;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:rgba(5,13,28,.86)}.battle-roster h3{margin:.1rem 0 .6rem}.battle-roster>div{display:grid;gap:.45rem}.battle-roster-card{display:grid;grid-template-columns:48px 1fr;gap:.6rem;align-items:center;padding:.45rem .55rem;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid transparent}.battle-roster-card.is-current{border-color:#ffd348}.battle-roster-card.is-ko{opacity:.4;filter:grayscale(1)}.battle-roster-card img{width:48px;height:48px;object-fit:contain}.battle-roster-card span{display:flex;flex-direction:column}.battle-roster-card small{color:#97a6bb}.battle-free-dice summary{cursor:pointer;font-weight:900}.combat-log-row.log-attack_roll{border-left-color:#ff9e4a}.combat-log-row.log-attack_result{border-left-color:#ffd348}
@keyframes battlePokemonFloat{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-7px)}}.battle-fighter-right.is-active .battle-pokemon-art{animation:battlePokemonFloatRight 1.6s ease-in-out infinite}@keyframes battlePokemonFloatRight{0%,100%{transform:translateX(-50%) scaleX(-1) translateY(0)}50%{transform:translateX(-50%) scaleX(-1) translateY(-7px)}}@keyframes battleDicePop{0%{transform:scale(.3) rotate(-16deg);opacity:0}70%{transform:scale(1.12) rotate(2deg)}100%{transform:scale(1);opacity:1}}@keyframes battleWaiting{0%,100%{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1.05)}}
@media(max-width:980px){.battle-command-shell,.battle-team-rosters{grid-template-columns:1fr}.battle-stage{min-height:440px}.battle-pokemon-art{width:min(240px,76%);height:270px}.battle-result-card{grid-template-columns:1fr auto 1fr}.battle-result-copy{grid-column:1/-1;text-align:center}}
@media(max-width:680px){.battle-topbar{align-items:flex-start;flex-direction:column}.battle-stage{min-height:430px}.battle-hud{width:90%;top:3%;padding:.55rem}.battle-hud-left{left:5%}.battle-hud-right{right:5%;top:24%}.battle-pokemon-art{width:190px;height:220px;bottom:5%}.battle-fighter-left .battle-pokemon-art{left:45%}.battle-fighter-right .battle-pokemon-art{left:55%}.battle-command-menu,.battle-move-grid{grid-template-columns:1fr}.battle-clash-panel{grid-template-columns:1fr}.battle-clash-vs{justify-self:center}.battle-result-card{grid-template-columns:1fr}.battle-result-vs{display:none}.battle-result-die{max-width:180px;width:100%;justify-self:center}.battle-turn-token{min-width:76px}}
@media(prefers-reduced-motion:reduce){.battle-fighter.is-active .battle-pokemon-art,.battle-die-number,.battle-die-number.waiting{animation:none}}

/* v0.17 - entrega rápida */
.quick-delivery-panel{margin-bottom:1.25rem}.quick-delivery-dropzone{border:2px dashed color-mix(in srgb,var(--accent,#69c9ff) 60%,transparent);border-radius:18px;min-height:96px;display:flex;align-items:center;justify-content:center;gap:14px;padding:18px;background:rgba(70,130,255,.06);transition:.2s ease}.quick-delivery-dropzone.is-ready,.quick-delivery-dropzone.is-over{transform:translateY(-2px);border-style:solid;background:rgba(70,180,255,.15);box-shadow:0 0 28px rgba(70,160,255,.18)}.quick-drop-icon{font-size:2rem}.quick-delivery-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 240px;gap:12px;margin:14px 0}.quick-item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;max-height:430px;overflow:auto;padding:4px}.quick-item-card{display:grid;grid-template-columns:56px 1fr;grid-template-rows:auto auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);cursor:grab}.quick-item-card:active{cursor:grabbing}.quick-item-card img,.quick-generic-icon{width:56px;height:56px;object-fit:contain;border-radius:10px}.quick-generic-icon{display:grid;place-items:center;font-size:2rem;background:rgba(255,255,255,.07)}.quick-item-card button{grid-column:1/-1}.quick-item-card small{display:block;opacity:.7}.quick-item-create-box{margin:12px 0;padding:14px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.quick-create-action{display:flex;align-items:end;padding-bottom:2px}@media(max-width:760px){.quick-delivery-toolbar{grid-template-columns:1fr}.quick-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.loot-money-rewards{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03)}.loot-money-row{display:grid;grid-template-columns:1fr 140px auto;gap:10px;align-items:end;margin-top:8px}.loot-money-row label{display:grid;gap:5px}.loot-money-icon{font-size:2rem;display:grid;place-items:center;min-height:48px}@media(max-width:650px){.loot-money-row{grid-template-columns:1fr 100px auto}}

.item-generic-icon{width:96px;height:96px;display:grid;place-items:center;font-size:2.6rem;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--line)}.inventory-dense-mode .item-generic-icon{width:56px;height:56px;font-size:1.7rem}

/* ===== Nexus Dimension v0.18.0 ===== */
.nexus-sebrae-footer{position:relative;z-index:2;margin-top:36px;padding:13px 18px;text-align:center;background:linear-gradient(90deg,#101a45,#132d66,#101a45);border-top:1px solid rgba(123,190,255,.28);color:#dcecff;font-size:.86rem;letter-spacing:.03em}
.user-chip .avatar img,.community-avatar img,.chat-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-chip .avatar{overflow:hidden}
.owlbear-frame-panel{padding:12px;overflow:hidden}.owlbear-frame-status{padding:10px 14px;color:#bfe6ff}.owlbear-frame-status span{color:#48e28b}.owlbear-vtt-frame{display:block;width:100%;height:min(78vh,900px);min-height:620px;border:0;border-radius:14px;background:#050817}.owlbear-fallback{padding:10px 14px;color:var(--muted)}
.c12-menu-owlbear{--card-accent:#73b6ff}.c12-menu-chat{--card-accent:#7bf2ce}.c12-menu-market{--card-accent:#f7c957}

/* Social community */
.community-post-head{display:flex;align-items:center;gap:10px}.community-avatar{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;overflow:hidden;background:#1e315d;font-weight:800;flex:none}.community-avatar.avatar-large{width:64px;height:64px}.community-post-head>div{display:flex;flex-direction:column}.community-post-head small{color:var(--muted)}
.community-carousel{position:relative;overflow:hidden;border-radius:14px;margin-top:14px;background:#071026}.community-carousel-track{display:flex;transition:transform .28s ease}.community-carousel-slide{min-width:100%;margin:0;display:grid;place-items:center;max-height:580px}.community-carousel-slide img{width:100%;height:min(56vh,560px);object-fit:contain;background:#050b1b}.community-carousel-nav{position:absolute;top:50%;translate:0 -50%;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(4,10,28,.78);color:#fff;font-size:2rem;cursor:pointer}.community-carousel-nav.prev{left:12px}.community-carousel-nav.next{right:12px}.community-carousel-dots{position:absolute;bottom:10px;left:50%;translate:-50% 0;display:flex;gap:6px}.community-carousel-dots button{width:8px;height:8px;border:0;border-radius:50%;background:#8993a7;padding:0}.community-carousel-dots button.active{background:#fff;scale:1.25}.community-post-foot{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.community-feed-main-link{display:block;color:inherit;text-decoration:none}.social-profile-shell{max-width:1100px;margin:auto}.social-cover{min-height:320px;background:linear-gradient(160deg,#253d7a,#090f2c);background-size:cover;background-position:center;display:flex;align-items:end;gap:22px;padding:32px}.social-profile-avatar{width:150px;height:150px;border:5px solid #fff;border-radius:50%;overflow:hidden;background:#15234b;display:grid;place-items:center;font-size:4rem;font-weight:900;flex:none}.social-profile-avatar img{width:100%;height:100%;object-fit:cover}.social-profile-meta{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.social-profile-meta span{display:flex;flex-direction:column;min-width:150px}.social-profile-meta span b{font-size:.75rem;color:var(--muted);text-transform:uppercase}.social-persona-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.social-persona-card>a{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.social-persona-card>a>img{width:62px;height:62px;border-radius:50%;object-fit:cover}.social-persona-card .form-stack{margin-top:15px}

/* Chat */
.chat-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:18px;min-height:650px}.chat-sidebar{overflow:hidden}.chat-conversation-list{display:flex;flex-direction:column;margin-top:18px;gap:6px;max-height:480px;overflow:auto}.chat-conversation-list>a{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;text-decoration:none;color:inherit}.chat-conversation-list>a:hover,.chat-conversation-list>a.active{background:rgba(85,156,255,.14)}.chat-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#1c315d;overflow:hidden;flex:none}.chat-conversation-list span:last-child{display:flex;flex-direction:column;min-width:0}.chat-conversation-list small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}.chat-window{display:flex;flex-direction:column;min-height:650px}.chat-window-head{display:flex;justify-content:space-between}.chat-messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:16px 4px;max-height:560px}.chat-message{align-self:flex-start;max-width:72%;padding:10px 13px;border-radius:14px 14px 14px 4px;background:#16274e}.chat-message.mine{align-self:flex-end;background:#174d77;border-radius:14px 14px 4px 14px}.chat-message p{margin:3px 0 0}.chat-message small{opacity:.75}.chat-compose{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:end}.chat-compose textarea{resize:none}.chat-reopen-button{position:fixed;right:22px;bottom:70px;z-index:20;border:0;border-radius:999px;background:#1976d2;color:#fff;padding:14px 20px;box-shadow:0 12px 35px rgba(0,0,0,.4);font-weight:800;cursor:pointer}

/* Market */
.market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.market-card{text-decoration:none;color:inherit;transition:.18s transform,.18s border-color}.market-card:hover{transform:translateY(-3px);border-color:#4f9dff}.market-assets{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.market-assets span{padding:7px 9px;border-radius:9px;background:rgba(255,255,255,.07)}.market-assets.large span{font-size:1.05rem}.market-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.market-offer-list{display:flex;flex-direction:column;gap:10px}.market-offer-list article{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:12px}.market-message-list{max-height:360px;overflow:auto;display:flex;flex-direction:column;gap:9px;margin-bottom:14px}.market-message-list>div{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.05)}.market-message-list small{margin-left:8px;color:var(--muted)}

/* Pokémon progression / center */
.pokemon-progression-badge{position:absolute;z-index:5;top:7px;right:7px;min-width:54px;min-height:54px;border-radius:50%;background:linear-gradient(135deg,#ffd747,#ff8a00);color:#181003;display:grid;place-items:center;text-decoration:none;font-weight:1000;box-shadow:0 0 0 4px rgba(255,215,71,.18),0 8px 25px rgba(0,0,0,.35);animation:nexusProgressPulse 1.8s infinite}.pokemon-progression-badge small{position:absolute;top:50px;font-size:.63rem;background:#050918;color:#fff;padding:3px 5px;border-radius:5px;white-space:nowrap}@keyframes nexusProgressPulse{50%{transform:scale(1.08);box-shadow:0 0 0 8px rgba(255,215,71,.08)}}.progression-move-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.progression-move-card{padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:14px}.progression-evolution-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.progression-evolution-card{padding:16px;text-align:center}.progression-evolution-card img{height:180px;max-width:100%;object-fit:contain}.pokemon-center-button{background:#d71f32!important;color:#fff!important;border-color:#ff5c6c!important;font-weight:900;box-shadow:0 8px 24px rgba(215,31,50,.25)}.pokemon-center-button:hover{background:#ef2d43!important}

/* Healing / loot multi */
.loot-player-multi{max-height:260px;overflow:auto;padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(0,0,0,.12)}.loot-player-multi .check-row{padding:7px 5px;border-bottom:1px solid rgba(255,255,255,.05)}

@media(max-width:900px){.chat-layout,.market-detail-grid{grid-template-columns:1fr}.chat-window{min-height:560px}.social-cover{min-height:260px;align-items:center;flex-direction:column;text-align:center}.social-profile-avatar{width:120px;height:120px}.owlbear-vtt-frame{min-height:70vh}.chat-compose{grid-template-columns:1fr}.market-offer-list article{grid-template-columns:1fr}.nexus-sebrae-footer{padding-bottom:76px}}

/* v0.19.0 — administração de NPCs da Comunidade */
.npc-bootstrap-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:linear-gradient(135deg,rgba(77,123,255,.13),rgba(145,71,255,.09));}
.npc-bootstrap-panel h2{margin:.15rem 0 .35rem}.npc-bootstrap-panel p{max-width:760px;margin:0 0 .35rem}
.npc-admin-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));align-items:start}
.npc-admin-card{display:grid;gap:16px}.npc-card-identity{display:flex;align-items:center;gap:12px}.npc-card-identity>a{width:64px;height:64px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:rgba(255,255,255,.06)}.npc-card-identity img{width:100%;height:100%;object-fit:cover}.npc-card-identity h3{margin:0}.npc-card-identity small{display:block;color:var(--muted,#9aa6c3);margin-top:3px}
.npc-random-post-form{display:flex;align-items:end;gap:10px;padding:12px;border:1px solid rgba(124,154,255,.18);border-radius:14px;background:rgba(8,15,38,.42)}.npc-random-post-form label{display:grid;gap:5px;min-width:120px}.npc-random-post-form span{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#9aa6c3)}.npc-random-post-form select{min-height:38px}
.npc-edit-form{padding-top:4px}.compact-grid{gap:8px}.npc-edit-form details{border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:8px 10px}.npc-edit-form summary{cursor:pointer;font-weight:700;color:var(--muted,#9aa6c3)}
@media(max-width:760px){.npc-bootstrap-panel{align-items:stretch;flex-direction:column}.npc-random-post-form{align-items:stretch;flex-direction:column}.npc-random-post-form label{min-width:0}.npc-admin-grid{grid-template-columns:1fr}}

/* === Financeiro manual v0.20 === */
.finance-manual-card::after { content:"R$ 12,50"; font-size:5.1rem; right:-.45rem; bottom:-1.35rem; }
.finance-pix-key-card { position:relative; overflow:hidden; }
.finance-pix-key-card::after { content:"PIX"; position:absolute; right:-.4rem; bottom:-2.1rem; font-size:8rem; font-weight:1000; color:rgba(95,229,255,.035); transform:rotate(-10deg); pointer-events:none; }
.finance-pix-info { position:relative; z-index:1; display:grid; gap:.65rem; margin-top:1rem; }
.finance-pix-info > div { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.75rem .85rem; border:1px solid rgba(150,168,255,.11); border-radius:12px; background:rgba(0,0,0,.14); }
.finance-pix-info small { color:var(--muted); text-transform:uppercase; letter-spacing:.08em; font-size:.66rem; font-weight:850; }
.finance-pix-info strong { color:#fff; text-align:right; overflow-wrap:anywhere; }
.finance-pix-key-line { align-items:center !important; }
.finance-pix-key-line > div { display:grid; gap:.18rem; }
.finance-manual-note { position:relative; z-index:1; margin:1rem 0 0; padding:.8rem .9rem; border-left:3px solid var(--cyan); border-radius:0 10px 10px 0; background:rgba(95,229,255,.065); color:#dcecff; line-height:1.5; font-size:.85rem; }
.finance-status-badge.reported { color:#b9e9ff; border-color:rgba(95,229,255,.34); background:rgba(95,229,255,.09); }
.finance-row-reported { background:linear-gradient(90deg,rgba(95,229,255,.04),transparent 36%); }
.finance-awaiting { display:inline-flex; padding:.45rem .65rem; border-radius:10px; color:#b9e9ff; background:rgba(95,229,255,.08); border:1px solid rgba(95,229,255,.2); font-size:.75rem; font-weight:850; }
@media (max-width: 680px) {
    .finance-pix-info > div, .finance-pix-key-line { align-items:flex-start !important; flex-direction:column; }
    .finance-pix-info strong { text-align:left; }
}

/* v0.21.0 — Festival das Berries / Lepa / Mercado NPC */
.berry-event-card{position:relative;overflow:hidden;border-color:rgba(90,190,110,.34);background:linear-gradient(145deg,rgba(18,46,31,.96),rgba(18,28,44,.96))}.berry-event-card:before{content:"";position:absolute;inset:auto -60px -80px auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(104,210,99,.22),transparent 68%);pointer-events:none}.event-weekday-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .58rem;border-radius:999px;background:rgba(255,255,255,.07);font-size:.75rem;color:var(--muted)}
.berry-festival-intro{display:grid;grid-template-columns:minmax(240px,360px) 1fr;gap:2rem;align-items:center;overflow:hidden;background:radial-gradient(circle at 18% 22%,rgba(92,210,108,.18),transparent 33%),linear-gradient(140deg,rgba(15,54,31,.96),rgba(18,30,47,.98));border-color:rgba(99,215,111,.38)}.berry-host-art{min-height:420px;display:flex;align-items:flex-end;justify-content:center;position:relative}.berry-host-art:after{content:"";position:absolute;left:8%;right:8%;bottom:2%;height:42px;background:radial-gradient(ellipse,rgba(0,0,0,.46),transparent 68%);filter:blur(5px)}.berry-host-art img{position:relative;z-index:1;max-height:430px;max-width:100%;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(0,0,0,.38))}.berry-festival-copy h2{font-size:clamp(1.5rem,2.8vw,2.45rem);max-width:900px}.berry-reward-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:1.15rem 0}.berry-reward-grid article{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:center;padding:.9rem 1rem;border:1px solid rgba(143,231,126,.22);background:rgba(7,31,19,.55);border-radius:14px}.berry-reward-grid article span{font-size:1.65rem}.berry-reward-grid article b,.berry-reward-grid article small{display:block}.berry-reward-grid article small{color:var(--muted);margin-top:.18rem}.berry-start-button{background:linear-gradient(135deg,#4ea55a,#78c84f);border-color:#8adc69;box-shadow:0 0 24px rgba(96,207,102,.24)}
.berry-quiz-shell{background:radial-gradient(circle at 12% 20%,rgba(80,190,93,.18),transparent 28%),linear-gradient(150deg,rgba(13,44,27,.98),rgba(17,27,44,.98));border-color:rgba(104,213,112,.35)}.berry-quiz-host img{max-height:360px!important;object-fit:contain!important;filter:drop-shadow(0 14px 18px rgba(0,0,0,.35))}.berry-question-source{display:inline-flex;margin-bottom:.55rem;padding:.25rem .55rem;border-radius:999px;background:rgba(102,199,96,.13);color:#9de49e;border:1px solid rgba(117,218,110,.22)}.berry-result-panel{background:radial-gradient(circle at 10% 20%,rgba(92,204,104,.16),transparent 30%),var(--panel)}.berry-earned-loots{display:grid;gap:.7rem;margin:1rem 0 1.2rem}.berry-earned-loots article{display:flex;gap:.75rem;align-items:flex-start;padding:.8rem .9rem;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.berry-earned-loots article.is-sent{border-color:rgba(84,210,110,.35)}.berry-earned-loots article.is-missing{border-color:rgba(235,177,70,.36)}.berry-earned-loots article>span{font-size:1.35rem}.berry-earned-loots b,.berry-earned-loots small,.berry-earned-loots a{display:block}.berry-earned-loots small{color:var(--muted);margin:.12rem 0 .28rem}
.market-owner-row{display:flex;align-items:center;gap:.7rem;margin-bottom:.75rem}.market-owner-row img,.market-owner-fallback{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);display:grid;place-items:center}.market-owner-row div{display:flex;flex-direction:column}.market-owner-row small,.market-owner-row em{font-size:.72rem;color:var(--muted);font-style:normal}.market-card-npc{border-color:rgba(124,157,255,.25)}.market-npc-banner{display:flex;align-items:center;gap:.85rem;padding:.75rem;margin-bottom:1rem;border-radius:14px;background:rgba(80,104,190,.12);border:1px solid rgba(105,136,224,.2)}.market-npc-banner img{width:74px;height:74px;border-radius:16px;object-fit:cover}.market-npc-banner h3{margin:.12rem 0}.market-npc-banner a{font-size:.85rem}
@media(max-width:800px){.berry-festival-intro{grid-template-columns:1fr}.berry-host-art{min-height:300px}.berry-host-art img{max-height:300px}.berry-reward-grid{grid-template-columns:1fr}}

/* === Nexus Dimension v0.25.0 === */
.move-catalog-filter-v025{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:.8rem;align-items:end}
.move-catalog-filter-v025 .page-header-actions{grid-column:1/-1}
.move-catalog-grid,.item-catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.move-catalog-card,.item-catalog-card{padding:0;overflow:hidden}
.move-catalog-card summary,.item-catalog-card summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;list-style:none}
.move-catalog-card summary::-webkit-details-marker,.item-catalog-card summary::-webkit-details-marker{display:none}
.move-catalog-card[open] summary,.item-catalog-card[open] summary{border-bottom:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035)}
.move-catalog-card h3,.item-catalog-card h3{margin:.25rem 0 0}.move-type-pill{display:inline-flex;padding:.2rem .48rem;border-radius:999px;background:rgba(100,170,255,.12);border:1px solid rgba(100,170,255,.2);font-size:.7rem;font-weight:900}
.move-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;padding:1rem 1.1rem}.move-detail-grid span{display:grid;gap:.2rem;padding:.65rem;border-radius:10px;background:rgba(255,255,255,.04)}.move-detail-grid small,.item-catalog-summary small{color:var(--muted)}.move-catalog-card>p{margin:.15rem 1.1rem 1rem;line-height:1.55}
.item-catalog-filter{align-items:end}.item-catalog-filter .page-header-actions{grid-column:1/-1}.item-catalog-summary{display:flex;align-items:center;gap:.75rem;min-width:0}.item-catalog-thumb{width:54px;height:54px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:rgba(255,255,255,.05);overflow:hidden}.item-catalog-thumb img{width:100%;height:100%;object-fit:contain}.item-catalog-fallback{font-size:1.5rem}.item-catalog-preview{padding:1rem 1.1rem}.item-catalog-preview p{line-height:1.55}
.community-video{margin-top:.8rem;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#050914}.community-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.community-video-link{display:flex;align-items:center;justify-content:center;min-height:80px;padding:1rem;text-decoration:none;font-weight:900}
.trainer-progress-summary{display:flex;gap:.55rem;flex-wrap:wrap;margin:.75rem 0}.trainer-progress-summary span{display:inline-flex;gap:.35rem;align-items:center;padding:.5rem .7rem;border:1px solid rgba(95,229,255,.17);border-radius:999px;background:rgba(95,229,255,.06);font-size:.78rem}
.skills-total-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}.skill-total-row{display:grid;grid-template-columns:1fr auto;gap:.35rem .75rem;align-items:end;padding:.8rem;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.025)}.skill-total-row>strong,.skill-total-row>small{grid-column:1/-1}.skill-total-row>small{color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.skill-total-row label{margin:0}.skill-total-value{min-width:58px;display:grid;place-items:center;padding:.45rem .55rem;border-radius:10px;background:rgba(95,229,255,.09);border:1px solid rgba(95,229,255,.18)}.skill-total-value small{font-size:.62rem;color:var(--muted);text-transform:uppercase}.skill-total-value b{font-size:1.25rem}
.trainer-point-distribution{border-color:rgba(95,229,255,.25)}.trainer-xp-form{display:flex;align-items:end;gap:.75rem;flex-wrap:wrap;margin:1rem 0;padding:1rem;border-radius:13px;background:rgba(0,0,0,.14)}.trainer-xp-form label{min-width:220px}.trainer-distribution-form{display:grid;gap:1rem;margin-top:1rem}.skills-distribution-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.65rem}.skills-distribution-grid label{margin:0}.skills-distribution-grid input{margin-top:.3rem}
@media(max-width:1050px){.move-catalog-filter-v025{grid-template-columns:repeat(2,minmax(0,1fr))}.move-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.move-catalog-filter-v025,.move-detail-grid{grid-template-columns:1fr}.skills-total-grid,.skills-distribution-grid{grid-template-columns:1fr}.trainer-xp-form{align-items:stretch;flex-direction:column}.trainer-xp-form label{min-width:0}}
.community-video-card{margin-top:.8rem}.community-video-frame{border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#050914}.community-video-frame iframe{display:block;width:100%;aspect-ratio:16/9;border:0}

/* === Nexus Dimension v0.26.0 === */
.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.battle-extra-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.battle-extra-actions details{padding:1rem}.battle-extra-actions summary{cursor:pointer;font-weight:900}.battle-pp-consume{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;margin-bottom:.8rem}.battle-pp-consume small{color:var(--muted)}
#combat-switch-panel,#combat-items-panel{scroll-margin-top:90px}.community-upload-image{max-width:100%;max-height:520px;object-fit:contain;border-radius:14px;margin-top:.8rem}.community-reply .community-video-frame{margin-top:.8rem}
.trainer-point-distribution input:disabled{opacity:.45;cursor:not-allowed}.skills-distribution-grid label small{color:var(--muted);font-size:.7rem}
@media(max-width:900px){.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.battle-extra-actions{grid-template-columns:1fr}}
@media(max-width:560px){.form-grid.four{grid-template-columns:1fr}}

/* === v0.30.0 • Economia C-12 + Central de Notificações === */
.nexus-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(125,160,255,.24);border-radius:14px;background:rgba(10,18,44,.72);font-size:19px;text-decoration:none;transition:.18s ease}.nexus-bell:hover,.nexus-bell.active{transform:translateY(-1px);border-color:rgba(91,197,255,.7);box-shadow:0 8px 24px rgba(26,96,205,.22)}.nexus-bell b{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#e74663;color:white;font-size:11px;line-height:20px;text-align:center;border:2px solid #0b1023}
.c12-economy-wallet{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:16px}.c12-economy-wallet>div{padding:14px;border-radius:14px;background:rgba(13,25,58,.64);border:1px solid rgba(122,155,236,.16);display:flex;flex-direction:column;gap:5px}.c12-economy-wallet small{color:var(--text-soft,#aeb8d5);font-size:11px;letter-spacing:.08em}.c12-economy-wallet strong{font-size:20px;color:#eaf7ff}
.c12-auction-grid,.c12-investment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.c12-auction-card,.c12-investment-card{display:flex;flex-direction:column;gap:15px;position:relative;overflow:hidden}.c12-auction-card.is-finished,.c12-investment-card.is-disabled{opacity:.72}.c12-auction-asset{display:flex;align-items:center;gap:14px}.c12-auction-art{width:84px;height:84px;border-radius:18px;background:linear-gradient(145deg,rgba(58,103,190,.26),rgba(17,26,54,.6));border:1px solid rgba(146,181,255,.22);display:grid;place-items:center;overflow:hidden;font-size:38px;flex:none}.c12-auction-image{width:100%;height:100%;object-fit:contain}.c12-auction-asset h2,.c12-investment-card h2{margin:3px 0}.c12-auction-asset p,.c12-investment-card p{margin:0;color:var(--text-soft,#aeb8d5)}.c12-auction-numbers,.c12-investment-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.c12-auction-numbers span,.c12-investment-stats span{padding:10px;border-radius:11px;background:rgba(4,12,34,.5);display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--text-soft,#aeb8d5)}.c12-auction-numbers b,.c12-investment-stats b{color:#fff;font-size:14px}.c12-auction-bid-form{display:flex;align-items:end;gap:10px}.c12-auction-bid-form .field{flex:1}.c12-auction-history{display:flex;flex-direction:column;gap:6px;padding-top:9px;border-top:1px solid rgba(140,166,225,.14)}.c12-auction-history span{font-size:12px;color:var(--text-soft,#b6bfdb)}.c12-auction-history em{font-style:normal;color:#ffd274}.c12-investment-card{padding-top:22px}.c12-investment-ball{position:absolute;right:18px;top:16px;font-size:30px;filter:drop-shadow(0 5px 12px rgba(0,0,0,.35))}.c12-investment-history{display:flex;flex-direction:column;gap:9px}.c12-investment-row{display:grid;grid-template-columns:minmax(150px,1.4fr) repeat(4,minmax(110px,1fr)) auto;gap:10px;align-items:center;padding:12px;border:1px solid rgba(137,166,226,.15);border-radius:13px;background:rgba(5,14,36,.48)}.c12-investment-row>div{display:flex;flex-direction:column}.c12-investment-row span:not(.status-pill){display:flex;flex-direction:column;color:var(--text-soft,#aeb8d5);font-size:11px}.c12-investment-row b{color:#fff;font-size:13px}
.notification-pref-master,.notification-pref-grid label{display:flex;gap:12px;align-items:flex-start;padding:13px;border:1px solid rgba(125,160,235,.18);border-radius:14px;background:rgba(7,17,43,.52);cursor:pointer}.notification-pref-master{background:linear-gradient(135deg,rgba(26,82,151,.3),rgba(9,19,48,.55))}.notification-pref-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.notification-pref-master input,.notification-pref-grid input{margin-top:3px;transform:scale(1.15)}.notification-pref-master span,.notification-pref-grid span{display:flex;flex-direction:column;gap:3px}.notification-pref-master small,.notification-pref-grid small{color:var(--text-soft,#aeb8d5);font-size:11px;font-weight:400}
.nexus-notification-list{padding:10px}.nexus-notification-row{margin:0}.nexus-notification-open{width:100%;border:0;background:transparent;color:inherit;display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;text-align:left;padding:13px;border-radius:14px;cursor:pointer;border-bottom:1px solid rgba(135,161,218,.09)}.nexus-notification-row.is-unread .nexus-notification-open{background:rgba(34,89,167,.18);box-shadow:inset 3px 0 #5baeff}.nexus-notification-open:hover{background:rgba(73,117,194,.16)}.nexus-notification-icon{width:42px;height:42px;border-radius:13px;background:rgba(77,126,211,.17);display:grid;place-items:center;font-size:20px}.nexus-notification-open>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.nexus-notification-open small{color:var(--text-soft,#9eabc9);font-size:10px;letter-spacing:.06em}.nexus-notification-open b{font-size:14px}.nexus-notification-open em{font-style:normal;color:var(--text-soft,#bdc8e4);font-size:12px}
.c12-menu-auction .c12-menu-icon{filter:drop-shadow(0 0 10px rgba(255,190,86,.35))}.c12-menu-invest .c12-menu-icon{filter:drop-shadow(0 0 10px rgba(86,255,166,.28))}
@media(max-width:900px){.c12-investment-row{grid-template-columns:1fr 1fr}.c12-investment-row>div{grid-column:1/-1}.c12-auction-numbers,.c12-investment-stats{grid-template-columns:1fr}.c12-auction-bid-form{flex-direction:column;align-items:stretch}.nexus-bell{width:38px;height:38px}.notification-pref-grid{grid-template-columns:1fr}}

/* === Nexus Dimension v0.31.0 • Módulos / Banco de Itens / Solicitar Venda === */
.pokedex-module-console{display:grid;gap:18px;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(77,204,255,.16),transparent 34%),linear-gradient(145deg,rgba(9,23,54,.97),rgba(15,11,40,.97));border-color:rgba(81,188,255,.28)}
.pokedex-module-visual{display:flex;align-items:center;gap:24px}.pokedex-module-visual>img{width:min(230px,35vw);max-height:220px;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.42))}.pokedex-module-visual h2{margin:.25rem 0}.pokedex-module-progression{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pokedex-module-progression span{padding:10px;border-radius:11px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.18);text-align:center;color:var(--muted);font-size:.75rem;font-weight:800}.pokedex-module-progression span.active{color:#dff9ff;border-color:rgba(76,205,255,.38);background:rgba(52,156,220,.12);box-shadow:inset 0 0 18px rgba(64,173,255,.08)}
.pokedex-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.pokedex-module-slot{min-height:390px;display:flex;flex-direction:column;gap:11px;position:relative;overflow:hidden}.pokedex-module-slot.installed{border-color:rgba(82,221,182,.38);box-shadow:inset 0 0 34px rgba(43,185,149,.06)}.pokedex-module-slot.locked{opacity:.62;background:linear-gradient(145deg,rgba(20,24,38,.92),rgba(8,10,18,.96))}.module-slot-number{font-size:.7rem;letter-spacing:.12em;font-weight:900;color:#89dcff}.module-slot-lock,.module-slot-empty{min-height:120px;display:grid;place-items:center;font-size:3rem;border-radius:16px;background:rgba(255,255,255,.035);border:1px dashed rgba(255,255,255,.15)}.module-installed-image{height:150px;display:grid;place-items:center;border-radius:16px;background:radial-gradient(circle,rgba(77,203,255,.14),transparent 66%),rgba(4,10,28,.42);overflow:hidden}.module-installed-image img{max-width:100%;height:140px;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(0,0,0,.4))}.pokedex-module-slot>p{color:var(--muted);line-height:1.48;flex:1}.module-owned-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px}.module-owned-card{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;padding:12px;border-radius:14px;background:rgba(5,15,38,.5);border:1px solid rgba(122,160,232,.14)}.module-owned-card img{width:72px;height:72px;object-fit:contain}.module-owned-card>div{display:flex;flex-direction:column;gap:4px}.module-owned-card small{color:var(--muted);line-height:1.4}.module-owned-card span{font-size:.72rem;color:#8edfff}
.item-bank-section{border-color:rgba(106,176,255,.26);background:linear-gradient(145deg,rgba(8,25,54,.92),rgba(11,16,36,.95))}.inventory-bank-grid{margin-top:14px}.bank-item-card{border-color:rgba(97,153,225,.24)}.bank-item-card .quantity-badge{background:#315f9e}.equipped-pokemon-mini,.equipped-trainer-mini{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:8px 10px;margin:0 12px 8px;border-radius:10px;background:rgba(75,170,255,.07);border:1px solid rgba(80,177,255,.13);font-size:.72rem}.equipped-pokemon-mini span{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border-radius:999px;background:rgba(255,255,255,.06)}.equipped-pokemon-mini img{width:24px;height:24px;object-fit:contain}.equipped-item-card{border-color:rgba(81,209,255,.33)}
.shop-sale-request-panel{border-color:rgba(255,190,75,.24);background:linear-gradient(145deg,rgba(36,27,10,.42),rgba(10,16,35,.93))}.sale-request-item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:9px}.sale-request-item{display:grid;grid-template-columns:52px 1fr 68px;gap:10px;align-items:center;padding:10px;border-radius:12px;background:rgba(4,12,30,.58);border:1px solid rgba(255,255,255,.1)}.sale-request-item img{width:50px;height:50px;object-fit:contain}.sale-request-icon{font-size:1.8rem;text-align:center}.sale-request-item>span:not(.sale-request-icon){display:flex;flex-direction:column;gap:3px;min-width:0}.sale-request-item small{color:var(--muted);font-size:.68rem}.sale-request-item input{width:68px}.sale-request-history,.master-sale-request-list{display:flex;flex-direction:column;gap:10px}.sale-request-row,.master-sale-request-card{padding:13px;border-radius:14px;border:1px solid rgba(135,164,224,.15);background:rgba(4,13,34,.52);display:grid;gap:9px}.sale-request-row>div:first-child{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sale-request-row small{color:var(--muted)}.sale-request-lines{display:flex;gap:6px;flex-wrap:wrap}.sale-request-lines span{padding:5px 7px;border-radius:8px;background:rgba(255,255,255,.05);font-size:.72rem}.sale-request-quote{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.master-sale-request-card.closed{opacity:.72}.master-sale-lines{display:grid;gap:8px}.master-sale-line{display:grid;grid-template-columns:52px minmax(160px,1fr) minmax(150px,220px);gap:10px;align-items:center;padding:9px;border-radius:11px;background:rgba(255,255,255,.035)}.master-sale-line img{width:48px;height:48px;object-fit:contain}.master-sale-line>span{display:flex;flex-direction:column}.master-sale-line small{color:var(--muted)}.compact-field{margin:0}.compact-field input{min-width:120px}.master-sale-requests{grid-column:1/-1}
.pokemon-held-preview{margin-top:8px;display:flex;align-items:center;gap:10px;padding:9px;border:1px solid rgba(102,184,255,.16);border-radius:11px;background:rgba(8,20,45,.46)}.pokemon-held-preview[hidden]{display:none}.pokemon-held-preview img{width:52px;height:52px;object-fit:contain}.player-meta{display:grid;gap:5px}.player-more-actions>summary{cursor:pointer;color:var(--muted);font-weight:800}.player-more-actions>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
@media(max-width:1100px){.pokedex-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pokedex-module-progression{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.pokedex-module-visual{align-items:flex-start;flex-direction:column}.pokedex-module-visual>img{width:min(230px,70vw);align-self:center}.pokedex-module-grid,.pokedex-module-progression{grid-template-columns:1fr}.sale-request-item-grid{grid-template-columns:1fr}.sale-request-item{grid-template-columns:46px 1fr 62px}.master-sale-line{grid-template-columns:46px 1fr}.master-sale-line .field{grid-column:1/-1}.sale-request-quote{align-items:stretch;flex-direction:column}}

/* === Nexus Dimension v0.31.0 • EXP. SHARE distribution === */
.module-xp-panel{border-color:rgba(112,225,170,.25);background:linear-gradient(145deg,rgba(8,37,35,.78),rgba(8,16,38,.95))}.module-xp-pools{display:grid;gap:12px;margin-top:14px}.module-xp-pool{padding:14px;border-radius:15px;border:1px solid rgba(114,198,180,.18);background:rgba(3,15,29,.56);display:grid;gap:12px}.module-xp-pool .panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}.module-xp-pool h3{margin:.35rem 0 .15rem}.module-xp-balance{font-size:1.1rem;color:#85f0bf;padding:7px 10px;border-radius:10px;background:rgba(63,201,141,.09);border:1px solid rgba(94,226,164,.16)}.module-xp-form{display:grid;grid-template-columns:minmax(200px,1fr) minmax(100px,160px) auto;gap:10px;align-items:end}.module-xp-ally{padding:11px;border-radius:12px;background:rgba(78,130,255,.07);border:1px solid rgba(99,151,255,.16);display:grid;gap:8px}.module-xp-ally p{margin:0;color:var(--muted);font-size:.8rem}.module-xp-history{display:flex;gap:6px;flex-wrap:wrap;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.module-xp-history small{width:100%;color:var(--muted)}.module-xp-history span{font-size:.72rem;padding:4px 7px;border-radius:8px;background:rgba(255,255,255,.05)}@media(max-width:760px){.module-xp-form{grid-template-columns:1fr}.module-xp-form .button{width:100%}}

/* v0.32.0 — Changelog e Códigos Promocionais */
.nexus-changelog-list{display:grid;gap:12px}.nexus-changelog-entry{border:1px solid var(--border,#27364b);border-radius:16px;background:rgba(8,18,31,.55);overflow:hidden}.nexus-changelog-entry summary{display:grid;grid-template-columns:auto auto 1fr auto;gap:12px;align-items:center;padding:16px 18px;cursor:pointer;list-style:none}.nexus-changelog-entry summary::-webkit-details-marker{display:none}.nexus-changelog-number{font-size:.72rem;opacity:.65}.nexus-changelog-version{font-weight:900;color:#7de4ff}.nexus-changelog-title{font-weight:800}.nexus-changelog-entry time{font-size:.78rem;opacity:.72}.nexus-changelog-body{padding:0 20px 18px;border-top:1px solid rgba(255,255,255,.06)}.nexus-changelog-body ul{margin:14px 0 0;padding-left:20px;display:grid;gap:8px}.promo-redeem-panel{display:grid;grid-template-columns:1fr minmax(300px,520px);gap:24px;align-items:end}.promo-redeem-form{display:flex;gap:10px;align-items:end}.promo-redeem-form .field{flex:1}.promo-history-list,.promo-admin-list{display:grid;gap:12px}.promo-history-card,.promo-admin-card{border:1px solid var(--border,#27364b);border-radius:16px;padding:16px;background:rgba(8,18,31,.48)}.promo-history-head,.promo-admin-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.promo-history-head>div,.promo-admin-head>div{display:grid;gap:4px}.promo-history-head strong,.promo-admin-head h3{font-size:1.15rem;letter-spacing:.03em}.promo-history-head time{font-size:.78rem;opacity:.7}.promo-reward-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.promo-reward-chips span{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(74,184,255,.12);border:1px solid rgba(74,184,255,.24);font-size:.78rem}.promo-rewards-builder{display:grid;gap:12px}.promo-reward-row{display:grid;grid-template-columns:160px minmax(180px,1fr) minmax(110px,160px) auto;gap:10px;align-items:end;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px}.promo-reward-row .promo-target-pokemon{min-width:140px}.promo-admin-meta{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0;font-size:.8rem;opacity:.85}.promo-admin-head>div:last-child{text-align:right}.promo-admin-head>div:last-child strong{font-size:1.5rem}.promo-admin-head>div:last-child small{display:block;opacity:.65}.promo-redemption-table{display:grid;gap:8px}.promo-redemption-table>div{display:grid;grid-template-columns:130px 180px 150px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.82rem}.promo-redemption-table time{opacity:.68}
@media(max-width:900px){.nexus-changelog-entry summary{grid-template-columns:auto auto 1fr}.nexus-changelog-entry time{grid-column:2/4}.promo-redeem-panel{grid-template-columns:1fr}.promo-redeem-form{align-items:stretch;flex-direction:column}.promo-reward-row{grid-template-columns:1fr 1fr}.promo-reward-row .promo-remove-reward{grid-column:1/-1}.promo-redemption-table>div{grid-template-columns:1fr 1fr}.promo-redemption-table>div span{grid-column:1/-1}}
@media(max-width:560px){.nexus-changelog-entry summary{grid-template-columns:auto 1fr}.nexus-changelog-title,.nexus-changelog-entry time{grid-column:2}.promo-reward-row{grid-template-columns:1fr}.promo-reward-row .promo-remove-reward{grid-column:auto}.promo-history-head,.promo-admin-head{flex-direction:column}.promo-redemption-table>div{grid-template-columns:1fr}}
