:root { --bg:#0e1724; --panel:#172435; --line:#2a3b50; --text:#edf5ff; --muted:#91a4b9; --cyan:#38d9c5; --yellow:#ffd45a; --radius:18px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-height:100vh; color:var(--text); font:15px/1.65 Manrope,sans-serif; background:radial-gradient(circle at 75% 8%,#183958 0,transparent 31%),linear-gradient(180deg,#101b29,#0b131f 62%); }
a { color:inherit; text-decoration:none; }
.ambient { position:fixed; border-radius:50%; filter:blur(90px); opacity:.12; pointer-events:none; }
.ambient-one { width:420px; height:420px; background:#3cd4c3; top:18%; left:-260px; }
.ambient-two { width:500px; height:500px; background:#347cff; right:-320px; top:45%; }
.site-header { height:84px; max-width:1380px; margin:auto; padding:0 30px; display:flex; align-items:center; gap:35px; border-bottom:1px solid #ffffff12; position:relative; z-index:5; }
.brand { display:flex; align-items:center; gap:9px; font:700 24px Rajdhani,sans-serif; letter-spacing:1px; white-space:nowrap; }
.brand img { width:42px; height:42px; object-fit:contain; }
.brand b { color:var(--cyan); }
.brand small { display:block; font:700 8px Manrope,sans-serif; letter-spacing:2.2px; color:var(--muted); }
.main-nav { display:flex; align-items:center; gap:25px; margin:auto; }
.main-nav a { color:#aab9c9; font-size:14px; font-weight:600; padding:29px 0; position:relative; }
.main-nav a:hover,.main-nav a.active { color:#fff; }
.main-nav a.active:after { content:""; height:2px; background:var(--cyan); position:absolute; left:0; right:0; bottom:0; }
.header-actions,.hero-actions { display:flex; gap:10px; }
.btn { border:0; border-radius:10px; padding:10px 18px; display:inline-flex; align-items:center; justify-content:center; gap:8px; font-weight:700; cursor:pointer; }
.btn.primary { background:linear-gradient(135deg,#39d5bd,#2dbfae); color:#071815; box-shadow:0 8px 25px #2bc5b229; }
.btn.ghost,.btn.soft { background:#1b2a3b; border:1px solid var(--line); color:#dce8f3; }
.btn.large { padding:14px 22px; }
.mobile-toggle { display:none; background:none; border:0; color:#fff; font-size:22px; }
.site-shell { width:min(1180px,calc(100% - 34px)); margin:0 auto 50px; }
.hero { min-height:470px; display:grid; grid-template-columns:1.15fr .85fr; align-items:center; padding:55px 40px 40px; overflow:hidden; }
.eyebrow { font-size:10px; letter-spacing:1.8px; font-weight:800; color:var(--cyan); }
.eyebrow i { font-size:7px; margin-right:7px; }
.eyebrow b { color:#8095a9; margin-left:10px; }
.hero h1 { font:700 clamp(52px,6vw,78px)/.96 Rajdhani,sans-serif; letter-spacing:-2px; margin:20px 0; }
.hero h1 em { font-style:normal; color:transparent; -webkit-text-stroke:1px #92a8be; }
.hero-copy>p { max-width:570px; color:#9eb0c2; font-size:16px; }
.hero-actions { margin-top:29px; }
.quick-links { display:flex; gap:23px; margin-top:23px; color:#9aacbd; font-size:13px; }
.quick-links a:hover { color:var(--cyan); }
.hero-art { min-height:370px; display:grid; place-items:center; position:relative; }
.pokemon-card { width:280px; height:330px; border:1px solid #34506a; border-radius:28px; background:linear-gradient(145deg,#223b52cc,#111d2ad9); box-shadow:0 35px 80px #0007; display:flex; flex-direction:column; align-items:center; justify-content:center; position:relative; z-index:2; transform:rotate(3deg); }
.pokemon-card:before { content:""; position:absolute; inset:12px; border:1px solid #ffffff0d; border-radius:20px; }
.pokemon-card span { font-size:10px; letter-spacing:2px; color:var(--yellow); font-weight:800; }
.pokemon-card img { width:150px; height:150px; object-fit:contain; margin:15px; }
.pokemon-card strong { font:700 27px Rajdhani; text-transform:capitalize; }
.pokemon-card small,.empty-state { color:var(--muted); }
.poke-orbit { position:absolute; border:1px solid #3ad1bf30; border-radius:50%; }
.orbit-a { width:390px; height:390px; }
.orbit-b { width:470px; height:470px; border-style:dashed; }
.happening { background:linear-gradient(90deg,#143c43,#17283a); border:1px solid #2c4b55; border-radius:14px; padding:18px 24px; display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; }
.happening span { display:block; color:var(--cyan); font-size:9px; letter-spacing:1.7px; font-weight:800; }
.happening a { color:var(--cyan); font-weight:700; }
.content-grid { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:24px; }
.content-card,.side-card { background:linear-gradient(145deg,#172536,#13202f); border:1px solid var(--line); border-radius:var(--radius); box-shadow:0 12px 35px #0002; }
.main-content { padding:28px; min-height:350px; }
.section-heading { display:flex; align-items:end; justify-content:space-between; padding-bottom:20px; border-bottom:1px solid var(--line); margin-bottom:22px; }
.section-heading h2 { margin:2px 0 0; font:700 28px Rajdhani; }
.section-heading>a,.view-all { color:var(--cyan); font-size:12px; font-weight:700; }
.muted { color:#6f8499; }
.sidebar { display:flex; flex-direction:column; gap:18px; }
.side-card { padding:18px; }
.side-title { display:flex; align-items:center; gap:12px; margin-bottom:15px; }
.side-title>i { width:38px; height:38px; display:grid; place-items:center; background:#23394a; color:var(--cyan); border-radius:10px; }
.side-title small { font-size:8px; letter-spacing:1.5px; color:var(--muted); }
.side-title h3 { margin:0; font:700 20px Rajdhani; }
.account-card>a { display:flex; justify-content:space-between; padding:10px 12px; margin-top:5px; background:#1c2c3e; border-radius:8px; color:#aebfd0; font-size:13px; }
.account-card>a:hover { color:#fff; background:#22374c; }
.account-card .account-main { background:var(--cyan); color:#081b1a; font-weight:800; }
.tabs { display:flex; gap:3px; border-bottom:1px solid var(--line); margin-bottom:10px; }
.tab { flex:1; border:0; background:none; color:#8498ab; font:700 12px Manrope; padding:8px 2px; cursor:pointer; border-bottom:2px solid transparent; }
.tab.active { color:var(--cyan); border-color:var(--cyan); }
.rank-panel { display:none; }
.rank-panel.active { display:block; }
.rank-row { display:grid; grid-template-columns:28px 1fr auto; align-items:center; padding:9px 0; border-bottom:1px solid #ffffff0a; font-size:12px; }
.rank-position { width:21px; height:21px; border-radius:6px; background:#223548; display:grid; place-items:center; color:#8ea2b5; }
.rank-row b { color:var(--yellow); }
.view-all { display:block; margin-top:12px; }
.deaths>a { display:flex; justify-content:space-between; padding:7px 0; border-bottom:1px solid #ffffff0a; font-size:12px; }
.deaths small { color:var(--muted); }
.social-share { margin-top:24px; padding:27px 30px; background:linear-gradient(100deg,#1a2d42,#152333); border:1px solid var(--line); border-radius:var(--radius); display:flex; justify-content:space-between; align-items:center; }
.social-share span { color:var(--cyan); font-size:9px; font-weight:800; letter-spacing:1.8px; }
.social-share h2 { font:700 24px Rajdhani; margin:2px 0; }
.share { border:0; border-radius:9px; color:#fff; padding:12px 15px; font-weight:700; margin-left:7px; cursor:pointer; }
.facebook { background:#2864c7; } .whatsapp { background:#1caa61; }
footer { max-width:1180px; margin:0 auto; padding:28px 0 38px; border-top:1px solid #ffffff12; color:#708398; font-size:11px; }
.footer-top { display:flex; align-items:center; justify-content:space-between; gap:30px; padding-bottom:22px; }
footer nav { display:flex; gap:20px; flex-wrap:wrap; } .footer-brand { font-size:20px; }
.footer-legal { padding-top:18px; border-top:1px solid #ffffff0c; }
.footer-legal p { max-width:980px; margin:4px 0; line-height:1.65; }
.footer-legal a { color:#42d8c8; }
.legacy-content { color:#b8c6d4; }
.legacy-content h1,.legacy-content h2,.legacy-content h3,.legacy-content h4 { font-family:Rajdhani; color:#fff; }
.legacy-content img,.legacy-content video { max-width:100%; height:auto; }
.legacy-content input,.legacy-content select,.legacy-content textarea { max-width:100%; background:#0f1a27!important; border:1px solid #34485d!important; color:#eaf3fc!important; border-radius:7px; padding:8px; }
.legacy-content input[type=submit],.legacy-content button { background:var(--cyan)!important; color:#09201c!important; border:0!important; border-radius:8px; padding:9px 15px; font-weight:700; }
.legacy-content fieldset { border:1px solid var(--line)!important; border-radius:12px; }
.legacy-content a { color:var(--cyan); }
.legacy-content .characters-cap,.legacy-content .newsTitle { background:#1e3348!important; border:0!important; border-radius:9px; color:#fff!important; padding:10px 14px; }
.legacy-content .content,.legacy-content .message { background:transparent!important; color:inherit!important; width:auto!important; }
.legacy-content ul { max-width:100%; } .imgPostFacebook { border-radius:12px; } .newsTitle { margin-top:20px; }
@media(max-width:980px) {
  .site-header { padding:0 18px; } .mobile-toggle { display:block; margin-left:auto; }
  .main-nav { display:none; position:absolute; top:83px; left:17px; right:17px; background:#172536; border:1px solid var(--line); border-radius:12px; padding:12px; flex-direction:column; align-items:stretch; }
  .main-nav.open { display:flex; } .main-nav a { padding:9px; } .header-actions .ghost { display:none; }
  .hero { grid-template-columns:1fr; padding:45px 15px; } .hero-art { display:none; }
  .content-grid { grid-template-columns:1fr; } .sidebar { display:grid; grid-template-columns:repeat(2,1fr); }
  .social-share { align-items:flex-start; gap:20px; } .social-share>div:last-child { display:flex; flex-direction:column; gap:7px; } .share { margin:0; }
  footer { width:calc(100% - 34px); }
}
@media(max-width:650px) {
  .header-actions .primary { display:none; } .brand img { width:36px; } .site-shell { width:min(100% - 20px,1180px); }
  .hero { min-height:400px; } .hero h1 { font-size:49px; } .hero-actions,.quick-links { flex-direction:column; } .quick-links { gap:7px; }
  .happening { align-items:flex-start; gap:15px; } .content-card { padding:18px; } .sidebar { grid-template-columns:1fr; }
  .social-share { flex-direction:column; } .social-share>div:last-child,.share { width:100%; }
  footer { grid-template-columns:1fr; width:calc(100% - 24px); } footer nav { flex-wrap:wrap; } .legacy-content .table { overflow-x:auto; }
}

/* Modern compatibility layer for the original PHP pages */
body { background-color:#09121f; background-image:radial-gradient(circle at 82% -5%,#1e5272 0,transparent 32%),radial-gradient(circle at 5% 35%,#153d45 0,transparent 25%),linear-gradient(180deg,#0d1928 0,#09121f 100%); }
.site-header { max-width:1320px; height:90px; backdrop-filter:blur(18px); }
.brand { letter-spacing:1.5px; }
.brand img { display:none; }
.brand:before { content:attr(data-initials); width:38px; height:38px; display:grid; place-items:center; border-radius:12px; color:#071b19; font:800 13px Manrope; background:linear-gradient(135deg,#5be2d2,#2ab8a8); box-shadow:0 8px 28px #38d9c533; }
.site-shell { width:min(1220px,calc(100% - 40px)); }
.content-grid { grid-template-columns:minmax(0,1fr) 300px; align-items:start; }
.content-card,.side-card { border-color:#ffffff12; background:linear-gradient(145deg,#17283bde,#111f30e8); box-shadow:0 18px 55px #02071145,inset 0 1px #ffffff08; }
.main-content { padding:32px 34px; }
.section-heading { align-items:center; margin-bottom:28px; }
.section-heading h2 { font-size:32px; letter-spacing:-.4px; }
.sidebar { position:sticky; top:18px; }
.side-card { padding:20px; }
.account-card>a { border:1px solid transparent; background:#ffffff08; padding:11px 13px; }
.account-card>a:hover { border-color:#4bdbca44; background:#35cbbb12; transform:translateX(2px); }

.legacy-content { color:#c6d4e2; font-size:14px; }
.legacy-content .message { margin:0 0 22px!important; padding:0!important; border:0!important; }
.legacy-content .characters-cap,.legacy-content .newsTitle { min-height:48px; display:flex; align-items:center; gap:8px; margin:0 0 18px!important; padding:0 16px!important; border:1px solid #ffffff0d!important; background:linear-gradient(90deg,#203a52,#1b3046)!important; box-shadow:inset 3px 0 var(--cyan); font:700 15px Manrope!important; }
.legacy-content .backPage { margin:-8px 0 18px; }
.legacy-content fieldset { min-width:0; margin:14px 0 22px!important; padding:22px!important; border:1px solid #334b62!important; background:#0d19261f; }
.legacy-content legend { padding:0 10px; color:#8fa8bd; font-size:12px; font-weight:700; letter-spacing:.3px; }
.legacy-content .table { display:flex!important; width:100%!important; gap:18px; align-items:stretch; overflow:visible!important; }
.legacy-content .table>ul { margin:0!important; padding:0!important; list-style:none!important; display:flex!important; flex-direction:column; gap:8px; }
.legacy-content .table>ul:first-child { flex:0 0 min(210px,32%)!important; width:auto!important; }
.legacy-content .table>ul:last-child { flex:1!important; width:auto!important; min-width:0; }
.legacy-content .table li { min-height:43px!important; height:auto!important; margin:0!important; padding:8px 10px!important; display:flex!important; align-items:center; border:0!important; border-radius:9px; background:#ffffff04!important; list-style:none!important; }
.legacy-content .table li:empty { display:none!important; }
.legacy-content .table p,.legacy-content .table label { margin:0!important; line-height:1.35; }
.legacy-content input[type=text],.legacy-content input[type=password],.legacy-content input[type=email],.legacy-content input[type=number],.legacy-content select,.legacy-content textarea { width:100%!important; min-height:42px; padding:10px 12px!important; outline:none; background:#091522!important; border:1px solid #39536b!important; border-radius:9px!important; transition:.2s ease; }
.legacy-content input:focus,.legacy-content select:focus,.legacy-content textarea:focus { border-color:var(--cyan)!important; box-shadow:0 0 0 3px #38d9c518; }
.legacy-content input[type=radio],.legacy-content input[type=checkbox] { width:18px!important; height:18px; accent-color:var(--cyan); }
.legacy-content input[type=submit],.legacy-content button,.legacy-content .loginbutton { min-height:40px; padding:9px 18px!important; border-radius:9px!important; font-family:Manrope!important; cursor:pointer; transition:transform .18s ease,box-shadow .18s ease; }
.legacy-content input[type=submit]:hover,.legacy-content button:hover { transform:translateY(-1px); box-shadow:0 8px 22px #30c8b72b; }
.legacy-content center { max-width:100%; }
.legacy-content table { width:100%!important; border-collapse:separate!important; border-spacing:0 7px!important; border:0!important; }
.legacy-content table tr { background:#ffffff05; }
.legacy-content table td,.legacy-content table th { height:auto!important; padding:12px 14px!important; border:0!important; border-top:1px solid #ffffff0b!important; border-bottom:1px solid #ffffff0b!important; text-align:left; }
.legacy-content table td:first-child,.legacy-content table th:first-child { border-left:1px solid #ffffff0b!important; border-radius:10px 0 0 10px; }
.legacy-content table td:last-child,.legacy-content table th:last-child { border-right:1px solid #ffffff0b!important; border-radius:0 10px 10px 0; }
.legacy-content table .pTitle,.legacy-content table tr:first-child { background:#20364c; color:#eaf4fc; }
.legacy-content .player-list-outfit { width:52px!important; height:52px!important; object-fit:contain; vertical-align:middle; margin-right:12px; }
.legacy-content .pTable td { vertical-align:middle; }
.legacy-content ul { list-style:none; padding-left:0; }
.legacy-content li::marker { content:""; }
.legacy-content a { text-decoration:none!important; }
.legacy-content a:hover { color:#86fff1; }
.legacy-content .formCheck { margin:5px 0; font-size:12px; }
.page-account>br,.page-highscores>br,.page-houses>br { display:none; }

/* Guild list: keep long descriptions compact and aligned. */
.page-guilds .guild-list-table { table-layout:fixed!important; }
.page-guilds .guild-list-table td { min-width:0; }
.page-guilds .guild-list-logo img { width:72px!important; height:72px!important; object-fit:cover; }
.page-guilds .guild-list-name { overflow-wrap:anywhere; }
.page-guilds .guild-list-description { color:#aebfd0; line-height:1.55; overflow-wrap:anywhere; word-break:break-word; }
.page-guilds .guild-list-description span { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.page-guilds .guild-list-points { white-space:nowrap; color:#57dfcf; }

@media(max-width:760px) {
  .site-header { height:74px; }
  .content-grid { grid-template-columns:1fr; }
  .sidebar { position:static; }
  .main-content { padding:22px 18px; }
  .legacy-content .table { flex-direction:column; gap:8px; }
  .legacy-content .table>ul:first-child,.legacy-content .table>ul:last-child { width:100%!important; flex:1!important; }
  .legacy-content .table>ul:first-child li { min-height:auto!important; padding:5px 2px!important; background:transparent!important; color:#7f99ae; font-size:12px; }
  .legacy-content fieldset { padding:16px!important; }
  .legacy-content table { display:block; overflow-x:auto; }
  .page-guilds .guild-list-table { display:block!important; overflow:visible!important; }
  .page-guilds .guild-list-table tbody { display:block; }
  .page-guilds .guild-list-table .pTitle { display:none; }
  .page-guilds .guild-list-table tr:not(.pTitle) { display:grid; grid-template-columns:64px minmax(0,1fr) auto; grid-template-areas:"logo name points" "logo description description"; gap:6px 12px; margin-bottom:10px; padding:12px; border:1px solid #ffffff0d; border-radius:12px; background:#ffffff05; }
  .page-guilds .guild-list-table td { display:block; width:auto!important; padding:0!important; border:0!important; border-radius:0!important; }
  .page-guilds .guild-list-table td[colspan] { grid-column:1 / -1; padding:12px!important; text-align:center; }
  .page-guilds .guild-list-logo { grid-area:logo; }
  .page-guilds .guild-list-logo img { width:60px!important; height:60px!important; }
  .page-guilds .guild-list-name { grid-area:name; align-self:center; }
  .page-guilds .guild-list-description { grid-area:description; font-size:12px; }
  .page-guilds .guild-list-description span { -webkit-line-clamp:3; }
  .page-guilds .guild-list-points { grid-area:points; align-self:center; }
}

/* Blue-dark direction and compact home */
body { background-image:radial-gradient(circle at 78% 0,#174d78 0,transparent 34%),radial-gradient(circle at 0 45%,#12385d 0,transparent 30%),linear-gradient(160deg,#081322 0,#0b1c31 48%,#07111e 100%); }
.hero { min-height:330px; padding:24px 40px 20px; }
.hero h1 { font-size:clamp(43px,4.7vw,61px); margin:11px 0; }
.hero-copy>p { margin:14px 0 0; }
.hero-actions { margin-top:21px; }
.quick-links { margin-top:16px; }
.hero-art { min-height:265px; }
.pokemon-card { width:220px; height:250px; border-radius:24px; }
.pokemon-card img { width:110px; height:110px; margin:8px; }
.pokemon-card strong { font-size:23px; }
.orbit-a { width:285px; height:285px; }
.orbit-b { width:345px; height:345px; }
.two-factor-disabled .twofactor { display:none!important; }
.two-factor-enabled .twofactor { display:flex!important; }
.recovery-intro { display:flex; gap:16px; align-items:center; padding:18px; margin-bottom:20px; border:1px solid #2e5577; border-radius:14px; background:linear-gradient(110deg,#153452,#10283f); }
.recovery-icon { flex:0 0 48px; height:48px; display:grid; place-items:center; border-radius:13px; color:#071a25; font-size:20px; background:linear-gradient(135deg,#4bcfff,#39dfca); }
.recovery-intro h3 { margin:0 0 3px; font:700 21px Rajdhani; color:#fff; }
.recovery-intro p { margin:0; color:#92abc0; }
.recovery-form { padding:22px; border:1px solid #294761; border-radius:15px; background:#0b1928aa; }
.recovery-form>label { display:block; margin-bottom:8px; color:#b9cad8; font-weight:700; }
.input-icon { position:relative; margin-bottom:23px; }
.input-icon>i { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:#5edccd; z-index:1; }
.legacy-content .input-icon input { padding-left:42px!important; }
.recovery-form fieldset { padding:8px!important; background:transparent!important; }
.recovery-option { display:flex; align-items:center; gap:12px; padding:14px; margin:8px 0; border:1px solid #29455d; border-radius:11px; background:#102337; cursor:pointer; transition:.2s ease; }
.recovery-option:hover { border-color:#46d9cc; background:#123049; }
.recovery-option>span { display:grid; grid-template-columns:26px 1fr; align-items:center; flex:1; }
.recovery-option i { grid-row:1 / 3; color:#48dccc; font-size:17px; }
.recovery-option b { color:#eef7ff; }
.recovery-option small { color:#8199ad; }
.recovery-submit { width:100%; justify-content:center; background:linear-gradient(135deg,#4bd9ca,#31bfc2)!important; }
.page-lostaccount table td,.page-lostaccount table td[bgcolor] { background:#102337!important; color:#c9d8e5!important; }

/* Character profile */
.page-characters>.characters-cap { min-height:92px!important; padding:12px 18px!important; display:flex!important; align-items:center; gap:16px; }
.charactersOutfit { flex:0 0 72px; width:72px; height:72px; border-radius:14px; background-color:#0a1928; background-position:center; background-repeat:no-repeat; background-size:contain; image-rendering:auto; box-shadow:inset 0 0 0 1px #3c5e77,0 10px 24px #0004; }
.character-name { font:700 23px Rajdhani; }
.achievement-strip { margin:0 0 10px; display:flex; align-items:center; gap:10px; }
.achievement-strip-label { color:#6f8da6; font-size:8px; font-weight:800; letter-spacing:1.4px; }
.achievements { display:flex; flex-wrap:wrap; gap:5px; }
.achievement { position:relative; width:38px; height:38px; padding:0; border:1px solid #355772; border-radius:7px; display:grid; place-items:center; background:linear-gradient(145deg,#1b3e57,#12283c); cursor:help; transition:.18s ease; box-shadow:inset 0 1px #ffffff0b; }
.achievement:hover { transform:translateY(-2px); border-color:#55e2d3; box-shadow:0 7px 18px #0004; }
.achievement>i { color:#50e2d2; font-size:16px; text-align:center; }
.achievement span,.achievement small { display:none; }
.achievement.disabled { opacity:.3; filter:grayscale(1); }
.achievement:not(.disabled):nth-child(2n)>i { color:#ffd75e; }
.achievement:not(.disabled):nth-child(3n)>i { color:#64a5ff; }
.achievement:not(.disabled):nth-child(5n)>i { color:#f48bff; }
.achievement:hover:after { content:attr(title); position:absolute; z-index:20; left:50%; bottom:calc(100% + 9px); width:max-content; max-width:240px; padding:7px 9px; border:1px solid #385871; border-radius:7px; transform:translateX(-50%); background:#071421; color:#dceaf6; font:600 10px/1.4 Manrope; box-shadow:0 8px 25px #0008; pointer-events:none; }
.page-account .table,.page-characters .table { max-width:none!important; }
.page-account .table>ul:last-child,.page-characters .table>ul:last-child { flex:1 1 auto!important; }
@media(max-width:600px){.achievement-strip{align-items:flex-start;flex-direction:column}.achievement{width:35px;height:35px}}

.character-dashboard { margin:0 0 24px; padding:20px; border:1px solid #2e4c66; border-radius:14px; background:linear-gradient(145deg,#102338cc,#0c1b2cdd); }
.profile-section-title { margin-bottom:13px; }
.profile-section-title>span { color:#48ddcf; font-size:8px; font-weight:800; letter-spacing:1.4px; }
.profile-section-title h3 { margin:1px 0 0; color:#fff; font:700 22px Rajdhani; }
.character-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.character-stats article { min-width:0; min-height:112px; padding:14px; border:1px solid #314e67; border-radius:11px; display:grid; grid-template-columns:25px 1fr; align-content:center; background:#15293d; }
.character-stats article>i { color:#7f9bb1; }
.character-stats article>span { color:#8fa6b9; font-size:9px; font-weight:800; letter-spacing:.7px; text-transform:uppercase; }
.character-stats strong { grid-column:1 / 3; margin:5px 0 8px; color:#eef7ff; font-size:20px; }
.character-stats strong small { color:#6f879b; font-size:12px; }
.character-stats article>div { grid-column:1 / 3; height:5px; overflow:hidden; border-radius:99px; background:#091522; }
.character-stats article>div b { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#37d5c2,#428be4); }
.character-stats em { grid-column:1 / 3; margin-top:5px; color:#7891a6; font-size:9px; font-style:normal; text-align:right; }
.pokemon-roster { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.pokemon-roster article { min-width:0; min-height:72px; padding:9px 11px; border:1px solid #2c4961; border-radius:11px; display:flex; align-items:center; gap:11px; background:#14283c; }
.pokemon-roster img { flex:0 0 52px; width:52px; height:52px; object-fit:contain; image-rendering:auto; }
.pokemon-roster article div { min-width:0; display:flex; flex-direction:column; }
.pokemon-roster strong { overflow:hidden; color:#edf7ff; white-space:nowrap; text-overflow:ellipsis; }
.pokemon-roster span { color:#7f99ae; font-size:10px; }
.profile-timeline { display:grid; gap:8px; }
.profile-timeline article { min-height:64px; padding:9px 12px; border:1px solid #2d4a63; border-radius:11px; display:flex; align-items:center; gap:12px; background:#14283c; }
.profile-timeline article>img { flex:0 0 48px; width:48px; height:48px; object-fit:contain; }
.profile-timeline article>i { flex:0 0 38px; width:38px; height:38px; display:grid; place-items:center; border-radius:10px; color:#45ddcd; background:#1b3a50; }
.profile-timeline article>div { min-width:0; display:flex; flex-direction:column; }
.profile-timeline strong { color:#dceaf6; font-size:12px; }
.profile-timeline span { color:#7892a8; font-size:10px; }
.profile-empty { grid-column:1 / -1; margin:0; padding:18px; border:1px dashed #31516b; border-radius:10px; color:#738da3; text-align:center; }
@media(max-width:760px){.character-stats,.pokemon-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.character-dashboard{padding:14px}.profile-timeline strong{font-size:11px}}
@media(max-width:480px){.character-stats,.pokemon-roster{grid-template-columns:1fr}}

/* Exact alignment for character details, quests and badges */
.page-characters fieldset>.table { display:flex!important; width:100%!important; gap:18px; align-items:stretch; }
.page-characters fieldset>.table>ul { display:flex!important; flex-direction:column; gap:8px; }
.page-characters fieldset>.table>ul:first-child { flex:0 0 210px!important; width:210px!important; }
.page-characters fieldset>.table>ul:nth-child(2) { flex:1 1 auto!important; width:auto!important; min-width:0; }
.page-characters fieldset>.table>ul>li { width:100%!important; min-height:44px!important; }
.page-characters fieldset>.table p { width:100%; }
.page-characters .progress-track { height:7px; margin:5px 0 14px; overflow:hidden; border-radius:99px!important; background:#091725!important; }
.page-characters .progress-track>div { min-width:0; height:7px!important; overflow:hidden; color:transparent!important; background:linear-gradient(90deg,#2ec9b8,#3e91e7)!important; text-shadow:none!important; }
.page-characters table.quest-grid,.page-characters table.insignia-grid { display:block!important; width:100%!important; }
.page-characters table.quest-grid tbody,.page-characters table.insignia-grid tbody { display:grid; gap:8px; }
.page-characters table.quest-grid tbody { grid-template-columns:repeat(5,minmax(0,1fr)); }
.page-characters table.insignia-grid tbody { grid-template-columns:repeat(4,minmax(0,1fr)); }
.page-characters table.quest-grid tr,.page-characters table.insignia-grid tr { display:contents; }
.page-characters table.quest-grid td,.page-characters table.insignia-grid td { min-width:0; min-height:48px; padding:11px 12px!important; display:flex; align-items:center; justify-content:flex-start; border:1px solid #ffffff0b!important; border-radius:10px!important; background:#ffffff04!important; }
.page-characters table.insignia-grid td { justify-content:center; text-align:center!important; }
.page-characters table.quest-grid td:empty,.page-characters table.insignia-grid td:empty { visibility:hidden; }
.page-characters .catch-grid td { min-height:54px; border-radius:10px!important; background:#142d44!important; }
.page-characters fieldset { margin-bottom:28px!important; }
@media(max-width:900px){.page-characters table.quest-grid tbody{grid-template-columns:repeat(3,minmax(0,1fr))}.page-characters table.insignia-grid tbody{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.page-characters fieldset>.table{flex-direction:column}.page-characters fieldset>.table>ul:first-child,.page-characters fieldset>.table>ul:nth-child(2){width:100%!important;flex:1 1 auto!important}.page-characters table.quest-grid tbody,.page-characters table.insignia-grid tbody{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Rename form: the original markup includes a third spacer column */
.page-account form[action="/account/do_rename"] .table>ul:first-child { flex:0 0 210px!important; width:210px!important; }
.page-account form[action="/account/do_rename"] .table>ul:nth-child(2) { flex:1 1 460px!important; width:auto!important; max-width:540px; }
.page-account form[action="/account/do_rename"] .table>ul:nth-child(3) { display:none!important; }
.page-account form[action="/account/do_rename"] #charSelect,
.page-account form[action="/account/do_rename"] #newcharname { width:100%!important; min-width:320px; }
.page-account form[action="/account/do_rename"] .table>ul:nth-child(2)>li { min-height:52px!important; flex-wrap:wrap; align-content:center; }
.page-account form[action="/account/do_rename"] #character_name_check2 { width:100%; order:2; }
.page-account form[action="/account/do_rename"] #suggestion { position:static!important; top:auto!important; width:100%; margin:5px 0 0!important; color:#42d9cb!important; text-align:left; }
@media(max-width:650px){.page-account form[action="/account/do_rename"] .table>ul:first-child,.page-account form[action="/account/do_rename"] .table>ul:nth-child(2){width:100%!important;min-width:0;max-width:none;flex:1 1 auto!important}.page-account form[action="/account/do_rename"] #charSelect,.page-account form[action="/account/do_rename"] #newcharname{min-width:0}}

/* Character creation forms use the same obsolete 30/26/44 column markup */
.page-account form[action="/account/createcharacter"] .table>ul:first-child,
.page-createaccount .table:has(#character_name)>ul:first-child { flex:0 0 210px!important; width:210px!important; }
.page-account form[action="/account/createcharacter"] .table>ul:nth-child(2),
.page-createaccount .table:has(#character_name)>ul:nth-child(2) { flex:1 1 520px!important; width:auto!important; max-width:580px; }
.page-account form[action="/account/createcharacter"] .table>ul:nth-child(3),
.page-createaccount .table:has(#character_name)>ul:nth-child(3) { display:none!important; }
.page-account form[action="/account/createcharacter"] #newcharname,
.page-account form[action="/account/createcharacter"] #city,
.page-createaccount #character_name,
.page-createaccount .table:has(#character_name) select { width:100%!important; min-width:340px; }
.page-account form[action="/account/createcharacter"] .table>ul:nth-child(2)>li,
.page-createaccount .table:has(#character_name)>ul:nth-child(2)>li { min-height:52px!important; flex-wrap:wrap; align-content:center; }
.page-account form[action="/account/createcharacter"] .table span[style*="position: absolute"],
.page-createaccount .table:has(#character_name) span[style*="position: absolute"] { position:static!important; }
.page-account form[action="/account/createcharacter"] #newcharname,
.page-createaccount #character_name { order:1; }
.page-account form[action="/account/createcharacter"] #suggestion,
.page-createaccount .table:has(#character_name) #suggestion { position:static!important; top:auto!important; order:2; width:100%; margin:5px 0 0!important; color:#42d9cb!important; text-align:left; }
.page-account form[action="/account/createcharacter"] #character_name_check2,
.page-createaccount #character_name_check { order:3; width:100%; margin-top:4px; }
@media(max-width:650px){.page-account form[action="/account/createcharacter"] .table>ul:first-child,.page-account form[action="/account/createcharacter"] .table>ul:nth-child(2),.page-createaccount .table:has(#character_name)>ul:first-child,.page-createaccount .table:has(#character_name)>ul:nth-child(2){width:100%!important;min-width:0;max-width:none;flex:1 1 auto!important}.page-account form[action="/account/createcharacter"] #newcharname,.page-account form[action="/account/createcharacter"] #city,.page-createaccount #character_name,.page-createaccount .table:has(#character_name) select{min-width:0}}

/* Live happenings */
#accbox_online { display:inline-flex; align-items:center; min-height:26px; padding:5px 10px; border:1px solid #ffd75a55; border-radius:99px; background:#ffd75a12; color:#ffe17c; font-size:10px; font-weight:800; letter-spacing:.7px; box-shadow:0 0 24px #ffd75a10; }
.happening-feed { margin:2px 0 24px; padding:16px 18px; border:1px solid #294964; border-radius:15px; background:linear-gradient(135deg,#102b43,#0d1d31); }
.feed-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:13px; }
.feed-heading span { color:#44dfcf; font-size:9px; font-weight:800; letter-spacing:1.6px; }
.feed-heading h2 { margin:2px 0 0; font:700 21px Rajdhani; }
.feed-heading a { color:#48ddcf; font-size:11px; font-weight:700; }
.feed-heading span i { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:#34e0c9; box-shadow:0 0 0 5px #34e0c916; animation:livePulse 1.7s infinite; }
@keyframes livePulse{50%{box-shadow:0 0 0 9px transparent}}
.feed-grid { display:grid; grid-template-columns:1.35fr repeat(2,1fr); gap:8px; }
.feed-item,#happening1,#happening2,#happening3,#happening4,#happening5 { position:static!important; inset:auto!important; display:flex!important; width:auto!important; min-width:0; min-height:54px; height:auto!important; margin:0!important; padding:11px 13px!important; align-items:center; overflow:hidden; border:1px solid #ffffff0d; border-radius:10px; background:#ffffff05!important; color:#b9cad9; font-size:11px; opacity:1!important; }
.feed-item.featured { grid-row:span 2; min-height:92px; background:linear-gradient(135deg,#17435a,#123047)!important; border-color:#3ed8c94a; color:#effaff; font-size:12px; }
.feed-item:empty:before { content:"Aguardando atualização..."; color:#58748c; }

/* Events readability */
.page-events { color:#c8d8e7; }
.page-events fieldset { padding:24px!important; background:linear-gradient(145deg,#102238,#0c1b2d)!important; }
.page-events .event { display:block!important; margin:0 0 22px!important; padding:0!important; overflow:hidden; border:1px solid #2b4b67; border-radius:15px!important; background:#101f31; color:#d7e5f2!important; box-shadow:0 12px 30px #0002; }
.page-events .event .description { width:100%; }
.page-events .event .image { position:relative; width:100%; height:175px!important; border-radius:14px 14px 0 0!important; background-size:cover!important; background-position:center!important; background-repeat:no-repeat!important; }
.page-events .event .image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#06111dcc,transparent 60%),linear-gradient(0deg,#101f31,transparent 55%); }
.page-events .event .name { position:relative; z-index:1; display:block; margin:0!important; padding:20px; color:#fff; font:800 clamp(25px,3vw,38px) Rajdhani; text-shadow:0 3px 12px #000; }
.page-events .event .text { display:block!important; margin:0!important; padding:18px 24px 10px!important; color:#c4d4e2!important; font-size:14px!important; line-height:1.75!important; text-indent:0!important; }
.page-events .event .text span { color:#91a9bd!important; }
.page-events .event .text i.fa-circle { color:#48dccc!important; }
.page-events .event .info { margin:8px 20px 20px!important; padding:15px!important; border:1px solid #294861; border-radius:11px; background:#0a1928; color:#a9bfd1!important; font-size:12px!important; line-height:1.9!important; }
.page-events .event .info i { margin-left:0!important; color:#4ddccd!important; }
.page-events>p,.page-events fieldset>span p { color:#b7cadb!important; line-height:1.75; }

@media(max-width:760px){
  .site-shell{width:calc(100% - 16px)} .site-header{padding:0 12px;gap:10px}.brand{font-size:19px}.brand:before{width:34px;height:34px}.header-actions{margin-left:auto}.header-actions .btn{padding:9px 11px;font-size:12px}
  .hero{padding:24px 10px 18px;min-height:320px}.hero h1{font-size:42px}.hero-copy>p{font-size:14px}.happening-feed{padding:14px}.feed-grid{grid-template-columns:1fr}.feed-item.featured{grid-row:auto;min-height:66px}.feed-item{min-height:44px}.feed-heading{align-items:center}.feed-heading a{font-size:10px}
  .main-content{padding:20px 12px}.section-heading{padding-left:4px}.content-card,.side-card{border-radius:13px}.legacy-content fieldset{min-width:0;width:100%;padding:14px!important}.legacy-content{overflow:hidden}.legacy-content .table{max-width:100%}.legacy-content input,.legacy-content select,.legacy-content textarea{max-width:100%!important}
  .page-events fieldset{padding:14px!important}.page-events .event .image{height:135px!important}.page-events .event .text{padding:15px!important;font-size:13px!important}.page-events .event .info{margin:5px 12px 14px!important;padding:12px!important}.page-events .event .name{padding:16px;font-size:27px}
  .social-share{padding:20px}.sidebar{grid-template-columns:1fr!important}footer{padding-left:8px;padding-right:8px}.footer-top{align-items:flex-start;flex-direction:column;gap:18px}
}
