/* Lenguaje visual oficial de la Demonlist v5, extendido sin alterar la estructura funcional */
:root {
 --pc-background:#080a0e;--pc-panel:#141920;--pc-panel-hi:#1a2029;
 --pc-outline:#2b313c;--pc-fg:#f7f8fc;--pc-muted:#a3acba;
 --pc-orange:#ff7c34;--pc-pink:#f43a68;
 --bg-body:var(--pc-background);--bg-card:var(--pc-panel);--bg-modal:#171c25;
 --text-main:var(--pc-fg);--text-dim:var(--pc-muted);--accent:var(--pc-orange);
 --accent-2:var(--pc-pink);--border:#303641;
}
body:not(.light-mode) {
 background-color:var(--pc-background)!important;
 background-image:radial-gradient(ellipse 48% 30% at 82% 7%,rgba(232,77,65,.085),transparent 100%),radial-gradient(ellipse 43% 35% at 4% 56%,rgba(248,119,47,.055),transparent 100%),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.018) 1px,transparent 1px)!important;
 background-size:auto,auto,52px 52px,52px 52px!important;
 color:var(--pc-fg)!important;
}
body.light-mode {--pc-background:#f2f3f6;--pc-panel:white;--pc-panel-hi:#f8f9fb;--pc-outline:#dee1e8;--pc-fg:#181b20;--pc-muted:#626c78;--bg-body:var(--pc-background);--bg-card:white;--bg-modal:white;--text-main:var(--pc-fg);--text-dim:var(--pc-muted);--border:#dce0e6;--accent:#db642b;}
header:not(.modal-header),.top-bar,.sidebar-header,.mobile-menu-header {
 background:rgba(12,14,20,.94)!important;border-bottom:1px solid #2b303a!important;
 box-shadow:none!important;backdrop-filter:blur(16px);
}
body.light-mode header,body.light-mode .top-bar,body.light-mode .sidebar-header {background:rgba(255,255,255,.95)!important;}
.pointcrate-logo-img {max-width:210px!important;height:35px!important;width:auto!important;object-fit:contain;filter:drop-shadow(0 0 12px rgba(240,76,63,.16));}
.logo-corner .pointcrate-logo-img{height:42px!important;}
.logo,.logo-text,.logo-corner{flex-shrink:0}
.btn:not(.btn-danger):not(.btn-success):not(.btn-primary):not(.btn-warning):not(.btn-submit),
.nav-item,.nav-link,.tab,.panel-tab,.user-profile-btn,.btn-volver {
 color:var(--pc-fg)!important;background:#1b212a!important;border:1px solid var(--pc-outline)!important;
 border-radius:9px!important;box-shadow:none!important;font-weight:750!important;
}
.btn:hover,.nav-link:hover,.nav-item:hover,.tab:hover,.panel-tab:hover {border-color:#606874!important;background:#242a35!important;transform:translateY(-1px);}
.btn.active,.nav-item.active,.nav-link.active,.tab.active,.panel-tab.active {
 background:#f7f8fb!important;color:#101319!important;border-color:#f7f8fb!important;box-shadow:none!important;
}
.btn-success,.btn-primary,.btn-submit {background:linear-gradient(100deg,#f68c3e,#ef4663)!important;color:white!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:9px!important;box-shadow:none!important;}
.btn-warning,.btn-admin{background:#533a2a!important;color:#ffbd76!important;border:1px solid #755037!important;border-radius:9px!important;box-shadow:none!important;}
.btn-danger{background:#48252b!important;color:#ffabb2!important;border:1px solid #703943!important;border-radius:9px!important;box-shadow:none!important;}
.theme-toggle,.reload-btn {background:#1c222c!important;border:1px solid #39414f!important;box-shadow:0 10px 26px rgba(0,0,0,.27)!important;color:#ffb278!important;}
.content-section,.card,.stat-card,.team-card,.rule-card,.profile-card,.modal-content,.modal-sidebar,.modal-wrapper,.panel-tab-content,.data-box,.section,.subsection,.points-card,.alert-box,.table-container,.ban-alert,.features-box,.login-container,.hero-section,.ranking-grid,.profile-mini,.fun-facts,.details-panel {
 background:linear-gradient(126deg,#191e27,#11161e)!important;
 border:1px solid #292f3a!important;border-radius:13px!important;
 box-shadow:0 12px 28px rgba(0,0,0,.12)!important;
}
.content-section.active,.main-content,.dashboard-layout,.profile-card,.hero-section{min-width:0}
body.light-mode .content-section,body.light-mode .card,body.light-mode .stat-card,body.light-mode .modal-content,body.light-mode .profile-card,body.light-mode .login-container,body.light-mode .rule-card{background:white!important;border-color:#dde1e8!important}
.stat-card,.points-card {position:relative;overflow:hidden;}
.stat-card::before,.points-card::before {content:"";position:absolute;width:70px;height:3px;left:20px;top:0;background:linear-gradient(90deg,#ff8b43,#f4406c);border-radius:0 0 4px 4px;}
.page-title,.hero-title,.login-title,.section-title,.profile-username,.modal-title,.section-header h2 {
 color:var(--pc-fg)!important;letter-spacing:-.045em;text-shadow:none!important;font-weight:800!important;
}
.section-header,.section-title,.subsection-title {border-color:#303642!important;}
.page-subtitle,.hero-subtitle,.login-subtitle,.profile-description,.section-header p,.footer-text,.status-message,.stat-label,.stat-card-label{color:var(--pc-muted)!important;}
input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]),select,textarea,.form-input,.search-input {
 color:var(--pc-fg)!important;background:#111720!important;border:1px solid #333b48!important;
 border-radius:9px!important;box-shadow:none!important;
}
input:focus,select:focus,textarea:focus{border-color:#ea8851!important;box-shadow:0 0 0 3px rgba(242,125,57,.12)!important;outline:none!important;}
input::placeholder,textarea::placeholder{color:#8993a1!important}
input[type="checkbox"],input[type="radio"]{accent-color:#f27942}
.modal{background:rgba(4,6,10,.83)!important;backdrop-filter:blur(7px)}
.modal-content{background:linear-gradient(135deg,#1a1e27,#10151c)!important;border:1px solid #404553!important;box-shadow:0 25px 80px rgba(0,0,0,.45)!important}
.table-container,.stat-card,.section,.profile-card,.features-box{overflow:hidden}
th{background:#202733!important;color:#c8d0da!important;font-size:.7rem;text-transform:uppercase;letter-spacing:.11em}
td{color:var(--pc-fg);border-color:#2a303a!important}
tr:hover td{background:rgba(255,255,255,.035)!important}
.tag-badge,.status-active,.status-banned {border-radius:5px!important;}
.role-pill,.nationality-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #38404e;background:#1e2530;color:#e6eaf1;border-radius:8px;font-size:.78rem;font-weight:700;white-space:nowrap}
.role-pill[data-role="Owner"]{color:#f6c87d;border-color:#826039;background:#362a22}
.role-pill[data-role="Mod clase A"]{color:#f5adb9;border-color:#733d4d}
.role-pill[data-role="Mod clase B"]{color:#a9c8ef;border-color:#3d587b}
.pc-nationality-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:13px 0}
.pc-nationality-row select{max-width:340px;min-width:200px;padding:11px}
.pc-nationality-row .btn{min-height:40px}
.pc-profile-country{margin-top:12px;display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.pc-nation-flag{display:inline-block;font-size:1.3rem;line-height:1}
.pc-hidden-permission{display:none!important}
.sidebar,.sidebar-nav,.mobile-menu {border-color:#333b47!important;background:#10151d!important}
.dashboard-layout .sidebar{box-shadow:7px 0 35px rgba(0,0,0,.23)}
.sidebar-header{padding-top:22px!important;padding-bottom:22px!important}
.sidebar .nav-item{margin:6px 0;border-radius:10px!important}
.sidebar-footer{border-color:#343b47!important}
@media (max-width:720px){.pointcrate-logo-img{max-width:145px!important;height:27px!important}.modal-content{padding:1.1rem!important}.pc-nationality-row select{width:100%;max-width:none;min-width:0}.btn{max-width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Componentes editoriales: misma tipografía, contraste y acentos que Demonlist v5 */
.hero,.page-header,.hero-section {
 border-bottom:1px solid #2a303a!important;background:transparent!important;
 box-shadow:none!important;border-radius:0!important;
}
.hero-title,.page-title {font-weight:800!important;letter-spacing:-.065em!important;line-height:1.02!important}
.hero-title::after,.page-title::after {content:"";display:block;width:72px;height:3px;background:linear-gradient(90deg,#ff8746,#ed3e66);margin-top:13px;border-radius:3px;}
.hero-subtitle,.page-subtitle{line-height:1.65}
.profile-role,.profile-role-mini {display:inline-flex!important;gap:7px;align-items:center;border:1px solid #755039;background:rgba(254,129,71,.085);color:#ffc390!important;padding:7px 11px;border-radius:7px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.profile-avatar,.profile-avatar-mini,.podium-avatar {border-color:#5d6572!important;background:#262c35!important;box-shadow:none!important;}
.profile-actions{gap:8px!important}
.expandable-section,.expandable-section-mini,.completacion-card,.checkbox-item,.demon-info,.fun-fact-item,.mod-card,.team-card {
 background:linear-gradient(125deg,#1a2029,#151a22)!important;border:1px solid #303742!important;
 border-radius:11px!important;box-shadow:none!important;
}
.completacion-card,.team-card,.rule-card,.mod-card{transition:transform .22s ease,border-color .22s ease,background-color .22s ease}
.completacion-card:hover,.team-card:hover,.rule-card:hover,.mod-card:hover {transform:translateY(-2px);border-color:#545d69!important;}
.rank-card,.podium-card {
 background:linear-gradient(114deg,#191e27,#131820)!important;border:1px solid #2c3340!important;
 border-radius:12px!important;box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
 transition:transform .2s,border-color .2s!important;
}
.rank-card:hover,.podium-card:hover {border-color:#606a79!important;transform:translateY(-2px)!important;}
.podium-card.rank-1 {border-color:#a87c3b!important;background:linear-gradient(119deg,#30251b,#1b1c20 56%,#131820)!important;}
.podium-card.rank-2 {border-color:#6d7e8d!important;background:linear-gradient(119deg,#2b313b,#1c2028 56%,#131820)!important;}
.podium-card.rank-3 {border-color:#865c45!important;background:linear-gradient(119deg,#30231e,#1b1c22 56%,#131820)!important;}
.rank-card .rank-number{color:#bfc9d6!important;letter-spacing:-.05em;font-weight:800}
.rank-username,.podium-username,.team-name {color:#f6f7fb!important;font-weight:800!important;letter-spacing:-.04em}
.rank-records,.podium-stat-label,.team-contact{color:#a1aabb!important}
.rank-points,.podium-stat-value{color:#efae75!important;font-weight:800!important}
.rank-action,.podium-btn{background:#282f3a!important;color:#f3f4f6!important;border:1px solid #454c58!important;border-radius:8px!important;box-shadow:none!important}
.details-panel,.panel-content{background:#11161e!important;border-color:#333b47!important}
.panel-tabs{border-bottom:1px solid #313845!important}
.form-card,.checkbox-group,.info-box,.warning-box,.table-container,.fun-facts {
 background:linear-gradient(125deg,#181e27,#131821)!important;border:1px solid #2b333e!important;
 border-radius:12px!important;box-shadow:none!important;
}
.form-label {color:#c8d0da!important;font-size:.8rem;font-weight:700}
.form-help,.info-box-text,.warning-box-text{color:#a5adbb!important}
.checkbox-item {padding:14px!important}
.form-group select,.form-group input:not([type="checkbox"]),.form-group textarea{min-height:43px}
.team-role,.points-position,.section-icon,.stat-card-icon,.mod-icon{color:#f09a5b!important}
.sidebar-title,.sidebar-header h1{color:#f8f9fb!important;letter-spacing:-.04em}
.sidebar-header h1 {font-weight:800!important}
.sidebar-header p{font-size:.72rem!important;color:#a5aebb!important;letter-spacing:.075em!important;text-transform:uppercase}
.sidebar-footer{padding-top:16px!important}
.rule-card,.team-card,.mod-card{overflow:hidden;}
.rule-card::before,.team-card::before {content:"";position:absolute;inset:0 auto 0 0;width:2px;background:linear-gradient(180deg,#f88c44,#f34469);opacity:.6}
.rule-card,.team-card{position:relative;}
.sidebar:not(.dashboard-layout .sidebar) .nav-link.active{background:#f6f7f9!important;color:#171b20!important}
.login-container {border-radius:14px!important;box-shadow:0 24px 62px rgba(0,0,0,.4)!important}
.login-title {color:#f6f7f9!important;letter-spacing:-.06em!important;text-shadow:none!important}
.features-title {color:#fdad78!important}
.features-list li::before{color:#ef8f4f!important}
.switch-form{color:#ffad78!important}
.btn-guest{border:1px solid #37404d!important;border-radius:9px!important;color:#e9edf4!important;background:#1b222c!important}
.section-header h2{position:relative}
.section-header h2::after{content:"";display:block;height:2px;width:50px;margin-top:9px;background:linear-gradient(90deg,#fd8b48,#f14a6c)}
@media(max-width:700px){.rank-card,.podium-card,.content-section,.form-card{border-radius:10px!important}}

#registerNationality[hidden]{display:none!important}
