:root{
    --ink:#0b0b0a;
    --ink-soft:#151512;
    --panel:#1d1c17;
    --panel-light:#28261e;
    --paper:#e8dfc7;
    --paper-dark:#c7b98f;
    --cream:#fff6db;
    --text:#f4ecd3;
    --muted:#b9ae8e;
    --line:#47412f;
    --green:#6f9b3d;
    --green-light:#a5cf68;
    --orange:#d97732;
    --yellow:#e5ba47;
    --red:#a83b2f;
    --purple:#76558c;
    --blue:#477c87;
    --shadow:0 18px 55px rgba(0,0,0,.48);
    --hard-shadow:5px 5px 0 rgba(0,0,0,.52);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    min-height:100vh;
    color:var(--text);
    font-family:"Trebuchet MS",Tahoma,Arial,sans-serif;
    background:
        linear-gradient(rgba(10,10,8,.92),rgba(10,10,8,.96)),
        repeating-linear-gradient(135deg,transparent 0 14px,rgba(255,255,255,.025) 14px 15px),
        radial-gradient(circle at 15% 0%,#6b3e2f 0,transparent 28%),
        radial-gradient(circle at 85% 10%,#274d3e 0,transparent 32%),
        #090a08;
}
body::before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    opacity:.17;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
    z-index:999;
}

.container{width:min(1180px,calc(100% - 34px));margin:auto}

.site-header{
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(10,10,8,.94);
    border-bottom:3px solid var(--green);
    box-shadow:0 8px 30px rgba(0,0,0,.42);
    backdrop-filter:blur(14px);
}
.site-header::after{
    content:"";
    display:block;
    height:4px;
    background:repeating-linear-gradient(90deg,var(--green) 0 45px,var(--yellow) 45px 58px,var(--orange) 58px 88px,#2d2a20 88px 102px);
}
.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{
    display:flex;
    align-items:center;
    gap:13px;
    color:var(--cream);
    text-decoration:none;
    text-transform:uppercase;
}
.brand-mark{
    width:50px;height:50px;
    display:grid;place-items:center;
    border:2px solid #111;
    outline:2px solid var(--green-light);
    background:linear-gradient(145deg,var(--green-light),#3f6523);
    color:#111;
    font-family:Impact,"Arial Black",sans-serif;
    font-size:1.22rem;
    letter-spacing:-.04em;
    transform:rotate(-3deg);
    box-shadow:4px 4px 0 #000;
}
.brand-copy{display:grid;line-height:.9}
.brand-title{
    font-family:Impact,"Arial Black",sans-serif;
    font-size:1.45rem;
    letter-spacing:.045em;
    text-shadow:3px 3px 0 #000,-1px -1px 0 #000;
}
.brand-subtitle{
    margin-top:7px;
    color:var(--green-light);
    font-size:.66rem;
    font-weight:900;
    letter-spacing:.24em;
}
.nav{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.nav a{
    color:#e8dfc7;
    text-decoration:none;
    text-transform:uppercase;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.08em;
    padding:10px 12px;
    border:1px solid transparent;
    border-radius:3px;
    transition:.16s ease;
}
.nav a:hover{color:#111;background:var(--green-light);border-color:#111;box-shadow:3px 3px 0 #000;transform:translate(-1px,-1px)}
.button-link{border:1px solid var(--green)!important;background:rgba(111,155,61,.12)}
.user-chip{
    color:var(--paper-dark);
    background:#14140f;
    border:1px solid #393628;
    padding:9px 11px;
    font-size:.75rem;
    font-weight:800;
}

.main-content{padding:38px 0 80px;min-height:calc(100vh - 160px)}
.site-footer{
    position:relative;
    overflow:hidden;
    border-top:3px solid var(--green);
    background:#090a08;
    color:var(--muted);
    padding:30px 0;
    font-size:.83rem;
}
.site-footer::before{
    content:"PERFECTROLRP";
    position:absolute;
    right:4%;bottom:-17px;
    font:900 4.3rem/1 Impact,"Arial Black",sans-serif;
    letter-spacing:.05em;
    color:rgba(255,255,255,.025);
}
.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:1}
.footer-brand{color:var(--cream);font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.footer-note{color:#817961;text-align:right}

.hero{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    min-height:300px;
    margin-bottom:27px;
    padding:48px;
    border:2px solid #090a08;
    outline:1px solid #615b44;
    background:
        linear-gradient(110deg,rgba(13,14,10,.97) 0 44%,rgba(21,23,15,.72) 66%,rgba(101,67,45,.45)),
        radial-gradient(circle at 82% 35%,#c5743b 0 3%,transparent 4%),
        linear-gradient(165deg,#5d3940 0 38%,#bb6f42 38% 52%,#2d4e48 52% 100%);
    box-shadow:var(--shadow),var(--hard-shadow);
}
.hero::before{
    content:"";
    position:absolute;
    inset:auto 0 0 42%;
    height:72%;
    z-index:-1;
    opacity:.92;
    clip-path:polygon(0 100%,0 67%,7% 67%,7% 52%,11% 52%,11% 71%,17% 71%,17% 37%,21% 37%,21% 69%,29% 69%,29% 48%,34% 48%,34% 66%,41% 66%,41% 30%,47% 30%,47% 71%,53% 71%,53% 50%,60% 50%,60% 72%,66% 72%,66% 40%,73% 40%,73% 67%,78% 67%,78% 55%,82% 55%,82% 70%,89% 70%,89% 45%,95% 45%,95% 72%,100% 72%,100% 100%);
    background:#11130e;
}
.hero::after{
    content:"PRP";
    position:absolute;
    right:36px;top:20px;
    z-index:-1;
    font:900 clamp(6rem,15vw,12rem)/1 Impact,"Arial Black",sans-serif;
    letter-spacing:-.08em;
    color:rgba(255,246,219,.055);
    transform:rotate(-5deg);
}
.hero-copy{max-width:680px;position:relative;z-index:2}
.hero h1,.page-heading h1{
    font-family:Impact,"Arial Black",sans-serif;
    text-transform:uppercase;
    letter-spacing:.025em;
    color:var(--cream);
    text-shadow:4px 4px 0 #000;
}
.hero h1{font-size:clamp(2.6rem,7vw,5.2rem);line-height:.93;margin:0 0 17px}
.hero p,.page-heading p{color:#d0c4a2;margin:0;max-width:690px;line-height:1.7}
.eyebrow{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:15px!important;
    padding:6px 9px;
    color:#111!important;
    background:var(--green-light);
    border:2px solid #111;
    box-shadow:3px 3px 0 #000;
    font-size:.69rem!important;
    letter-spacing:.24em;
    font-weight:900;
    text-transform:uppercase;
    transform:rotate(-1deg);
}
.eyebrow::before{content:"★";letter-spacing:0}
.hero-stats{
    display:flex;
    gap:10px;
    margin-top:24px;
    flex-wrap:wrap;
}
.hero-stat{
    min-width:110px;
    padding:11px 13px;
    border-left:4px solid var(--green-light);
    background:rgba(7,8,6,.74);
    box-shadow:2px 2px 0 rgba(0,0,0,.8);
}
.hero-stat strong{display:block;color:var(--cream);font-size:1.12rem}
.hero-stat span{display:block;margin-top:3px;color:var(--muted);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}

.page-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
    margin-bottom:28px;
    padding:25px 27px;
    border-left:7px solid var(--green);
    border-top:1px solid var(--line);
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:linear-gradient(110deg,#222118,#171711);
    box-shadow:4px 4px 0 #050505;
}
.page-heading h1{font-size:clamp(2rem,5vw,3.7rem);line-height:1;margin:7px 0 10px}
.breadcrumb{display:inline-block;color:var(--green-light);text-decoration:none;font-weight:900;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.breadcrumb:hover{color:var(--yellow)}

.section-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin:25px 0 12px;
    padding:12px 16px;
    background:var(--paper);
    color:#14130f;
    border:2px solid #090a08;
    box-shadow:4px 4px 0 #000;
    text-transform:uppercase;
}
.section-bar h2{margin:0;font:900 1rem/1 Impact,"Arial Black",sans-serif;letter-spacing:.1em}
.section-bar span{font-size:.7rem;font-weight:900;letter-spacing:.08em;color:#55503e}

.button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:12px 18px;
    color:#10110d;
    background:var(--green-light);
    border:2px solid #0a0a08;
    border-radius:2px;
    box-shadow:4px 4px 0 #000;
    text-decoration:none;
    text-transform:uppercase;
    font:900 .8rem/1 "Trebuchet MS",Arial,sans-serif;
    letter-spacing:.07em;
    cursor:pointer;
    transition:.13s ease;
    white-space:nowrap;
}
.button:hover{background:var(--yellow);transform:translate(-2px,-2px);box-shadow:6px 6px 0 #000}
.button:active{transform:translate(2px,2px);box-shadow:1px 1px 0 #000}
.button-secondary{color:var(--cream);background:#343126;border-color:#615b44}
.button-secondary:hover{color:#111;background:var(--paper)}
.button-danger{color:#ffe7dc;background:var(--red);border-color:#210907}
.button-danger:hover{color:#111;background:#e07155}

.forum-list,.topic-list{display:grid;gap:11px}
.forum-card,.topic-row{
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    gap:19px;
    padding:17px 20px;
    color:inherit;
    text-decoration:none;
    background:linear-gradient(110deg,rgba(35,34,27,.98),rgba(24,24,18,.98));
    border:1px solid #514b38;
    border-left:5px solid var(--forum-accent,var(--green));
    border-radius:2px;
    box-shadow:3px 3px 0 #050505;
    transition:.16s ease;
}
.forum-card::after,.topic-row::after{
    content:"";
    position:absolute;
    top:0;right:0;
    width:95px;height:100%;
    background:linear-gradient(135deg,transparent 0 45%,rgba(255,255,255,.025) 45% 50%,transparent 50% 100%);
}
.forum-card:hover,.topic-row:hover{
    transform:translateX(5px);
    border-color:var(--forum-accent,var(--green));
    background:linear-gradient(110deg,#2d2b21,#1a1a14);
}
.forum-card[data-tone="law"]{--forum-accent:#517f9c}
.forum-card[data-tone="market"]{--forum-accent:#d4943b}
.forum-card[data-tone="danger"]{--forum-accent:#a74635}
.forum-card[data-tone="staff"]{--forum-accent:#76558c}
.forum-card[data-tone="reports"]{--forum-accent:#b35b42}
.forum-card[data-tone="social"]{--forum-accent:#4f8d72}
.forum-card[data-tone="guides"]{--forum-accent:#d1b04e}
.forum-card[data-tone="government"]{--forum-accent:#5e7b52}
.forum-card[data-tone="support"]{--forum-accent:#477c87}
.forum-card[data-tone="rules"]{--forum-accent:#c5c0a8}
.forum-icon,.avatar{
    width:58px;height:58px;
    flex:0 0 auto;
    display:grid;
    place-items:center;
    color:#111;
    background:var(--forum-accent,var(--green-light));
    border:2px solid #080907;
    outline:1px solid color-mix(in srgb,var(--forum-accent,var(--green-light)) 70%,white);
    box-shadow:4px 4px 0 #000;
    font:900 .82rem/1 Impact,"Arial Black",sans-serif;
    letter-spacing:.06em;
    transform:rotate(-2deg);
}
.forum-info,.topic-main{min-width:0;flex:1;position:relative;z-index:1}
.forum-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.forum-card h2,.topic-row h2{margin:0 0 6px;color:var(--cream);font-size:1.02rem;letter-spacing:.015em}
.forum-card p,.topic-row p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.48}
.forum-stats,.topic-meta{
    position:relative;z-index:1;
    min-width:100px;
    display:grid;
    grid-template-columns:auto auto;
    gap:3px 7px;
    text-align:right;
    padding-left:17px;
    border-left:1px dashed #5a543e;
}
.forum-stats strong,.topic-meta strong{color:var(--yellow);font-size:1rem}
.forum-stats span,.topic-meta span{align-self:center;color:#8f866b;font-size:.67rem;text-transform:uppercase}
.topic-status{
    width:42px;height:42px;
    display:grid;place-items:center;
    flex:0 0 auto;
    background:#11120e;
    border:1px solid #55503d;
    font-size:1rem;
}

.badge{
    display:inline-flex;
    width:max-content;
    padding:5px 8px;
    color:#14130e;
    background:var(--paper-dark);
    border:1px solid #080907;
    border-radius:2px;
    box-shadow:2px 2px 0 #000;
    font-size:.62rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.07em;
}
.badge-private{color:#17130b;background:var(--yellow)}

.auth-card,.form-card,.reply-card{
    width:min(740px,100%);
    margin:auto;
    padding:29px;
    background:linear-gradient(145deg,#24231b,#171712);
    border:1px solid #5a543f;
    border-top:5px solid var(--green);
    border-radius:2px;
    box-shadow:var(--shadow),5px 5px 0 #050505;
}
.auth-card{max-width:535px}
.auth-card h1,.form-card h1,.reply-card h2{
    margin:0 0 18px;
    color:var(--cream);
    font-family:Impact,"Arial Black",sans-serif;
    text-transform:uppercase;
    letter-spacing:.05em;
    text-shadow:3px 3px 0 #000;
}
.auth-card>p,.form-card>p{color:var(--muted)}
.stack-form{display:grid;gap:17px}
.stack-form label{display:grid;gap:8px;color:var(--paper);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.stack-form input,.stack-form textarea,.stack-form select,.inline-form input,.inline-form select{
    width:100%;
    padding:13px 14px;
    color:var(--cream);
    background:#0d0e0b;
    border:1px solid #5b5541;
    border-radius:1px;
    outline:none;
    font:inherit;
    box-shadow:inset 3px 3px 0 rgba(0,0,0,.3);
}
.stack-form input:focus,.stack-form textarea:focus,.stack-form select:focus,.inline-form input:focus,.inline-form select:focus{border-color:var(--green-light);box-shadow:0 0 0 2px rgba(165,207,104,.15),inset 3px 3px 0 rgba(0,0,0,.3)}
.stack-form textarea{resize:vertical;line-height:1.6}
.stack-form small{color:var(--muted);font-weight:400;text-transform:none;letter-spacing:0}

.alert{
    padding:14px 16px;
    margin-bottom:17px;
    border:1px solid transparent;
    border-left-width:6px;
    border-radius:1px;
    background:#1d1c17;
    box-shadow:3px 3px 0 #050505;
}
.alert-error{border-color:#b34a3a;color:#ffb6a7;background:#2b1714}
.alert-success{border-color:#739e47;color:#cceca4;background:#182214}
.alert-info{border-color:#4d8191;color:#bce8f2;background:#142126}
.empty-state{
    padding:32px;
    color:var(--muted);
    text-align:center;
    border:1px dashed #655e47;
    border-left:5px solid var(--green);
    background:rgba(31,30,23,.84);
}
.action-row{display:flex;gap:10px;flex-wrap:wrap}

.posts{display:grid;gap:16px;margin:20px 0}
.post{
    display:grid;
    grid-template-columns:190px 1fr;
    overflow:hidden;
    background:#1b1a15;
    border:1px solid #58513c;
    border-radius:2px;
    box-shadow:4px 4px 0 #050505;
}
.post-author{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    padding:24px;
    background:linear-gradient(160deg,#29271e,#171711);
    border-right:1px solid #514b38;
}
.post-author::after{
    content:"";
    position:absolute;
    right:0;bottom:0;
    width:55px;height:55px;
    opacity:.14;
    background:linear-gradient(135deg,transparent 50%,var(--green-light) 50%);
}
.post-author .avatar{--forum-accent:var(--green-light);width:62px;height:62px;font-size:1.35rem}
.post-content{min-width:0;padding:25px}
.post-date{margin-bottom:20px;padding-bottom:10px;color:#8f866b;border-bottom:1px dashed #4f4937;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.post-body{color:#eee4c9;line-height:1.75;overflow-wrap:anywhere}
.post-image{display:block;max-width:100%;max-height:620px;object-fit:contain;margin-top:20px;border:3px solid #0a0a08;outline:1px solid #5b5541;background:#080907;box-shadow:5px 5px 0 #000}
.delete-post-form{margin-top:20px}
.text-danger{padding:0;color:#e27663;background:none;border:0;cursor:pointer;font-weight:900;text-transform:uppercase;font-size:.7rem;letter-spacing:.07em}
.text-danger:hover{color:#ffab9c}
.reply-card{margin-top:28px;max-width:none}

.role-dueno{background:#9e332d;color:#fff0dc}
.role-administrador{background:#76558c;color:#fff3dd}
.role-moderador{background:#477c87;color:#eefbff}
.role-policia{background:#476f9c;color:#eff7ff}
.role-ayudante_desarrollador{background:#c2903f;color:#17130b}
.role-ayudante{background:#6f9b3d;color:#111}
.role-usuario{background:#a9a087;color:#17130b}

.user-table-wrap{overflow:auto;border:1px solid #58513c;border-top:5px solid var(--green);background:#1b1a15;box-shadow:4px 4px 0 #050505}
.user-table{width:100%;border-collapse:collapse;min-width:880px}
.user-table th,.user-table td{text-align:left;padding:16px;border-bottom:1px solid #403c2e;vertical-align:middle}
.user-table th{color:#15140f;background:var(--paper-dark);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}
.user-table tr:hover td{background:#232219}
.user-table td small{display:block;color:var(--muted);margin-top:4px}
.inline-form{display:flex;align-items:center;gap:8px}
.inline-form select{min-width:175px}
.ban-form input{min-width:180px}
.small-button{padding:9px 11px;color:#111;background:var(--green-light);border:2px solid #090a08;border-radius:1px;box-shadow:2px 2px 0 #000;cursor:pointer;font-size:.72rem;font-weight:900;text-transform:uppercase}
.small-button:hover{background:var(--yellow)}
.small-button.danger{color:#fff1e9;background:var(--red)}
.status-active{color:var(--green-light);font-weight:900}
.status-banned{color:#e86e5a;font-weight:900}
.muted{color:var(--muted)}
code{padding:3px 6px;color:var(--green-light);background:#0c0d0a;border:1px solid #4d4837;border-radius:1px}

@media(max-width:850px){
    .nav-wrap{align-items:flex-start;flex-direction:column;padding:15px 0}
    .nav{width:100%;justify-content:flex-start}
    .user-chip{order:-1;width:100%}
    .hero{min-height:330px;padding:34px}
    .hero::before{inset:auto 0 0 25%}
    .page-heading{align-items:flex-start;flex-direction:column}
    .post{grid-template-columns:1fr}
    .post-author{border-right:0;border-bottom:1px solid #514b38;flex-direction:row;align-items:center;flex-wrap:wrap}
    .post-author .avatar{width:48px;height:48px}
}
@media(max-width:620px){
    .container{width:min(100% - 20px,1180px)}
    .main-content{padding-top:22px}
    .brand-title{font-size:1.17rem}
    .brand-subtitle{letter-spacing:.14em}
    .nav a{padding:8px 7px;font-size:.7rem}
    .hero{padding:27px 23px;min-height:350px}
    .hero h1{font-size:2.9rem}
    .hero::after{right:12px;top:75px}
    .hero::before{inset:auto 0 0 0;height:47%;opacity:.55}
    .hero-stats{display:grid;grid-template-columns:1fr 1fr}
    .hero-stat{min-width:0}
    .forum-card,.topic-row{align-items:flex-start;padding:15px;gap:14px}
    .forum-icon{width:48px;height:48px}
    .forum-stats,.topic-meta{display:none}
    .page-heading{padding:21px 19px}
    .auth-card,.form-card,.reply-card{padding:22px 18px}
    .action-row{width:100%}
    .action-row form,.action-row button{width:100%}
    .footer-grid{align-items:flex-start;flex-direction:column}
    .footer-note{text-align:left}
}


/* Sistema de temas pineados */
.topic-title-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.topic-title-line h2{margin-bottom:0}
.topic-row.topic-pinned{
    --forum-accent:var(--yellow);
    background:
        linear-gradient(110deg,rgba(93,72,24,.98),rgba(42,35,18,.98));
    border-color:#b88d2f;
    border-left-color:var(--yellow);
    box-shadow:4px 4px 0 #050505,0 0 22px rgba(229,186,71,.13);
}
.topic-row.topic-pinned:hover{
    border-color:#f2cf68;
    background:linear-gradient(110deg,#785b20,#302817);
}
.topic-row.topic-pinned h2{color:#fff1ad;text-shadow:1px 1px 0 #000}
.topic-row.topic-pinned .topic-status{
    color:#15120a;
    background:linear-gradient(145deg,#f3d36f,#b98521);
    border-color:#f8df8b;
    box-shadow:3px 3px 0 #000;
}
.topic-row.topic-pinned .topic-meta{border-left-color:#8f7131}
.topic-row.topic-pinned .topic-meta strong{color:#ffe588}
.pin-badge,.lock-badge{
    display:inline-flex;
    align-items:center;
    width:max-content;
    padding:4px 8px;
    color:#171208;
    background:var(--yellow);
    border:1px solid #0b0904;
    box-shadow:2px 2px 0 #000;
    font-size:.6rem;
    font-weight:900;
    line-height:1;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.lock-badge{color:#eee7d5;background:#5e594b}
.pin-badge-large{padding:7px 10px;font-size:.68rem;white-space:nowrap}
.button-pin{background:var(--yellow);border-color:#281d07}
.button-pin:hover{background:#f2d570}
.topic-heading-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.topic-heading-title h1{margin:0}
.topic-heading-pinned{
    padding-left:18px;
    border-left:5px solid var(--yellow);
    background:linear-gradient(90deg,rgba(229,186,71,.09),transparent 55%);
}
.alert-pinned{
    color:#fff1b0;
    background:linear-gradient(90deg,rgba(112,82,18,.92),rgba(48,39,18,.92));
    border-color:#d8ab3e;
}

/* ================================================================
   PANEL DEL JUGADOR PERFECTROLRP
   ================================================================ */
.portal-hero{min-height:420px}
.portal-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.button-secondary{background:var(--orange);border-color:#3b1c0b}
.button-ghost{color:var(--cream);background:rgba(0,0,0,.25);border-color:#8f866b}
.public-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.feature-card{position:relative;overflow:hidden;min-height:180px;padding:28px;background:linear-gradient(145deg,#222118,#161711);border:1px solid #59523e;border-top:5px solid var(--green);box-shadow:var(--hard-shadow)}
.feature-card>span{position:absolute;right:17px;top:5px;color:rgba(255,255,255,.055);font:5.5rem/1 Impact,"Arial Black",sans-serif}
.feature-card h2{position:relative;margin:0 0 12px;color:var(--cream);font:1.55rem/1 Impact,"Arial Black",sans-serif;text-transform:uppercase;letter-spacing:.05em}
.feature-card p{position:relative;margin:0;color:var(--muted);line-height:1.65}

.player-banner{position:relative;overflow:hidden;display:grid;grid-template-columns:190px 1fr auto;align-items:center;gap:30px;min-height:285px;margin-bottom:22px;padding:30px;border:1px solid #645d46;border-left:8px solid var(--green);background:linear-gradient(110deg,#25241b 0 54%,#2f4a32 100%);box-shadow:var(--shadow),var(--hard-shadow)}
.player-banner::after{content:"PERFECTROL";position:absolute;right:-25px;bottom:-15px;color:rgba(255,255,255,.035);font:7rem/1 Impact,"Arial Black",sans-serif;transform:rotate(-4deg)}
.player-skin-panel{position:relative;z-index:1;height:225px;border:3px solid #090a08;outline:1px solid #82775a;background:#111;box-shadow:6px 6px 0 #000}
.player-skin-panel img{width:100%;height:100%;object-fit:contain;display:block;background:radial-gradient(circle at 50% 35%,#43523b,#10110d 66%)}
.player-skin-panel span{position:absolute;left:8px;right:8px;bottom:8px;padding:7px;color:#10110d;background:var(--green-light);border:2px solid #090a08;text-align:center;font-size:.72rem;font-weight:900;text-transform:uppercase}
.player-banner-copy{position:relative;z-index:1}
.player-banner-copy h1{margin:0;color:var(--cream);font:clamp(2.3rem,5vw,4.6rem)/.95 Impact,"Arial Black",sans-serif;text-transform:uppercase;text-shadow:4px 4px 0 #000}
.player-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.player-tags span{padding:7px 10px;color:#e9dec0;background:#171810;border:1px solid #5b543e;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.player-tags .status-online{color:#0b1607;background:#8bd355;border-color:#b5ee89}
.player-tags .status-offline{color:#e9dec0;background:#4a473b}
.banner-quick-actions{position:relative;z-index:1;display:grid;gap:9px;min-width:185px}
.banner-quick-actions a{padding:13px 15px;color:#111;background:var(--paper-dark);border:2px solid #090a08;box-shadow:3px 3px 0 #000;text-decoration:none;font-weight:900;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em}
.banner-quick-actions a:hover{background:var(--green-light);transform:translate(-1px,-1px)}

.economy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:27px}
.economy-card{position:relative;overflow:hidden;display:grid;gap:8px;padding:22px;background:#1c1c16;border:1px solid #56503c;border-top:5px solid var(--green);box-shadow:4px 4px 0 #050505}
.economy-card::after{content:"$";position:absolute;right:9px;bottom:-14px;color:rgba(255,255,255,.04);font:6rem/1 Impact,"Arial Black",sans-serif}
.economy-card>span{color:var(--muted);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.economy-card strong{position:relative;z-index:1;color:var(--cream);font:2rem/1 Impact,"Arial Black",sans-serif;letter-spacing:.03em}
.economy-card small{color:#857d66}
.economy-total{border-top-color:var(--orange)}
.economy-prp{border-top-color:var(--purple);background:linear-gradient(145deg,#291e31,#17151a)}
.economy-prp::after{content:"PRP";font-size:4rem;bottom:-5px}

.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:20px;margin-bottom:28px}
.inventory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.inventory-item{display:flex;align-items:center;gap:13px;min-height:82px;padding:13px;background:#1c1b15;border:1px solid #4f4937;border-left:4px solid var(--green);box-shadow:3px 3px 0 #050505}
.inventory-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;color:#12130e;background:var(--green-light);border:2px solid #090a08;font:900 .68rem/1 "Trebuchet MS",sans-serif;box-shadow:2px 2px 0 #000}
.inventory-item div{display:grid;gap:4px}.inventory-item strong{font-size:1.25rem;color:var(--cream)}.inventory-item small{color:var(--muted);font-size:.68rem;text-transform:uppercase}
.character-card{min-width:0}.character-list{margin:0;padding:0;background:#1b1a15;border:1px solid #554f3c;box-shadow:4px 4px 0 #050505}
.character-list div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px dashed #494331}.character-list div:last-child{border-bottom:0}.character-list dt{color:var(--muted);font-size:.72rem;text-transform:uppercase;font-weight:900}.character-list dd{margin:0;color:var(--cream);font-weight:900;text-align:right}
.jobs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.job-card{padding:20px;background:#1c1b15;border:1px solid #57503c;box-shadow:4px 4px 0 #050505}.job-heading{display:flex;align-items:center;gap:13px}.job-heading>span{display:grid;place-items:center;width:52px;height:52px;color:#111;background:var(--orange);border:2px solid #090a08;box-shadow:3px 3px 0 #000;font-weight:900}.job-card h3{margin:0;color:var(--cream);text-transform:uppercase}.job-card small,.job-card p{color:var(--muted)}.job-card p{margin:10px 0 0;font-size:.75rem}.progress-track{height:12px;margin-top:18px;background:#0c0d0a;border:2px solid #050505;outline:1px solid #4d4736}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--green-light))}

.garage-heading,.clothing-heading{margin-bottom:20px}.garage-count{display:grid;place-items:center;min-width:100px;height:75px;color:#111;background:var(--green-light);border:3px solid #090a08;box-shadow:5px 5px 0 #000;font:2rem/1 Impact,"Arial Black",sans-serif}.empty-state{padding:45px;text-align:center;background:#1b1a15;border:1px dashed #6b624a}.empty-state strong{font-size:1.4rem;color:var(--cream)}.empty-state p{color:var(--muted)}
.vehicles-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.vehicle-card{overflow:hidden;background:#1b1a15;border:1px solid #5a543f;border-top:5px solid var(--green);box-shadow:5px 5px 0 #050505}.vehicle-art{position:relative;height:175px;background:linear-gradient(160deg,#43635a,#252d25 58%,#111 58%);overflow:hidden}.vehicle-art::before{content:"";position:absolute;left:13%;right:13%;bottom:37px;height:57px;background:#b8ad8c;border:8px solid #090a08;border-radius:50px 50px 13px 13px;box-shadow:inset 0 -15px rgba(0,0,0,.25)}.vehicle-windshield{position:absolute;left:27%;right:27%;bottom:90px;height:42px;background:#6d8790;border:7px solid #090a08;clip-path:polygon(18% 0,82% 0,100% 100%,0 100%)}.vehicle-wheel{position:absolute;bottom:22px;width:40px;height:40px;background:#0b0b0a;border:7px solid #34322b;border-radius:50%;z-index:2}.wheel-left{left:20%}.wheel-right{right:20%}.vehicle-art strong{position:absolute;right:15px;top:11px;color:rgba(255,255,255,.14);font:4rem/1 Impact,"Arial Black",sans-serif}.vehicle-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px}.vehicle-title p{margin:0 0 5px;color:var(--muted);font-size:.65rem;text-transform:uppercase}.vehicle-title h2{margin:0;color:var(--cream);font:1.5rem/1 Impact,"Arial Black",sans-serif;text-transform:uppercase}.plate{padding:7px 10px;color:#12120e;background:#e8dfc7;border:3px solid #111;box-shadow:2px 2px 0 #000;font-weight:900;white-space:nowrap}.vehicle-statuses{display:flex;gap:7px;flex-wrap:wrap;padding:0 18px 15px}.vehicle-statuses span{padding:5px 7px;background:#2b2a21;border:1px solid #554f3c;color:#d9cfb2;font-size:.62rem;text-transform:uppercase;font-weight:900}.vehicle-statuses .danger-tag{background:var(--red);color:#fff}.vehicle-meters{display:grid;gap:12px;padding:17px 18px;background:#14140f;border-top:1px solid #403b2d;border-bottom:1px solid #403b2d}.vehicle-meters label{display:grid;grid-template-columns:1fr auto;gap:6px;color:var(--muted);font-size:.7rem;text-transform:uppercase;font-weight:900}.vehicle-meters b{color:var(--cream)}.vehicle-meters i{grid-column:1/-1;height:9px;background:#070806;border:1px solid #4d4735}.vehicle-meters i span{display:block;height:100%;background:var(--green-light)}.vehicle-footer{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;color:#9c9275;font-size:.7rem}.vehicle-destroyed{filter:saturate(.55);border-top-color:var(--red)}

.clothing-balances{display:flex;gap:9px;flex-wrap:wrap}.clothing-balances span{padding:12px 15px;color:#111;background:var(--paper-dark);border:2px solid #090a08;box-shadow:3px 3px 0 #000;font-weight:900}.clothing-balances span:last-child{color:#fff0ff;background:var(--purple)}.connection-warning{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:17px;padding:14px 17px;border:1px solid #5e5845;border-left:6px solid var(--green);background:#1d2117}.connection-warning strong{text-transform:uppercase}.connection-warning span{color:var(--muted)}.connection-warning.is-online{border-left-color:var(--red);background:#2b1816}.current-skin-strip{display:flex;align-items:center;gap:16px;width:max-content;max-width:100%;margin-bottom:18px;padding:10px 18px 10px 10px;background:#1c1b15;border:1px solid #514b39}.current-skin-strip img{width:68px;height:86px;object-fit:cover;border:2px solid #090a08}.current-skin-strip div{display:grid;gap:4px}.current-skin-strip small{color:var(--muted);text-transform:uppercase}.current-skin-strip strong{color:var(--cream);font-size:1.35rem}.shop-tabs{display:flex;gap:8px;margin:0 0 18px;padding:7px;background:#11120e;border:1px solid #4f4937}.shop-tab{flex:1;padding:14px;color:#c9bea0;background:#222118;border:1px solid #4b4636;cursor:pointer;font-weight:900;text-transform:uppercase}.shop-tab.is-active{color:#111;background:var(--green-light);border-color:#090a08;box-shadow:3px 3px 0 #000}.skin-shop-panel{display:none}.skin-shop-panel.is-active{display:block}.skins-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.skin-card{overflow:hidden;background:#1b1a15;border:1px solid #58513d;border-top:5px solid var(--green);box-shadow:4px 4px 0 #050505}.skin-card-prp{border-top-color:var(--purple);background:linear-gradient(160deg,#241b2a,#171519)}.skin-card-image{position:relative;height:245px;background:#10110d}.skin-card-image img{width:100%;height:100%;object-fit:contain;display:block;background:radial-gradient(circle at 50% 35%,#4d513d,#10110d 68%)}.skin-card-image span{position:absolute;left:8px;top:8px;padding:6px 8px;color:#111;background:var(--yellow);border:2px solid #090a08;font-size:.62rem;font-weight:900;text-transform:uppercase}.skin-card-copy{display:grid;gap:5px;padding:15px}.skin-card-copy small{color:var(--muted);text-transform:uppercase}.skin-card-copy h3{min-height:42px;margin:0;color:var(--cream);font-size:1rem;text-transform:uppercase}.skin-card-copy strong{color:var(--green-light);font-size:1.25rem}.skin-card-prp .skin-card-copy strong{color:#d8a9ef}.skin-card form{padding:0 15px 15px}.skin-card .button{width:100%;padding:11px}.button-prp{color:#fff;background:var(--purple);border-color:#281a32}.button:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.7);transform:none!important}.skin-equipped{outline:2px solid var(--yellow)}
.registration-card strong{color:var(--green-light)}.stack-form label small{display:block;margin-top:6px;color:var(--muted);font-size:.7rem}.update-card{max-width:760px}

@media(max-width:1000px){.player-banner{grid-template-columns:160px 1fr}.banner-quick-actions{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.economy-grid{grid-template-columns:repeat(2,1fr)}.skins-grid{grid-template-columns:repeat(3,1fr)}.inventory-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.public-feature-grid,.jobs-grid,.vehicles-grid{grid-template-columns:1fr}.dashboard-columns{grid-template-columns:1fr}.player-banner{grid-template-columns:120px 1fr;gap:18px;padding:20px}.player-skin-panel{height:170px}.player-banner-copy h1{font-size:2.3rem}.skins-grid{grid-template-columns:repeat(2,1fr)}.connection-warning{align-items:flex-start;flex-direction:column}.clothing-heading{align-items:flex-start}.clothing-balances{width:100%}.clothing-balances span{flex:1;text-align:center}}
@media(max-width:520px){.public-feature-grid,.economy-grid,.inventory-grid,.skins-grid{grid-template-columns:1fr}.player-banner{grid-template-columns:1fr}.player-skin-panel{width:150px;height:190px}.banner-quick-actions{grid-template-columns:1fr}.shop-tabs{flex-direction:column}.vehicle-footer{flex-direction:column}.skin-card-image{height:300px}}

/* =========================================================
   PERFECTROLRP — IDENTIDAD URBANA SAN ANDREAS PARA EL INICIO
   Capa visual adicional; no modifica lógica PHP ni MySQL.
   ========================================================= */

:root{
    --sa-sunset:#d87b46;
    --sa-sunset-soft:#f0b36c;
    --sa-night:#162521;
    --sa-grove:#6f9f45;
    --sa-grove-bright:#a8cf6a;
    --sa-paper:#eadfbe;
    --sa-ink:#10110d;
}

body{
    background:
        linear-gradient(rgba(7,10,8,.88),rgba(7,9,7,.96)),
        radial-gradient(circle at 78% 5%,rgba(235,139,78,.38),transparent 28%),
        radial-gradient(circle at 20% 8%,rgba(94,137,71,.24),transparent 33%),
        repeating-linear-gradient(135deg,transparent 0 18px,rgba(255,255,255,.018) 18px 19px),
        #080a08;
}

body::after{
    content:"";
    position:fixed;
    inset:auto 0 0;
    height:180px;
    pointer-events:none;
    z-index:-1;
    opacity:.16;
    background:
        linear-gradient(180deg,transparent 0 56%,#050605 57%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='190' viewBox='0 0 1200 190'%3E%3Cg fill='%23000000'%3E%3Cpath d='M0 190V133h50v-26h38v35h51V95h45v47h35v-58h34v58h64v-29h55v29h45V72h47v70h35v-37h62v37h44V88h37v54h59v-23h47v23h53V64h45v78h51v-41h41v41h73v48z'/%3E%3Cpath d='M155 190c6-50 7-92 1-130h9c-4 43-2 87 4 130zM160 63c-33-22-51-18-63-11 27 1 39 9 56 22-28-4-48 3-57 13 29-8 43-3 61 2-22 8-32 20-37 30 20-15 34-18 50-18 9-22 2-31-10-38zM1010 190c-4-43-5-78 0-112h8c-4 37-2 74 4 112zM1014 82c-28-19-44-15-54-9 23 1 34 8 48 19-24-3-41 3-49 12 25-7 37-3 52 2-19 7-28 17-32 26 17-13 29-15 43-15 8-19 2-27-8-35z'/%3E%3C/g%3E%3C/svg%3E") center bottom/1200px 190px repeat-x;
}

.site-header{
    background:linear-gradient(180deg,rgba(12,14,11,.97),rgba(7,9,7,.95));
    border-bottom-color:var(--sa-grove);
}

.brand-mark{
    border-radius:50% 44% 48% 42%;
    background:
        radial-gradient(circle at 35% 28%,#d7ee9a 0 5%,transparent 6%),
        linear-gradient(145deg,var(--sa-grove-bright),#355b24 72%);
    font-family:"Old English Text MT","Engravers Old English",Impact,"Arial Black",sans-serif;
    font-size:1.4rem;
    text-transform:none;
    transform:rotate(-6deg);
}

.brand-title{
    font-family:"Old English Text MT","Engravers Old English",Impact,"Arial Black",sans-serif;
    font-size:1.75rem;
    text-transform:none;
    letter-spacing:.01em;
    -webkit-text-stroke:.35px #000;
    text-shadow:3px 3px 0 #000,-1px -1px 0 #000,0 0 14px rgba(168,207,106,.18);
}

.brand-subtitle{
    color:var(--sa-sunset-soft);
    letter-spacing:.3em;
}

.main-content{
    position:relative;
}

.main-content::before{
    content:"LOS SANTOS · PERFECTROL · SAN FIERRO · LAS VENTURAS";
    display:block;
    overflow:hidden;
    margin:-12px 0 23px;
    padding:8px 13px;
    color:#111;
    background:repeating-linear-gradient(-45deg,#d5b149 0 13px,#d5b149 13px 26px,#171712 26px 39px,#171712 39px 52px);
    border:2px solid #050505;
    box-shadow:4px 4px 0 #000;
    font-size:.62rem;
    font-weight:1000;
    letter-spacing:.2em;
    text-align:center;
    text-shadow:0 1px rgba(255,255,255,.22);
    white-space:nowrap;
}

.portal-hero,
.player-banner{
    isolation:isolate;
    border:3px solid #070807;
    outline:1px solid #8a7554;
    box-shadow:0 24px 70px rgba(0,0,0,.62),7px 7px 0 #020302;
}

.portal-hero{
    min-height:500px;
    padding:58px 52px;
    background:
        linear-gradient(90deg,rgba(8,10,8,.98) 0 43%,rgba(10,13,10,.76) 62%,rgba(47,31,26,.28)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1100' height='520' viewBox='0 0 1100 520'%3E%3Cdefs%3E%3ClinearGradient id='s' x2='0' y2='1'%3E%3Cstop stop-color='%236c4050'/%3E%3Cstop offset='.52' stop-color='%23d47b48'/%3E%3Cstop offset='.7' stop-color='%23e5a65e'/%3E%3Cstop offset='.71' stop-color='%233b5146'/%3E%3Cstop offset='1' stop-color='%23101714'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='1100' height='520' fill='url(%23s)'/%3E%3Ccircle cx='890' cy='130' r='64' fill='%23f6cf83' opacity='.9'/%3E%3Cg fill='%23101512'%3E%3Cpath d='M0 520V397h80v-59h57v73h76v-102h68v102h69v-62h72v62h55v-143h80v143h68v-92h90v92h78v-129h72v129h74v-67h72v67h70v109z'/%3E%3Cpath d='M812 520c-7-119-5-230 4-330h16c-7 109-2 219 9 330zM822 198c-68-49-108-38-134-22 58 2 84 21 119 49-61-10-103 5-127 26 65-17 96-6 134 8-48 15-72 41-83 63 44-32 75-37 109-36 18-49 3-67-18-88z'/%3E%3C/g%3E%3C/svg%3E") center/cover no-repeat;
}

.portal-hero::before{
    inset:auto 0 0 0;
    height:25%;
    opacity:1;
    clip-path:none;
    background:
        linear-gradient(180deg,transparent,rgba(2,3,2,.95)),
        repeating-linear-gradient(90deg,transparent 0 70px,rgba(255,255,255,.03) 70px 72px);
}

.portal-hero::after{
    content:"PerfectRol";
    right:35px;
    top:22px;
    font-family:"Old English Text MT","Engravers Old English",Impact,"Arial Black",sans-serif;
    font-size:clamp(5rem,12vw,10rem);
    text-transform:none;
    letter-spacing:-.06em;
    color:rgba(255,245,218,.105);
    -webkit-text-stroke:1px rgba(0,0,0,.15);
}

.portal-hero .hero-copy{
    max-width:630px;
    padding:26px 28px 29px;
    background:linear-gradient(135deg,rgba(8,10,8,.92),rgba(20,23,16,.78));
    border-left:7px solid var(--sa-grove-bright);
    box-shadow:8px 8px 0 rgba(0,0,0,.72);
}

.portal-hero h1{
    font-family:"Old English Text MT","Engravers Old English",Impact,"Arial Black",sans-serif;
    text-transform:none;
    font-size:clamp(3.5rem,8vw,6.4rem);
    letter-spacing:-.045em;
    line-height:.78;
    -webkit-text-stroke:1px #090a08;
    text-shadow:5px 5px 0 #050505,0 0 22px rgba(247,196,116,.13);
}

.portal-hero h1::after{
    content:"ONLINE ROLEPLAY";
    display:block;
    margin-top:22px;
    color:var(--sa-grove-bright);
    font:900 .75rem/1 "Trebuchet MS",sans-serif;
    letter-spacing:.38em;
    text-transform:uppercase;
    -webkit-text-stroke:0;
    text-shadow:2px 2px 0 #000;
}

.portal-actions .button{
    transform:skew(-3deg);
    border-width:2px;
    box-shadow:4px 4px 0 #000;
}

.portal-actions .button:hover{
    transform:skew(-3deg) translate(-2px,-2px);
}

.public-feature-grid{
    gap:18px;
}

.feature-card{
    position:relative;
    overflow:hidden;
    min-height:190px;
    padding:26px 23px 23px;
    border:2px solid #070807;
    outline:1px solid #5c513d;
    background:
        linear-gradient(145deg,rgba(37,37,28,.97),rgba(16,18,14,.98)),
        repeating-linear-gradient(45deg,transparent 0 12px,rgba(255,255,255,.03) 12px 13px);
    box-shadow:5px 5px 0 #000;
}

.feature-card::after{
    content:"PRP";
    position:absolute;
    right:-7px;
    bottom:-14px;
    color:rgba(255,255,255,.045);
    font:5.5rem/1 Impact,"Arial Black",sans-serif;
    transform:rotate(-7deg);
}

.feature-card:nth-child(2){border-top:6px solid var(--sa-sunset)}
.feature-card:nth-child(3){border-top:6px solid var(--yellow)}
.feature-card:first-child{border-top:6px solid var(--sa-grove-bright)}
.feature-card>span{
    display:grid;
    place-items:center;
    width:49px;
    height:49px;
    color:#0c0d0a;
    background:var(--sa-paper);
    border:3px solid #070807;
    border-radius:50%;
    box-shadow:3px 3px 0 #000;
    font:1.15rem/1 Impact,"Arial Black",sans-serif;
}
.feature-card h2{font-family:Impact,"Arial Black",sans-serif;letter-spacing:.04em;text-transform:uppercase}

.player-banner{
    min-height:330px;
    background:
        linear-gradient(95deg,rgba(16,19,14,.97) 0 53%,rgba(17,22,17,.62)),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1050' height='360' viewBox='0 0 1050 360'%3E%3Cdefs%3E%3ClinearGradient id='g' x2='0' y2='1'%3E%3Cstop stop-color='%235e3c4a'/%3E%3Cstop offset='.56' stop-color='%23ce7847'/%3E%3Cstop offset='.57' stop-color='%23546b55'/%3E%3Cstop offset='1' stop-color='%23101612'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='1050' height='360' fill='url(%23g)'/%3E%3Ccircle cx='875' cy='86' r='48' fill='%23f4ca7e' opacity='.88'/%3E%3Cg fill='%230b100d'%3E%3Cpath d='M0 360v-81h64v-42h52v48h73v-75h59v75h72v-41h68v41h68v-95h69v95h67v-63h65v63h79v-45h58v45h73v-82h73v82h92v75z'/%3E%3Cpath d='M804 360c-6-88-4-165 3-234h12c-6 76-2 153 7 234zM813 132c-51-36-80-28-100-16 43 2 63 16 89 37-45-7-77 4-95 20 48-13 72-5 100 6-36 11-54 30-62 47 33-24 56-28 82-27 13-37 2-50-14-67z'/%3E%3C/g%3E%3C/svg%3E") right center/cover no-repeat;
}

.player-banner::before{
    content:"CITIZEN PROFILE";
    position:absolute;
    left:0;
    top:0;
    padding:7px 13px;
    color:#10110d;
    background:var(--sa-grove-bright);
    border-right:3px solid #070807;
    border-bottom:3px solid #070807;
    font-size:.6rem;
    font-weight:1000;
    letter-spacing:.2em;
}

.player-banner::after{
    content:"PerfectRolRP";
    right:22px;
    bottom:-18px;
    color:rgba(255,255,255,.055);
    font-family:"Old English Text MT","Engravers Old English",Impact,"Arial Black",sans-serif;
    font-size:7rem;
    text-transform:none;
}

.player-skin-panel{
    transform:rotate(-1.5deg);
    border:5px solid #080908;
    outline:2px solid var(--sa-paper);
    background:
        radial-gradient(circle at 50% 33%,rgba(130,158,96,.55),transparent 38%),
        linear-gradient(160deg,#253728,#0d100d);
}

.player-skin-panel::before{
    content:"PERSONAJE";
    position:absolute;
    left:-17px;
    top:13px;
    z-index:2;
    padding:5px 9px;
    color:#111;
    background:var(--sa-sunset-soft);
    border:2px solid #080908;
    box-shadow:3px 3px 0 #000;
    font-size:.58rem;
    font-weight:1000;
    letter-spacing:.14em;
    transform:rotate(-7deg);
}

.player-banner-copy h1{
    font-family:"Old English Text MT","Engravers Old English",Impact,"Arial Black",sans-serif;
    text-transform:none;
    letter-spacing:-.025em;
    -webkit-text-stroke:.7px #050505;
    text-shadow:5px 5px 0 #000;
}

.player-tags span{
    border:2px solid #080908;
    box-shadow:2px 2px 0 #000;
    transform:skew(-3deg);
}

.banner-quick-actions{
    position:relative;
    z-index:2;
}
.banner-quick-actions a{
    background:linear-gradient(180deg,#eadfbe,#b9a77a);
    border-width:3px;
    transform:skew(-3deg);
}
.banner-quick-actions a:hover{transform:skew(-3deg) translate(-2px,-2px)}

.economy-card,
.inventory-item,
.job-card,
.character-list,
.vehicle-card,
.skin-card{
    border-width:2px;
    box-shadow:5px 5px 0 #030403;
}

.economy-card{
    min-height:145px;
    background:
        linear-gradient(145deg,rgba(31,31,24,.98),rgba(13,15,12,.98)),
        repeating-linear-gradient(45deg,transparent 0 11px,rgba(255,255,255,.025) 11px 12px);
}
.economy-card strong{
    font-size:2.25rem;
    text-shadow:2px 2px 0 #000;
}
.economy-total{background:linear-gradient(145deg,#35251d,#171511)}
.economy-prp{background:linear-gradient(145deg,#30203b,#151218)}

.section-bar{
    position:relative;
    overflow:hidden;
    padding-left:22px;
    background:linear-gradient(90deg,var(--sa-paper),#c7b37e);
    transform:skew(-1deg);
}
.section-bar::after{
    content:"PERFECTROL";
    position:absolute;
    right:12px;
    bottom:-8px;
    color:rgba(17,17,13,.08);
    font:3.2rem/1 Impact,"Arial Black",sans-serif;
}
.section-bar>*{position:relative;z-index:1;transform:skew(1deg)}

.inventory-icon,
.job-heading>span{
    border-radius:50%;
    transform:rotate(-4deg);
}

.progress-track span{
    background:repeating-linear-gradient(45deg,var(--sa-grove) 0 10px,var(--sa-grove-bright) 10px 20px);
}

@media(max-width:780px){
    .main-content::before{font-size:.5rem;letter-spacing:.1em}
    .portal-hero{min-height:470px;padding:28px 20px;background-position:62% center}
    .portal-hero .hero-copy{padding:22px 20px}
    .portal-hero h1{font-size:3.8rem}
    .player-banner{background-position:62% center}
    .brand-title{font-size:1.45rem}
}

@media(max-width:520px){
    .main-content::before{display:none}
    .portal-hero{padding:18px 12px;min-height:520px}
    .portal-hero .hero-copy{border-left-width:5px}
    .portal-hero h1{font-size:3.15rem;line-height:.84}
    .portal-actions .button{width:100%;text-align:center}
    .player-banner::after{font-size:4rem}
}

/* =============================================================
   TIENDA Y SISTEMA DE COMPRA PRP
   ============================================================= */
.nav-prp{color:#f7d4ff!important;text-shadow:0 0 12px rgba(203,91,255,.7)}
.quick-prp{background:linear-gradient(180deg,#d680ff,#7a2d9b)!important;color:#fff!important}
.economy-prp{position:relative;overflow:hidden}
.prp-buy-inline{display:inline-flex;margin-top:10px;padding:7px 12px;border:2px solid #09070b;background:linear-gradient(180deg,#e5a4ff,#7c2c9c);color:#fff;font-weight:1000;text-transform:uppercase;letter-spacing:.07em;box-shadow:3px 3px 0 #000;position:relative;z-index:3}
.prp-heading{background:linear-gradient(100deg,rgba(23,14,27,.97),rgba(70,26,83,.88)),repeating-linear-gradient(45deg,transparent 0 15px,rgba(255,255,255,.03) 15px 16px);border-left:7px solid #c864ee}
.prp-balance-box{min-width:220px;padding:20px;background:#120d15;border:3px solid #d987f7;box-shadow:6px 6px 0 #000;text-align:center;transform:rotate(1deg)}
.prp-balance-box small{display:block;text-transform:uppercase;letter-spacing:.18em;color:#d8bdde}
.prp-balance-box strong{display:block;margin-top:5px;font:2rem/1 Impact,"Arial Black",sans-serif;color:#f0b8ff;text-shadow:3px 3px 0 #000}
.prp-payment-info{display:grid;grid-template-columns:80px 1fr;gap:20px;align-items:start;margin:22px 0;padding:24px;background:linear-gradient(135deg,#25172b,#11100f);border:2px solid #775b7f;box-shadow:6px 6px 0 #000}
.prp-info-icon{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:linear-gradient(145deg,#e1a0fb,#782b94);border:4px solid #080609;color:#fff;font:2rem/1 Impact,"Arial Black",sans-serif;box-shadow:4px 4px 0 #000}
.prp-payment-info h2{margin:2px 0 8px;font-family:Impact,"Arial Black",sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#f3d4ff}
.prp-payment-info p{white-space:normal;line-height:1.65;color:#ddd0df}
.prp-package-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:20px 0 35px}
.prp-package-card{position:relative;display:flex;flex-direction:column;min-height:320px;padding:25px 20px;background:linear-gradient(155deg,#2e1c35,#121112 65%);border:3px solid #0a080a;outline:1px solid #806284;box-shadow:6px 6px 0 #000;overflow:hidden}
.prp-package-card::after{content:"PRP";position:absolute;right:-8px;bottom:-18px;font:7rem/1 Impact,"Arial Black",sans-serif;color:rgba(255,255,255,.035);transform:rotate(-8deg)}
.prp-package-card.has-bonus{border-top-color:#e1a0fb}
.prp-package-card>small{position:relative;z-index:2;color:#d9badf;text-transform:uppercase;letter-spacing:.16em;font-weight:900}
.prp-package-card>strong{position:relative;z-index:2;margin:16px 0 6px;font:3rem/1 Impact,"Arial Black",sans-serif;color:#f5d4ff;text-shadow:4px 4px 0 #000}
.prp-package-card>strong em{font-size:1rem;font-style:normal;letter-spacing:.1em}
.prp-package-card>p{position:relative;z-index:2;flex:1;color:#c9becb}
.prp-package-price{position:relative;z-index:2;margin:16px 0;font:2rem/1 Impact,"Arial Black",sans-serif;color:#f0c369}.prp-package-price span{font-size:.7rem;letter-spacing:.15em}
.prp-package-card .button{position:relative;z-index:2;width:100%;text-align:center;background:linear-gradient(180deg,#dc8cf9,#762991)}
.prp-bonus-badge{position:absolute;right:-37px;top:19px;z-index:4;width:150px;padding:7px 4px;text-align:center;background:#f2c66f;color:#16100b;border:2px solid #080808;font-size:.62rem;font-weight:1000;letter-spacing:.1em;transform:rotate(38deg);box-shadow:2px 2px 0 #000}
.prp-order-panel{scroll-margin-top:110px}.prp-form{max-width:850px;margin:0 auto 35px}.button-prp-submit{background:linear-gradient(180deg,#d98cf5,#6f2788);color:#fff;border-color:#0b080c}
.prp-order-list{display:grid;gap:13px;margin:18px 0}.prp-order-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:20px;align-items:center;padding:18px 20px;background:#151614;border:2px solid #48473f;border-left:7px solid #c589dc;box-shadow:4px 4px 0 #000}.prp-order-row>div{display:flex;flex-direction:column;gap:3px}.prp-order-row small{color:#a9a99f}.prp-order-actions{align-items:flex-end}.prp-order-actions form{margin:0}.prp-status{display:inline-flex;width:max-content;padding:4px 8px;background:#654272;border:1px solid #d3a5df;color:#fff;font-size:.65rem;font-weight:1000;text-transform:uppercase;letter-spacing:.1em}.status-aprobada{border-left-color:#65b56c}.status-aprobada .prp-status{background:#2e6836;border-color:#7fcb86}.status-rechazada{border-left-color:#c75454}.status-rechazada .prp-status{background:#7e3030;border-color:#dc7777}.status-cancelada{border-left-color:#777}.status-cancelada .prp-status{background:#464646;border-color:#888}.prp-rejection{grid-column:1/-1;margin:0;padding:8px 12px;background:#351b1b;color:#f1b9b9;border-left:3px solid #ca5555}
.prp-admin-heading{align-items:center}.prp-admin-columns{align-items:start}.stack-form{display:grid;gap:14px}.stack-form label,.prp-admin-package-card label{display:grid;gap:6px}.form-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important}.check-label input{width:auto}.prp-admin-packages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0 35px}.prp-admin-package-card{display:grid;gap:10px;padding:17px;background:#171617;border:2px solid #5b4a60;box-shadow:4px 4px 0 #000}.prp-admin-orders{display:grid;gap:18px;margin:18px 0 35px}.prp-review-card{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;padding:22px;background:linear-gradient(110deg,#24182a,#131312);border:3px solid #0a090a;outline:1px solid #87658e;box-shadow:6px 6px 0 #000}.prp-review-main{display:flex;flex-direction:column;gap:7px}.prp-review-main h3{margin:0;font:2rem/1 Impact,"Arial Black",sans-serif;letter-spacing:.04em}.prp-review-main>strong{color:#e6acf8;font-size:1.2rem}.prp-review-actions{display:grid;gap:10px;align-content:start}.reject-form{display:grid;grid-template-columns:1fr auto;gap:8px}.updater-card{max-width:760px;margin:30px auto}
@media(max-width:980px){.prp-package-grid,.prp-admin-packages{grid-template-columns:repeat(2,minmax(0,1fr))}.prp-review-card{grid-template-columns:1fr}.prp-order-row{grid-template-columns:1fr auto}.prp-order-actions{grid-column:1/-1;align-items:flex-start;flex-direction:row!important;flex-wrap:wrap}}
@media(max-width:620px){.prp-package-grid,.prp-admin-packages{grid-template-columns:1fr}.prp-payment-info{grid-template-columns:1fr}.prp-balance-box{width:100%}.prp-order-row{grid-template-columns:1fr}.form-split{grid-template-columns:1fr}.reject-form{grid-template-columns:1fr}.prp-package-card{min-height:290px}}



/* =========================================================
   AVATAR DEL FORO CON SKIN ACTUAL DE LA GAMEMODE
   ========================================================= */
.post-author{
    align-items:center;
    text-align:center;
}
.post-skin-avatar{
    position:relative;
    width:126px;
    height:164px;
    overflow:hidden;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    background:
        radial-gradient(circle at 50% 35%,rgba(168,207,106,.22),transparent 48%),
        linear-gradient(160deg,#34372a,#11120e 72%);
    border:2px solid #080907;
    outline:1px solid #6a654f;
    box-shadow:5px 5px 0 #000;
    transform:rotate(-1deg);
}
.post-skin-avatar::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:1;
    background:
        linear-gradient(180deg,transparent 58%,rgba(0,0,0,.72)),
        repeating-linear-gradient(135deg,transparent 0 12px,rgba(255,255,255,.018) 12px 13px);
}
.post-skin-avatar img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center bottom;
    display:block;
    filter:drop-shadow(7px 8px 2px rgba(0,0,0,.65));
}
.post-skin-avatar span{
    position:absolute;
    left:8px;
    right:8px;
    bottom:7px;
    z-index:2;
    padding:4px 6px;
    color:#11120e;
    background:var(--green-light);
    border:1px solid #050605;
    box-shadow:2px 2px 0 #000;
    font-size:.58rem;
    font-weight:1000;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.post-author-name{
    display:block;
    max-width:100%;
    color:var(--cream);
    font-size:.92rem;
    line-height:1.25;
    overflow-wrap:anywhere;
    text-shadow:2px 2px 0 #000;
}
.post-author-role{
    justify-content:center;
    max-width:100%;
    margin-top:-3px;
    text-align:center;
    line-height:1.25;
}

@media(max-width:850px){
    .post-author{
        display:grid;
        grid-template-columns:66px minmax(0,1fr);
        grid-template-rows:auto auto;
        column-gap:14px;
        row-gap:5px;
        align-items:center;
        text-align:left;
    }
    .post-skin-avatar{
        grid-row:1/3;
        width:64px;
        height:82px;
        transform:none;
    }
    .post-skin-avatar span{display:none}
    .post-author-name{align-self:end}
    .post-author-role{align-self:start;justify-content:flex-start;margin-top:0}
}

/* =========================================================
   TIENDA VIP / VIP+ - PERFECTROLRP WEB 1.2.0
   ========================================================= */
.nav-vip,.quick-vip{
    color:#160f02!important;
    background:linear-gradient(180deg,#ffe765,#c58a13)!important;
    border-color:#fff0a1!important;
    box-shadow:3px 3px 0 #000!important;
    font-weight:1000!important;
}
.vip-heading,.vip-admin-heading{
    background:
        radial-gradient(circle at 82% 25%,rgba(255,218,83,.24),transparent 28%),
        linear-gradient(135deg,rgba(31,22,7,.96),rgba(12,13,10,.98));
    border-color:#b58b27;
}
.vip-current-box{
    min-width:230px;padding:18px 22px;text-align:right;
    background:linear-gradient(160deg,#2b2b22,#11120e);
    border:2px solid #6f6a52;box-shadow:6px 6px 0 #000;
}
.vip-current-box small,.vip-current-box span{display:block;color:#c7c3aa}
.vip-current-box strong{display:block;font-size:2.2rem;color:#e8e4cc;text-shadow:3px 3px 0 #000}
.vip-current-box.level-1{border-color:#b8bcc6;background:linear-gradient(160deg,#4d535c,#17191c)}
.vip-current-box.level-1 strong{color:#f0f3f7}
.vip-current-box.level-2{border-color:#e2b42e;background:linear-gradient(160deg,#5f4210,#151109)}
.vip-current-box.level-2 strong{color:#ffe36a}
.vip-payment-info{border-color:#9d7821;background:linear-gradient(130deg,#201908,#10110e)}
.vip-info-icon{
    width:76px;height:76px;display:grid;place-items:center;border-radius:50%;
    color:#1a1202;background:linear-gradient(145deg,#fff2a4,#b87905);
    border:3px solid #0a0905;outline:2px solid #d6a728;box-shadow:5px 5px 0 #000;
    font-weight:1000;font-size:1.05rem;
}
.vip-package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px}
.vip-package-card{
    position:relative;overflow:hidden;min-height:410px;padding:28px;
    display:flex;flex-direction:column;gap:12px;
    background:linear-gradient(165deg,#353a42,#111318 72%);
    border:2px solid #aeb4bd;box-shadow:8px 8px 0 #000;
}
.vip-package-card::after{
    content:"";position:absolute;inset:auto -35px -60px auto;width:180px;height:180px;
    border:22px solid rgba(255,255,255,.035);transform:rotate(20deg);pointer-events:none;
}
.vip-package-card.vip-level-2{
    background:linear-gradient(165deg,#5b4213,#171106 72%);border-color:#e1b337;
}
.vip-package-card.is-disabled{filter:grayscale(.55);opacity:.7}
.vip-package-crown{
    align-self:flex-start;padding:5px 11px;color:#151006;background:#f2d15d;
    border:1px solid #000;box-shadow:2px 2px 0 #000;font-weight:1000;letter-spacing:.12em;
}
.vip-package-card>small{color:#c9c6b2;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.vip-package-card>strong{font-size:3.1rem;color:#f4f4ee;text-shadow:4px 4px 0 #000}
.vip-package-card.vip-level-2>strong{color:#ffe469}
.vip-duration{font-weight:1000;color:#b7cf82;text-transform:uppercase}
.vip-benefits{margin:2px 0 8px;padding:0;list-style:none;display:grid;gap:7px;color:#dedbc9}
.vip-benefits li::before{content:"★";margin-right:8px;color:#e4bb3d}
.vip-package-price{margin-top:auto;font-size:1.75rem;font-weight:1000;color:#fff}
.vip-package-price span{font-size:.72rem;color:#b7b39e}
.vip-submit-button{background:linear-gradient(180deg,#f6dc69,#a97209)!important;color:#171003!important}
.vip-order-panel{border-color:#9a7520}
.economy-vip{border-color:#c8a33b;background:linear-gradient(155deg,#4d3710,#17130a)}
.economy-vip strong{color:#ffe36b}
.economy-vip.level-0{border-color:#5d5d55;background:linear-gradient(155deg,#2d2e2b,#151612)}
.economy-vip.level-0 strong{color:#d8d8cf}
.economy-vip.level-1{border-color:#aab0ba;background:linear-gradient(155deg,#4c525b,#17191c)}
.economy-vip.level-1 strong{color:#f2f4f7}
.vip-buy-inline{display:inline-block;margin-top:9px;color:#ffe36b;font-weight:1000;text-transform:uppercase;font-size:.72rem}
.vip-admin-package-card textarea{width:100%;resize:vertical}
.vip-review-card{border-color:#a77d20}
.danger-text{color:#ff8379!important}
@media(max-width:850px){
    .vip-current-box{width:100%;text-align:left}.vip-package-card{min-height:0}.vip-package-grid{grid-template-columns:1fr}
}

/* =========================================================
   ADMINISTRACIÓN DE PAQUETES PRP — REDISEÑO 1.2.3
   ========================================================= */
.prp-packages-admin-section{
    margin:28px 0 42px;
}
.prp-packages-titlebar{
    align-items:center;
}
.prp-packages-titlebar>div{
    min-width:0;
}
.prp-packages-titlebar h2{
    margin:0;
}
.prp-packages-titlebar p{
    margin:4px 0 0;
    color:#686252;
    font-size:.78rem;
    font-weight:700;
}
.prp-admin-packages{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px;
    margin:22px 0 38px;
}
.prp-admin-package-card{
    position:relative;
    min-width:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    gap:18px;
    padding:0;
    background:
        radial-gradient(circle at 100% 0,rgba(165,207,104,.10),transparent 34%),
        linear-gradient(155deg,#22231d,#10110e 70%);
    border:2px solid #565b43;
    outline:1px solid rgba(232,223,199,.13);
    box-shadow:8px 8px 0 #000,0 18px 42px rgba(0,0,0,.28);
}
.prp-admin-package-card::after{
    content:"PRP";
    position:absolute;
    right:-10px;
    bottom:-22px;
    color:rgba(255,255,255,.025);
    font:900 6.8rem/1 Impact,"Arial Black",sans-serif;
    transform:rotate(-8deg);
    pointer-events:none;
}
.prp-admin-package-card.is-hidden{
    border-color:#6b4e4b;
    filter:saturate(.72);
}
.prp-admin-package-header{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:13px;
    padding:17px 18px;
    background:linear-gradient(90deg,#313525,#1b1c17);
    border-bottom:1px solid #596044;
}
.prp-admin-package-card.is-hidden .prp-admin-package-header{
    background:linear-gradient(90deg,#382624,#1c1716);
    border-bottom-color:#65403d;
}
.prp-admin-package-number{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    color:#11130e;
    background:linear-gradient(145deg,var(--green-light),#668f39);
    border:2px solid #080907;
    box-shadow:3px 3px 0 #000;
    font-family:Impact,"Arial Black",sans-serif;
    font-size:1.05rem;
}
.prp-admin-package-header small{
    display:block;
    margin-bottom:3px;
    color:#a8a38f;
    font-size:.61rem;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
}
.prp-admin-package-header h3{
    margin:0;
    overflow:hidden;
    color:var(--cream);
    font:1.45rem/1.05 Impact,"Arial Black",sans-serif;
    letter-spacing:.035em;
    text-overflow:ellipsis;
    white-space:nowrap;
    text-shadow:2px 2px 0 #000;
}
.prp-package-visibility{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 9px;
    color:#11130e;
    border:1px solid #080907;
    box-shadow:2px 2px 0 #000;
    font-size:.62rem;
    font-weight:1000;
    letter-spacing:.09em;
    text-transform:uppercase;
}
.prp-package-visibility::before{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:currentColor;
}
.prp-package-visibility.is-on{background:#a5cf68}
.prp-package-visibility.is-off{color:#f4d5cf;background:#8b3d36}
.prp-admin-package-fields{
    position:relative;
    z-index:1;
    display:grid;
    gap:14px;
    padding:0 18px;
}
.prp-admin-package-card label{
    min-width:0;
}
.prp-admin-package-card label>span:first-child{
    display:block;
    margin-bottom:6px;
    color:#d9d1ba;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.prp-admin-package-card input[type="text"],
.prp-admin-package-card input[type="number"],
.prp-admin-package-card input:not([type]){
    width:100%;
    min-width:0;
    height:43px;
    padding:9px 11px;
    color:#fff8e4;
    background:#0d0f0c;
    border:1px solid #5a6048;
    border-radius:0;
    outline:none;
    box-shadow:inset 0 0 0 1px rgba(0,0,0,.45);
    font:800 .88rem/1 "Trebuchet MS",Tahoma,Arial,sans-serif;
    transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.prp-admin-package-card input:focus{
    background:#14170f;
    border-color:var(--green-light);
    box-shadow:0 0 0 3px rgba(165,207,104,.13),inset 0 0 0 1px rgba(0,0,0,.4);
}
.prp-package-metrics{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:11px;
}
.prp-package-summary{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:0 18px;
    padding:13px 15px;
    background:rgba(8,9,7,.64);
    border:1px dashed #62684e;
}
.prp-package-summary>div{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:3px;
}
.prp-package-summary>div+div{
    padding-left:15px;
    border-left:1px solid #454a38;
}
.prp-package-summary small{
    color:#908b79;
    font-size:.62rem;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase;
}
.prp-package-summary strong{
    color:#dff4b7;
    font-size:1rem;
    overflow-wrap:anywhere;
}
.prp-admin-package-footer{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin-top:auto;
    padding:15px 18px 18px;
    background:rgba(0,0,0,.20);
    border-top:1px solid #34382b;
}
.prp-visibility-switch{
    display:flex!important;
    align-items:center;
    gap:9px;
    cursor:pointer;
}
.prp-visibility-switch>span:last-child{
    margin:0!important;
    color:#d7d0b9!important;
    font-size:.72rem!important;
    letter-spacing:0!important;
    text-transform:none!important;
}
.prp-visibility-switch input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.prp-switch-track{
    position:relative;
    width:42px;
    height:22px;
    margin:0!important;
    background:#4a332f;
    border:1px solid #090a08;
    box-shadow:2px 2px 0 #000;
    transition:.15s ease;
}
.prp-switch-track i{
    position:absolute;
    left:3px;
    top:3px;
    width:14px;
    height:14px;
    background:#d7d1bd;
    transition:.15s ease;
}
.prp-visibility-switch input:checked+.prp-switch-track{
    background:#729f42;
}
.prp-visibility-switch input:checked+.prp-switch-track i{
    left:23px;
    background:#f7ffe9;
}
.prp-package-save-button{
    min-width:170px;
    margin:0;
    padding:11px 16px;
    color:#11130e!important;
    background:linear-gradient(180deg,#b8e27c,#79a648)!important;
    border:2px solid #080907!important;
    box-shadow:4px 4px 0 #000!important;
    font-size:.72rem!important;
}
.prp-package-save-button:hover{
    transform:translate(-1px,-1px);
    box-shadow:5px 5px 0 #000!important;
}
@media(max-width:1050px){
    .prp-admin-packages{grid-template-columns:1fr}
}
@media(max-width:700px){
    .prp-admin-package-header{grid-template-columns:auto minmax(0,1fr)}
    .prp-package-visibility{grid-column:1/-1;width:max-content}
    .prp-package-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
    .prp-admin-package-footer{align-items:stretch;flex-direction:column}
    .prp-package-save-button{width:100%;min-width:0}
}
@media(max-width:430px){
    .prp-package-metrics,.prp-package-summary{grid-template-columns:1fr}
    .prp-package-summary>div+div{padding-left:0;padding-top:10px;border-left:0;border-top:1px solid #454a38}
}

/* =========================================================
   SISTEMA RESPONSIVE Y DETECCIÓN DE DISPOSITIVO — 1.2.4
   PC / TABLET / MÓVIL
   ========================================================= */
html,body{width:100%;max-width:100%;overflow-x:clip}
img,video,canvas,svg{max-width:100%;height:auto}
input,select,textarea,button{min-width:0;max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
html[data-input="touch"] .button,
html[data-input="touch"] .nav a,
html[data-input="touch"] button{min-height:44px;touch-action:manipulation}
.nav-toggle,.nav-backdrop,.nav-mobile-heading{display:none}

@media(max-width:1100px){
    .container{width:min(100% - 28px,960px)}
    .site-header{z-index:2000}
    .nav-wrap{min-height:74px;gap:16px}
    .brand{min-width:0}
    .brand-mark{width:44px;height:44px;font-size:1.05rem}
    .brand-title{font-size:1.18rem}
    .brand-subtitle{font-size:.56rem;letter-spacing:.18em}

    .js .nav-toggle{
        position:relative;z-index:2202;display:inline-flex;align-items:center;gap:9px;
        min-height:46px;padding:8px 11px;color:var(--cream);background:#171812;
        border:1px solid #5b5541;box-shadow:3px 3px 0 #000;cursor:pointer;
        font:900 .72rem/1 "Trebuchet MS",Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;
    }
    .nav-toggle-box{width:24px;height:18px;display:flex;flex-direction:column;justify-content:space-between}
    .nav-toggle-box i{display:block;width:100%;height:2px;background:var(--green-light);transition:transform .2s ease,opacity .2s ease}
    .nav-open .nav-toggle-box i:nth-child(1){transform:translateY(8px) rotate(45deg)}
    .nav-open .nav-toggle-box i:nth-child(2){opacity:0}
    .nav-open .nav-toggle-box i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

    .js .nav{
        position:fixed;z-index:2201;top:0;right:0;bottom:0;width:min(390px,88vw);
        display:flex;align-items:stretch;justify-content:flex-start;flex-direction:column;flex-wrap:nowrap;gap:6px;
        padding:88px 18px max(24px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;
        background:linear-gradient(160deg,#23231b,#0b0c09 75%);border-left:3px solid var(--green);
        box-shadow:-18px 0 55px rgba(0,0,0,.62);transform:translateX(105%);visibility:hidden;
        transition:transform .22s ease,visibility .22s step-end;
    }
    .js .nav-open .nav{transform:translateX(0);visibility:visible;transition:transform .22s ease,visibility 0s}
    .nav-mobile-heading{display:grid;gap:3px;margin:-58px 0 16px;padding:0 4px 14px;border-bottom:1px solid #514b39}
    .nav-mobile-heading span{color:var(--cream);font:1.45rem/1 Impact,"Arial Black",sans-serif;text-transform:uppercase}
    .nav-mobile-heading small{color:var(--green-light);font-size:.62rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
    .js .nav a{display:flex;align-items:center;width:100%;min-height:47px;padding:12px 14px;border:1px solid #39372b;background:#151610}
    .js .nav a:hover{transform:none;box-shadow:none}
    .js .nav .nav-vip,.js .nav .nav-prp{justify-content:center}
    .js .nav .user-chip{width:100%;margin-top:7px;padding:13px 14px;overflow-wrap:anywhere}
    .js .nav-backdrop{
        position:fixed;z-index:2200;inset:0;display:block;width:100%;height:100%;padding:0;
        border:0;background:rgba(0,0,0,.68);opacity:0;visibility:hidden;cursor:pointer;
        transition:opacity .2s ease,visibility .2s step-end;
    }
    .js .nav-open .nav-backdrop{opacity:1;visibility:visible;transition:opacity .2s ease,visibility 0s}
    .nav-open body{overflow:hidden}

    .no-js .nav-wrap{flex-wrap:wrap;padding:12px 0}
    .no-js .nav{width:100%;justify-content:flex-start}

    .main-content{padding:30px 0 65px}
    .hero{min-height:270px;padding:38px}
    .page-heading{align-items:flex-start;flex-direction:column}
    .footer-grid{align-items:flex-start}

    .player-banner{grid-template-columns:150px minmax(0,1fr);gap:22px;padding:24px}
    .banner-quick-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}
    .economy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dashboard-columns{grid-template-columns:1fr}
    .inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .vehicles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .skins-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .public-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

    .prp-package-grid,.vip-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .prp-admin-columns{grid-template-columns:1fr!important}
    .prp-admin-packages{grid-template-columns:1fr}
    .user-table-wrap{max-width:100%;overflow:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
}

@media(max-width:767px){
    :root{--shadow:0 12px 32px rgba(0,0,0,.4);--hard-shadow:3px 3px 0 rgba(0,0,0,.55)}
    .container{width:calc(100% - 22px)}
    .nav-wrap{min-height:66px}
    .brand{gap:9px}
    .brand-mark{width:39px;height:39px;outline-width:1px;box-shadow:3px 3px 0 #000}
    .brand-title{font-size:1rem;letter-spacing:.025em}
    .brand-subtitle{display:none}
    .nav-toggle-label{display:none}
    .js .nav-toggle{width:44px;padding:9px;justify-content:center}
    .js .nav{width:min(360px,92vw);padding-left:14px;padding-right:14px}

    .main-content{padding:22px 0 52px}
    .hero{display:block;min-height:0;margin-bottom:18px;padding:28px 21px;background-position:center}
    .hero::before{inset:auto 0 0 25%;height:53%;opacity:.58}
    .hero::after{right:12px;top:14px;font-size:5rem}
    .hero h1{font-size:clamp(2.35rem,15vw,4rem);overflow-wrap:anywhere}
    .hero p{line-height:1.55}
    .hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    .hero-stat{min-width:0}
    .portal-actions,.action-row{display:grid;grid-template-columns:1fr;width:100%;gap:10px}
    .portal-actions .button,.action-row>.button,.action-row>form,.action-row>form .button{width:100%}

    .page-heading{gap:14px;margin-bottom:20px;padding:20px 18px;border-left-width:5px}
    .page-heading h1{font-size:clamp(2rem,12vw,3.15rem);overflow-wrap:anywhere}
    .section-bar{align-items:flex-start;flex-direction:column;gap:5px;margin-top:20px;padding:11px 13px}
    .section-bar span{text-align:left}

    .public-feature-grid,.economy-grid,.inventory-grid,.jobs-grid,.vehicles-grid,.skins-grid,
    .prp-package-grid,.vip-package-grid,.prp-admin-packages{grid-template-columns:1fr}

    .player-banner{grid-template-columns:92px minmax(0,1fr);gap:14px;min-height:0;padding:18px;border-left-width:5px}
    .player-skin-panel{width:92px;height:130px}
    .player-banner-copy h1{font-size:clamp(1.75rem,9vw,2.55rem);overflow-wrap:anywhere}
    .player-tags{gap:5px}
    .player-tags span{font-size:.59rem}
    .banner-quick-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:8px}
    .banner-quick-actions a{min-width:0;padding:11px 8px;text-align:center;overflow-wrap:anywhere}

    .economy-card{min-height:0;padding:17px}
    .economy-card strong{font-size:1.65rem;overflow-wrap:anywhere}
    .character-list>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
    .inventory-item{min-width:0}
    .inventory-item strong,.inventory-item small{overflow-wrap:anywhere}

    .forum-card,.topic-row{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;padding:14px 13px}
    .forum-icon,.avatar{width:46px;height:46px}
    .forum-stats,.topic-meta{grid-column:1/-1;grid-template-columns:repeat(4,auto);justify-content:start;min-width:0;padding:10px 0 0;border-left:0;border-top:1px dashed #5a543e;text-align:left}
    .topic-status{width:42px;height:42px}
    .forum-card:hover,.topic-row:hover{transform:none}

    .post{display:block}
    .post-author{display:grid;grid-template-columns:62px minmax(0,1fr);grid-template-rows:auto auto;column-gap:13px;row-gap:4px;padding:14px;border-right:0;border-bottom:1px solid #514b38;text-align:left}
    .post-skin-avatar{grid-row:1/3;width:62px;height:80px;transform:none}
    .post-skin-avatar span{display:none}
    .post-author-role{justify-content:flex-start}
    .post-content{padding:18px 15px}
    .post-date{margin-bottom:14px}
    .post-body{line-height:1.62}

    .auth-card,.form-card,.reply-card{padding:21px 17px}
    .stack-form{gap:14px}
    .form-split,.reject-form,.prp-package-metrics,.prp-package-summary{grid-template-columns:1fr}
    .inline-form{align-items:stretch;flex-direction:column}
    .inline-form .button,.stack-form>.button{width:100%}

    .connection-warning,.clothing-heading{align-items:flex-start;flex-direction:column}
    .clothing-balances{display:grid;grid-template-columns:1fr 1fr;width:100%}
    .clothing-balances span{text-align:center}
    .current-skin-strip{width:100%;padding-right:10px}
    .shop-tabs{overflow-x:auto;flex-direction:row;-webkit-overflow-scrolling:touch}
    .shop-tab{min-width:150px}
    .skin-card-image{height:285px}

    .vehicle-title,.vehicle-footer{align-items:flex-start;flex-direction:column}
    .plate{white-space:normal}
    .vehicle-art{height:150px}

    .prp-payment-info{grid-template-columns:1fr}
    .prp-balance-box,.vip-current-box{width:100%;min-width:0;text-align:left}
    .prp-order-row,.prp-review-card{grid-template-columns:1fr}
    .prp-order-actions{grid-column:1;align-items:stretch!important;flex-direction:column!important}
    .prp-order-actions .button,.prp-order-actions form,.prp-order-actions form .button{width:100%}
    .prp-admin-package-header{grid-template-columns:auto minmax(0,1fr)}
    .prp-package-visibility{grid-column:1/-1}
    .prp-admin-package-footer{align-items:stretch;flex-direction:column}
    .prp-package-save-button{width:100%;min-width:0}
    .prp-package-summary>div+div{padding-left:0;padding-top:10px;border-left:0;border-top:1px solid #454a38}

    .user-table{min-width:760px}
    .user-table th,.user-table td{padding:12px 10px}
    .user-table-wrap{border-top-width:4px}

    .site-footer{padding:24px 0}
    .footer-grid{flex-direction:column}
    .footer-note{text-align:left}
    .site-footer::before{font-size:2.6rem}

    .button{white-space:normal;text-align:center}
    .alert{overflow-wrap:anywhere}
    code{overflow-wrap:anywhere;word-break:break-word}
}

@media(max-width:430px){
    .container{width:calc(100% - 16px)}
    .brand-title{font-size:.9rem}
    .hero{padding:24px 17px}
    .hero-stats{grid-template-columns:1fr}
    .player-banner{grid-template-columns:1fr;text-align:center}
    .player-skin-panel{width:120px;height:155px;margin:auto}
    .player-tags{justify-content:center}
    .banner-quick-actions{grid-template-columns:1fr}
    .clothing-balances{grid-template-columns:1fr}
    .forum-card,.topic-row{grid-template-columns:42px minmax(0,1fr)}
    .forum-icon,.avatar{width:40px;height:40px}
    .forum-stats,.topic-meta{grid-template-columns:auto auto}
    .prp-admin-package-header{grid-template-columns:1fr}
    .prp-admin-package-number{width:38px;height:38px}
    .prp-package-visibility{grid-column:auto}
}

@media(max-height:520px) and (orientation:landscape) and (max-width:1100px){
    .js .nav{padding-top:68px}
    .nav-mobile-heading{display:none}
    .js .nav a{min-height:39px;padding:8px 12px}
}

@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}


/* PerfectRolRP Web 1.3.2 - Recuperación de contraseña */
.login-recovery,
.auth-secondary-link{
    margin-top:16px;
    padding-top:14px;
    text-align:center;
    border-top:1px dashed #514b38;
}
.login-recovery a,
.auth-secondary-link a{
    color:var(--paper-dark);
    font-size:.82rem;
    font-weight:900;
    text-decoration:none;
    letter-spacing:.035em;
}
.login-recovery a:hover,
.auth-secondary-link a:hover{
    color:var(--green-light);
    text-decoration:underline;
}
.recovery-card strong{color:var(--green-light)}
.recovery-local-note{
    margin-top:14px;
    padding:12px 14px;
    color:#19170f;
    background:var(--paper-dark);
    border:2px solid #090a08;
    box-shadow:3px 3px 0 #000;
    font-size:.82rem;
}
.recovery-local-note code{font-weight:900}
@media (max-width:767px){
    .login-recovery,.auth-secondary-link{margin-top:14px;padding-top:13px}
    .login-recovery a,.auth-secondary-link a{display:block;min-height:44px;padding:12px}
}


/* PerfectRolRP Web 1.3.3 · Log de acceso */
.nav-access-log{border-color:rgba(229,186,71,.45)!important;color:#f0d477!important}
.nav-access-log:hover{background:var(--yellow)!important;color:#111!important}
.access-log-heading{align-items:center}
.access-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px}
.access-summary-grid article{position:relative;overflow:hidden;padding:20px;background:linear-gradient(145deg,#25231b,#151510);border:1px solid #554d35;border-top:4px solid var(--green);box-shadow:var(--hard-shadow)}
.access-summary-grid article::after{content:"";position:absolute;width:80px;height:80px;right:-28px;bottom:-34px;border:14px solid rgba(165,207,104,.08);transform:rotate(18deg)}
.access-summary-grid span,.access-summary-grid small{display:block;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}
.access-summary-grid strong{display:block;margin:8px 0;font:2.5rem/1 Impact,"Arial Black",sans-serif;color:var(--cream)}
.access-country-panel{margin:0 0 24px;padding:22px;background:#151510;border:1px solid #4b4431;border-left:5px solid var(--yellow);box-shadow:var(--hard-shadow)}
.access-country-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.access-country-grid article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;background:#201f19;border:1px solid #47412f}
.access-country-grid article div{min-width:0}.access-country-grid strong,.access-country-grid small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.access-country-grid small{color:var(--muted);margin-top:3px}.access-country-grid b{font:1.35rem/1 Impact,"Arial Black",sans-serif;color:var(--green-light)}
.access-flag{font-size:1.65rem;filter:drop-shadow(2px 2px 0 #000)}
.access-filter-card{display:grid;grid-template-columns:180px 220px minmax(240px,1fr) auto auto;gap:12px;align-items:end;padding:17px;margin-bottom:18px;background:#1a1914;border:1px solid #4d4735;border-top:4px solid var(--green)}
.access-filter-card label{display:grid;gap:6px}.access-filter-card label>span{color:var(--paper-dark);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.access-filter-card input,.access-filter-card select{width:100%}
.access-table{min-width:1120px}.access-table td{max-width:300px}.access-table code{color:#d9efb4;background:#0c0d09;border:1px solid #343927;padding:5px 7px;white-space:nowrap}.access-ua{display:block;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.access-status{display:inline-flex;padding:6px 8px;border:1px solid;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.access-status-login_exitoso{color:#c8efa0;border-color:#6f9b3d;background:rgba(111,155,61,.14)}.access-status-login_fallido{color:#f3aaa2;border-color:#a83b2f;background:rgba(168,59,47,.15)}.access-status-cierre_sesion{color:#e9ce80;border-color:#b18732;background:rgba(229,186,71,.11)}
.access-pagination{display:flex;justify-content:center;gap:8px;margin:22px 0}.access-pagination a{min-width:38px;height:38px;display:grid;place-items:center;color:var(--text);text-decoration:none;background:#1a1914;border:1px solid #4d4735;font-weight:900}.access-pagination a:hover,.access-pagination a.is-active{background:var(--green-light);color:#10110d;border-color:#10110d;box-shadow:3px 3px 0 #000}
.access-privacy-note{padding:13px 16px;color:var(--muted);background:rgba(229,186,71,.06);border-left:4px solid var(--yellow);font-size:.82rem}
@media(max-width:1000px){.access-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-filter-card{grid-template-columns:1fr 1fr}.access-search{grid-column:1/-1}.access-filter-card .button{width:100%}}
@media(max-width:620px){.access-summary-grid,.access-country-grid,.access-filter-card{grid-template-columns:1fr}.access-search{grid-column:auto}.access-log-heading form,.access-log-heading .button{width:100%}.access-country-panel{padding:16px}.access-summary-grid strong{font-size:2rem}}

/* PerfectRolRP Web 1.3.4 · Investigación administrativa segura */
.nav-investigation{border-color:rgba(165,207,104,.5)!important;color:#cceba6!important}
.nav-investigation:hover{background:var(--green-light)!important;color:#111!important}
.nav-admin-security{color:#d9c9ef!important}
.admin-security-heading,.investigation-heading{align-items:center}
.admin-vault-state{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;color:#f3aaa2;background:rgba(168,59,47,.14);border:1px solid #a83b2f;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}
.admin-vault-state::before{content:"";width:8px;height:8px;border-radius:50%;background:#c85649;box-shadow:0 0 0 4px rgba(200,86,73,.15)}
.admin-vault-state.is-open{color:#c8efa0;background:rgba(111,155,61,.14);border-color:#6f9b3d}
.admin-vault-state.is-open::before{background:#99cb5f;box-shadow:0 0 0 4px rgba(153,203,95,.15)}
.admin-security-card{max-width:720px;margin:0 auto}
.admin-security-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:22px}
.admin-lock-form{margin-top:22px;padding-top:18px;border-top:1px dashed #514b38}
.admin-vault-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;padding:13px 16px;color:#d9efb4;background:linear-gradient(90deg,rgba(111,155,61,.17),rgba(20,22,15,.75));border:1px solid #647c42;border-left:5px solid var(--green-light);box-shadow:var(--hard-shadow)}
.admin-vault-banner strong{text-transform:uppercase;letter-spacing:.07em}.admin-vault-banner span{color:var(--muted);font-size:.82rem}
.investigation-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.investigation-heading-actions form{margin:0}
.investigation-search-card{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:end;margin:0 0 22px;padding:18px;background:#191914;border:1px solid #4e4836;border-top:4px solid var(--green)}
.investigation-search-card label{display:grid;gap:7px}.investigation-search-card label>span{color:var(--paper-dark);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.investigation-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}
.investigation-account-card{display:grid;grid-template-columns:115px minmax(0,1fr);min-width:0;overflow:hidden;background:linear-gradient(145deg,#24231c,#151510);border:1px solid #514a37;border-top:4px solid var(--green);box-shadow:var(--hard-shadow)}
.investigation-account-skin{display:flex;align-items:flex-end;justify-content:center;min-height:235px;padding:14px 8px 0;background:radial-gradient(circle at 50% 38%,rgba(165,207,104,.17),transparent 48%),#11120e;border-right:1px solid #4f4937;overflow:hidden}
.investigation-account-skin img{display:block;max-width:100%;max-height:210px;object-fit:contain;filter:drop-shadow(5px 5px 0 rgba(0,0,0,.55))}
.investigation-account-copy{display:flex;flex-direction:column;gap:13px;min-width:0;padding:17px}
.investigation-account-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.investigation-account-title div{min-width:0}.investigation-account-title small{color:var(--muted);font-weight:800}.investigation-account-title h3{margin:3px 0 0;font-size:1.35rem;overflow-wrap:anywhere}
.investigation-account-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.investigation-account-metrics span{display:flex;justify-content:space-between;gap:8px;padding:9px;background:#10110d;border:1px solid #3f3c2e;color:var(--muted);font-size:.73rem}.investigation-account-metrics strong{color:var(--cream)}
.investigation-forum-link{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:31px;font-size:.78rem}.investigation-forum-link .role-badge{font-size:.62rem}
.investigation-reason-card{max-width:760px;margin:0 auto}.investigation-reason-target{display:flex;align-items:center;gap:18px;margin-bottom:20px;padding:15px;background:#11120e;border:1px solid #4b4534}.investigation-reason-target img{width:72px;height:92px;object-fit:contain}.investigation-reason-target small{color:var(--muted)}.investigation-reason-target h2{margin:4px 0 0}
.investigation-profile-banner{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:22px;align-items:center;margin-bottom:22px;padding:23px;background:linear-gradient(120deg,#24231b,#11120e 68%);border:1px solid #554e39;border-top:5px solid var(--green);box-shadow:var(--hard-shadow)}
.investigation-profile-skin{position:relative;height:170px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 38%,rgba(165,207,104,.2),transparent 50%),#0d0e0b;border:1px solid #484330}.investigation-profile-skin img{max-height:158px;max-width:100%;object-fit:contain}.investigation-profile-skin span{position:absolute;left:7px;bottom:7px;padding:4px 6px;background:#0b0c09cc;border:1px solid #4c4b39;font-size:.62rem;font-weight:900}
.investigation-profile-copy h1{margin:2px 0 10px;font-size:clamp(2rem,4vw,3.5rem)}.investigation-current-reason{margin:15px 0 0;padding:10px 12px;color:var(--muted);background:#11120e;border-left:4px solid var(--yellow);font-size:.82rem}.investigation-current-reason strong{color:var(--paper-dark)}
.investigation-close-form{align-self:start}.investigation-economy{margin-bottom:22px}
.investigation-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:25px}.investigation-character-list{grid-template-columns:1fr 1fr}.investigation-jobs-grid{grid-template-columns:1fr}.investigation-inventory-grid{margin-bottom:26px}
.investigation-vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:26px}.investigation-vehicle-card{padding:17px;background:#181813;border:1px solid #4b4533;border-top:4px solid var(--green);box-shadow:var(--hard-shadow)}.investigation-vehicle-card>div:first-child{margin-bottom:10px}.investigation-vehicle-card small{color:var(--muted)}.investigation-vehicle-card h3{margin:3px 0}.investigation-vehicle-card .plate{display:inline-flex;margin-bottom:13px}.investigation-vehicle-card dl{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0}.investigation-vehicle-card dl div{padding:8px;background:#10110d;border:1px solid #38362b}.investigation-vehicle-card dt{color:var(--muted);font-size:.66rem;text-transform:uppercase}.investigation-vehicle-card dd{margin:4px 0 0;font-weight:900}
.investigation-access-table{min-width:940px}.investigation-audit-table{min-width:1050px}.investigation-audit-table td{max-width:310px;overflow-wrap:anywhere}
@media(max-width:1050px){.investigation-account-grid{grid-template-columns:1fr}.investigation-two-columns{grid-template-columns:1fr}.investigation-vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-security-grid{grid-template-columns:1fr}}
@media(max-width:767px){.admin-security-heading,.investigation-heading{align-items:flex-start}.admin-vault-banner{align-items:flex-start;flex-direction:column}.investigation-heading-actions{width:100%;justify-content:stretch}.investigation-heading-actions .button,.investigation-heading-actions form,.investigation-heading-actions form .button{width:100%}.investigation-search-card{grid-template-columns:1fr}.investigation-account-card{grid-template-columns:86px minmax(0,1fr)}.investigation-account-skin{min-height:245px}.investigation-account-metrics{grid-template-columns:1fr}.investigation-profile-banner{grid-template-columns:90px minmax(0,1fr);padding:16px;gap:14px}.investigation-profile-skin{height:130px}.investigation-close-form{grid-column:1/-1;width:100%}.investigation-close-form .button{width:100%}.investigation-two-columns{gap:15px}.investigation-character-list{grid-template-columns:1fr}.investigation-vehicle-grid{grid-template-columns:1fr}}
@media(max-width:470px){.investigation-account-card{grid-template-columns:1fr}.investigation-account-skin{min-height:155px;height:155px;border-right:0;border-bottom:1px solid #4f4937}.investigation-account-skin img{max-height:150px}.investigation-profile-banner{grid-template-columns:1fr;text-align:center}.investigation-profile-skin{width:120px;margin:auto}.investigation-profile-copy .player-tags{justify-content:center}.investigation-vehicle-card dl{grid-template-columns:1fr}}

/* --------------------------------------------------------------------------
   PerfectRolRP Web 1.3.5 - Moderacion IC + foro
   -------------------------------------------------------------------------- */
.nav-moderation { color: #ffd36d !important; }
.total-ban-banner,
.game-ban-banner,
.sanction-banner {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 14px;
    margin: 0 0 20px;
    padding: 16px 18px;
    border: 1px solid rgba(255,255,255,.18);
    box-shadow: 5px 5px 0 rgba(0,0,0,.48);
    font-weight: 700;
}
.total-ban-banner {
    color: #fff4ef;
    background: linear-gradient(135deg, rgba(104,12,12,.97), rgba(44,5,5,.98));
    border-color: #ff665b;
    border-left: 8px solid #ff3f32;
}
.total-ban-banner strong { letter-spacing: .12em; color: #ffb0a8; }
.total-ban-banner small { color: #ffd0ca; text-align: right; }
.game-ban-banner { background: rgba(94,42,11,.94); border-left: 7px solid #e28f2d; color: #ffe1af; }
.sanction-banner { background: rgba(75,61,9,.94); border-left: 7px solid #d8c348; color: #fff2a9; }
.total-ban-empty { border-color: #d94a40 !important; color: #ffc4bd !important; background: rgba(93,10,10,.45) !important; }

.moderation-heading { border-left-color: #c13c32; }
.moderation-target-card {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    margin: 22px 0;
    padding: 25px 28px;
    border: 1px solid rgba(238,211,159,.28);
    border-left: 7px solid #c13c32;
    background: linear-gradient(145deg, rgba(30,30,25,.98), rgba(15,16,13,.98));
    box-shadow: 7px 7px 0 rgba(0,0,0,.4);
}
.moderation-target-card h2 { margin: 4px 0 12px; font-size: clamp(1.7rem, 3vw, 2.7rem); }
.moderation-result-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 24px;
}
.moderation-result-card {
    display: grid;
    gap: 4px;
    padding: 17px;
    color: #f1e6cc;
    text-decoration: none;
    border: 1px solid rgba(197,219,120,.28);
    background: rgba(22,23,19,.92);
    box-shadow: 4px 4px 0 rgba(0,0,0,.35);
}
.moderation-result-card:hover { border-color: #a8d35d; transform: translateY(-2px); }
.moderation-result-card span,.moderation-result-card small { color: #afa994; }
.moderation-action-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 18px;
    margin: 22px 0;
}
.moderation-action-card {
    display: flex;
    flex-direction: column;
    gap: 13px;
    min-width: 0;
    padding: 22px;
    border: 1px solid rgba(255,255,255,.14);
    background: linear-gradient(160deg, rgba(31,31,27,.98), rgba(12,13,11,.98));
    box-shadow: 6px 6px 0 rgba(0,0,0,.42);
}
.moderation-action-card h3 { margin: 0; font-size: 1.42rem; }
.moderation-action-card p { margin: 0; min-height: 60px; color: #bdb59f; }
.moderation-action-card label { display: grid; gap: 7px; }
.moderation-action-card textarea { min-height: 105px; resize: vertical; }
.moderation-action-kicker { font-size: .73rem; letter-spacing: .17em; text-transform: uppercase; font-weight: 900; }
.sanction-action { border-top: 5px solid #cfb83c; }
.sanction-action .moderation-action-kicker { color: #eadc77; }
.ban-action { border-top: 5px solid #d17436; }
.ban-action .moderation-action-kicker { color: #ffb16d; }
.total-ban-action { border-top: 5px solid #d43e34; background: linear-gradient(160deg, rgba(51,21,18,.98), rgba(16,10,9,.98)); }
.total-ban-action .moderation-action-kicker { color: #ff776d; }
.moderation-release-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 20px 0 28px; }
.compact-action-form { margin: 0; }
.compact-action-form textarea { min-height: 78px; }
.button-danger { background: linear-gradient(#cf5347,#922b23) !important; color: #fff !important; border-color: #e67b70 !important; }
.button-danger:hover { filter: brightness(1.12); }
.button:disabled { cursor: not-allowed; opacity: .45; filter: grayscale(.5); }
.danger-text { color: #ff837a; }
.moderation-history-table td { vertical-align: top; }
.moderation-profile-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.moderation-profile-actions form { margin: 0; }
.investigation-card-actions { display: flex; flex-wrap: wrap; gap: 9px; }

@media (max-width: 1050px) {
    .moderation-action-grid { grid-template-columns: 1fr 1fr; }
    .total-ban-action { grid-column: 1 / -1; }
    .moderation-result-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
    .total-ban-banner,.game-ban-banner,.sanction-banner { grid-template-columns: 1fr; }
    .total-ban-banner small { text-align: left; }
    .moderation-target-card { align-items: stretch; flex-direction: column; }
    .moderation-action-grid,.moderation-release-grid,.moderation-result-grid { grid-template-columns: 1fr; }
    .total-ban-action { grid-column: auto; }
    .moderation-action-card { padding: 18px; }
}

/* ========================================================================== 
   PerfectRolRP Web 1.3.6 — cinta legible, autoridad PRP y vehículos especiales
   ========================================================================== */
.main-content::before{
    color:#fff3c6;
    background:
        linear-gradient(rgba(9,9,7,.52),rgba(9,9,7,.52)),
        repeating-linear-gradient(-45deg,#e0bc50 0 13px,#e0bc50 13px 26px,#171712 26px 39px,#171712 39px 52px);
    border-color:#d8b54c;
    font-size:.68rem;
    letter-spacing:.22em;
    text-shadow:0 2px 0 #000,1px 0 0 #000,-1px 0 0 #000,0 -1px 0 #000;
}

.prp-authority-notice{
    display:flex;align-items:center;justify-content:space-between;gap:18px;
    margin:0 0 22px;padding:15px 18px;background:#171b12;border:1px solid #56633c;border-left:6px solid var(--green-light);box-shadow:4px 4px 0 #050505
}
.prp-authority-notice strong{color:var(--green-light);text-transform:uppercase;letter-spacing:.12em}
.prp-authority-notice span{color:var(--muted);font-size:.83rem;text-align:right}
.prp-approver-panel{margin-bottom:28px}
.prp-approver-columns{align-items:stretch}
.prp-approver-list{display:grid;gap:9px;margin-top:14px}
.prp-approver-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 13px;background:#11120e;border:1px solid #4c4939}
.prp-approver-row div{display:grid;gap:3px}.prp-approver-row strong{color:var(--cream)}.prp-approver-row small{color:var(--muted)}

.garage-heading-meta{display:grid;justify-items:end;gap:7px}.garage-heading-meta small{color:var(--yellow);font-weight:900;text-transform:uppercase}
.garage-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 22px;padding:8px;background:#0d0e0b;border:1px solid #4d4938;box-shadow:4px 4px 0 #000}
.garage-tab{display:flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:13px 16px;color:#cfc5a9;background:#202019;border:1px solid #57513e;font-weight:1000;text-transform:uppercase;letter-spacing:.06em}
.garage-tab span{display:grid;place-items:center;width:31px;height:31px;color:#111;background:var(--paper-dark);border:2px solid #080907}
.garage-tab:hover,.garage-tab.is-active{color:#10110d;background:var(--green-light);border-color:#080907;box-shadow:3px 3px 0 #000;transform:translate(-1px,-1px)}
.garage-tab.is-active span{background:#111;color:var(--green-light)}
.garage-tab-sale.is-active{background:var(--purple);color:#fff}.garage-tab-sale.is-active span{color:#fff;background:#1b1020}

.vehicle-shop-notice{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;padding:16px 18px;background:#182012;border:1px solid #64734a;border-left:7px solid var(--green-light);box-shadow:4px 4px 0 #000}
.vehicle-shop-notice div{display:grid;gap:4px}.vehicle-shop-notice strong{color:var(--green-light);font-size:1.05rem;text-transform:uppercase}.vehicle-shop-notice p{margin:0;color:var(--muted)}.vehicle-shop-notice>span{padding:8px 11px;color:#111;background:var(--green-light);font-weight:1000;text-transform:uppercase;white-space:nowrap}
.vehicle-shop-notice.is-online{background:#2a1714;border-color:#8b4236;border-left-color:var(--red)}.vehicle-shop-notice.is-online strong{color:#ff9383}.vehicle-shop-notice.is-online>span{color:#fff;background:var(--red)}

.special-vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:28px}
.special-vehicle-card{display:grid;grid-template-rows:190px 1fr auto;overflow:hidden;background:#171713;border:1px solid #5b533d;border-top:6px solid var(--purple);box-shadow:5px 5px 0 #040504}
.special-vehicle-art{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 25%,#494a3a,#12130f 70%)}
.special-vehicle-art::before{content:"";position:absolute;width:62%;height:35%;bottom:34px;left:19%;background:#282a22;border:4px solid #090a08;border-radius:50% 50% 20% 20%;box-shadow:inset 0 13px #4b4e3e}
.special-vehicle-art .wheel-left{left:22%;bottom:20px}.special-vehicle-art .wheel-right{right:22%;bottom:20px}
.special-vehicle-art b{position:relative;z-index:2;color:rgba(255,255,255,.12);font:1000 4.8rem/1 Impact,"Arial Black",sans-serif;letter-spacing:.04em}
.special-vehicle-art em{position:absolute;left:9px;top:9px;padding:6px 8px;color:#fff;background:var(--purple);border:2px solid #090a08;font-size:.62rem;font-style:normal;font-weight:1000;letter-spacing:.1em}
.special-vehicle-copy{display:grid;align-content:start;gap:8px;padding:16px}.special-vehicle-copy>small{color:var(--yellow);font-weight:900;text-transform:uppercase}.special-vehicle-copy h2{margin:0;color:var(--cream);font-size:1.35rem;text-transform:uppercase}.special-vehicle-copy p{min-height:44px;margin:0;color:var(--muted)}
.special-vehicle-features{display:flex;flex-wrap:wrap;gap:6px}.special-vehicle-features span{padding:5px 7px;color:#d6ccb0;background:#25241c;border:1px solid #4e4937;font-size:.7rem;font-weight:900;text-transform:uppercase}
.special-plate-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:5px;padding:9px 10px;background:#0e0f0c;border-left:4px solid var(--yellow)}.special-plate-preview small{color:var(--muted);text-transform:uppercase}.special-plate-preview strong,.plate-special{color:#111!important;background:#f1e5b2!important;border:2px solid #222!important;box-shadow:inset 0 0 0 2px #bba85d;font-family:monospace;letter-spacing:.08em}
.special-vehicle-buy{display:grid;gap:9px;padding:14px 16px 16px;background:#10110e;border-top:1px solid #494432}.special-vehicle-buy>strong{color:#d9a4ef;font-size:1.55rem}.special-vehicle-buy>strong small{font-size:.75rem}.special-vehicle-buy form,.special-vehicle-buy .button{width:100%}.shop-block-reason{color:#e8a194;text-align:center;text-transform:uppercase;font-weight:900}
.vehicle-card-prp{border-top-color:var(--purple)}.vehicle-art em{position:absolute;right:8px;top:8px;padding:5px 7px;color:#fff;background:var(--purple);font-size:.62rem;font-style:normal;font-weight:1000}
.vehicle-order-list{display:grid;gap:9px}.vehicle-order-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;background:#171713;border:1px solid #4e4938;border-left:5px solid var(--purple)}.vehicle-order-list article>div{display:grid;gap:3px}.vehicle-order-list span{color:var(--green-light);font-size:.68rem;font-weight:1000;text-transform:uppercase}.vehicle-order-list strong{color:var(--cream)}.vehicle-order-list small{color:var(--muted)}.vehicle-order-list article>div:last-child{text-align:right}

@media (max-width:1050px){.special-vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){
    .main-content::before{font-size:.55rem;letter-spacing:.1em;padding-inline:7px}
    .prp-authority-notice,.vehicle-shop-notice,.prp-approver-row,.vehicle-order-list article{align-items:stretch;flex-direction:column}.prp-authority-notice span{text-align:left}.vehicle-shop-notice>span{white-space:normal;text-align:center}
    .garage-tabs{grid-template-columns:1fr}.garage-heading-meta{justify-items:start}.special-vehicle-grid{grid-template-columns:1fr}.vehicle-order-list article>div:last-child{text-align:left}
}


/* ==========================================================================
   PerfectRolRP Web 1.3.7 - Configurador de colores especiales
   ========================================================================== */
.special-vehicle-buy .button[aria-disabled="true"]{
    pointer-events:none;
    opacity:.42;
    filter:grayscale(.65);
}
.vehicle-config-heading{
    align-items:center;
}
.vehicle-customizer-layout{
    display:grid;
    grid-template-columns:minmax(300px,.82fr) minmax(0,1.45fr);
    gap:24px;
    align-items:start;
}
.vehicle-customizer-preview{
    position:sticky;
    top:88px;
    display:grid;
    gap:16px;
    padding:18px;
    background:#151610;
    border:1px solid #5b543f;
    border-top:6px solid var(--purple);
    box-shadow:6px 6px 0 #040504;
}
.custom-vehicle-stage{
    --vehicle-primary:#111318;
    --vehicle-secondary:#e7e1cf;
    position:relative;
    min-height:350px;
    overflow:hidden;
    display:grid;
    place-items:center;
    background:
        linear-gradient(180deg,rgba(145,86,52,.2),transparent 45%),
        radial-gradient(circle at 50% 20%,#5a4c3d 0,#25241c 36%,#0e0f0c 77%);
    border:1px solid #514b38;
    isolation:isolate;
}
.custom-vehicle-stage::before{
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:34%;
    background:
        linear-gradient(165deg,transparent 0 46%,rgba(255,255,255,.08) 47% 49%,transparent 50%),
        #171916;
    z-index:-2;
}
.custom-road-line{
    position:absolute;
    left:8%;
    right:8%;
    bottom:12%;
    height:5px;
    background:repeating-linear-gradient(90deg,var(--yellow) 0 45px,transparent 45px 76px);
    opacity:.75;
}
.custom-car-shadow{
    position:absolute;
    width:73%;
    height:34px;
    bottom:20%;
    border-radius:50%;
    background:rgba(0,0,0,.75);
    filter:blur(7px);
}
.custom-car-body{
    position:relative;
    width:min(82%,430px);
    height:135px;
    margin-top:38px;
    background:
        linear-gradient(180deg,rgba(255,255,255,.22),transparent 28%),
        var(--vehicle-primary);
    border:5px solid #090a08;
    border-radius:52% 52% 18% 18% / 36% 36% 25% 25%;
    box-shadow:
        inset 0 -20px rgba(0,0,0,.22),
        0 9px 0 rgba(0,0,0,.28);
}
.custom-car-roof{
    position:absolute;
    width:56%;
    height:75px;
    left:22%;
    top:-61px;
    background:var(--vehicle-primary);
    border:5px solid #090a08;
    border-bottom:0;
    clip-path:polygon(18% 100%,31% 0,75% 0,91% 100%);
}
.custom-car-window{
    position:absolute;
    width:45%;
    height:45px;
    left:28%;
    top:-48px;
    background:linear-gradient(135deg,#9bb4ba,#26323a 62%);
    border:4px solid #090a08;
    clip-path:polygon(17% 100%,29% 0,76% 0,91% 100%);
}
.custom-car-stripe{
    position:absolute;
    left:3%;
    right:3%;
    bottom:28px;
    height:24px;
    background:var(--vehicle-secondary);
    border-top:3px solid rgba(0,0,0,.55);
    border-bottom:3px solid rgba(0,0,0,.55);
}
.custom-car-wheel{
    position:absolute;
    width:56px;
    height:56px;
    bottom:-31px;
    border-radius:50%;
    background:radial-gradient(circle,#aaa 0 16%,#20211e 17% 50%,#060706 51%);
    border:5px solid #090a08;
}
.custom-wheel-left{left:13%}
.custom-wheel-right{right:13%}
.custom-vehicle-stage>strong{
    position:absolute;
    right:17px;
    bottom:14px;
    color:rgba(255,255,255,.13);
    font:1000 4.2rem/1 Impact,"Arial Black",sans-serif;
}
.custom-vehicle-stage>em{
    position:absolute;
    left:12px;
    top:12px;
    padding:7px 9px;
    color:#fff;
    background:var(--purple);
    border:2px solid #090a08;
    font-size:.65rem;
    font-style:normal;
    font-weight:1000;
    letter-spacing:.12em;
}
.vehicle-customizer-summary{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
}
.vehicle-customizer-summary>div{
    display:grid;
    gap:4px;
    padding:11px;
    background:#0f100d;
    border:1px solid #403c2f;
}
.vehicle-customizer-summary small,
.vehicle-purchase-confirmation small{
    color:var(--muted);
    font-size:.65rem;
    font-weight:900;
    text-transform:uppercase;
}
.vehicle-customizer-summary strong{
    color:var(--cream);
}
.chosen-colors{
    display:grid;
    gap:8px;
}
.chosen-colors span{
    display:flex;
    align-items:center;
    gap:9px;
    padding:9px 11px;
    background:#202019;
    border:1px solid #494432;
    color:#cfc4a6;
}
.chosen-colors i{
    width:26px;
    height:26px;
    flex:0 0 26px;
    border:2px solid #050605;
    box-shadow:0 0 0 1px #766f58;
}
.chosen-colors b{color:var(--cream)}
.color-preview-note{
    margin:0;
    color:#928a74;
    font-size:.76rem;
    line-height:1.45;
}
.vehicle-color-form{
    display:grid;
    gap:20px;
}
.color-picker-section{
    padding:17px;
    background:#171713;
    border:1px solid #514b39;
    border-top:5px solid var(--green);
    box-shadow:5px 5px 0 #040504;
}
.special-color-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.special-color-option{
    position:relative;
    min-width:0;
    cursor:pointer;
}
.special-color-option input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.special-color-swatch{
    position:relative;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:9px;
    align-items:center;
    min-height:66px;
    padding:9px;
    color:#ddd2b6;
    background:#10110e;
    border:1px solid #484332;
    box-shadow:2px 2px 0 #050605;
    transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease;
}
.special-color-swatch i{
    grid-row:1/3;
    width:34px;
    height:42px;
    background:
        linear-gradient(145deg,rgba(255,255,255,.32),transparent 35%),
        var(--swatch);
    border:2px solid #050605;
    box-shadow:inset 0 -9px rgba(0,0,0,.16);
}
.special-color-swatch b{
    min-width:0;
    overflow:hidden;
    color:var(--cream);
    font-size:.72rem;
    text-overflow:ellipsis;
    text-transform:uppercase;
    white-space:nowrap;
}
.special-color-swatch small{
    color:#8e8772;
    font-size:.61rem;
    font-weight:900;
}
.special-color-option:hover .special-color-swatch{
    transform:translateY(-2px);
    border-color:#8d8261;
}
.special-color-option input:focus-visible + .special-color-swatch{
    outline:3px solid #c4ed7a;
    outline-offset:2px;
}
.special-color-option input:checked + .special-color-swatch{
    border-color:var(--green-light);
    box-shadow:0 0 0 2px #0b0c09,0 0 0 4px var(--green-light),4px 4px 0 #050605;
    transform:translateY(-2px);
}
.special-color-option input:checked + .special-color-swatch::after{
    content:"✓";
    position:absolute;
    right:6px;
    top:5px;
    display:grid;
    place-items:center;
    width:19px;
    height:19px;
    color:#10120d;
    background:var(--green-light);
    border:1px solid #050605;
    font-weight:1000;
}
.vehicle-purchase-confirmation{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:17px;
    background:#19140d;
    border:1px solid #806a37;
    border-left:7px solid var(--yellow);
    box-shadow:5px 5px 0 #040504;
}
.vehicle-purchase-confirmation>div{
    display:grid;
    gap:4px;
}
.vehicle-purchase-confirmation strong{
    color:var(--cream);
    font-size:1.05rem;
}
.vehicle-purchase-confirmation p{
    margin:0;
    color:var(--muted);
}
.vehicle-purchase-confirmation .shop-block-reason{
    grid-column:1/-1;
}
@media(max-width:1120px){
    .vehicle-customizer-layout{grid-template-columns:1fr}
    .vehicle-customizer-preview{position:static}
    .special-color-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:780px){
    .vehicle-config-heading{align-items:flex-start}
    .vehicle-config-heading .button{width:100%}
    .special-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .vehicle-purchase-confirmation{grid-template-columns:1fr}
    .vehicle-purchase-confirmation .button{width:100%}
}
@media(max-width:460px){
    .custom-vehicle-stage{min-height:285px}
    .custom-car-body{height:108px}
    .custom-car-roof{height:62px;top:-50px}
    .custom-car-window{height:36px;top:-39px}
    .custom-car-wheel{width:48px;height:48px;bottom:-28px}
    .vehicle-customizer-summary{grid-template-columns:1fr}
    .special-color-grid{grid-template-columns:1fr}
}

/* PerfectRolRP Web 1.3.7.1 - UNBAN administrativo */
.button-unban {
    background: linear-gradient(180deg, #7ccf62 0%, #4f9f43 100%);
    border: 1px solid #a9e68e;
    color: #0c150b;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
    box-shadow: 0 3px 0 #1c4218;
}
.button-unban:hover,
.button-unban:focus-visible {
    filter: brightness(1.1);
    transform: translateY(-1px);
}
.button-small {
    min-height: 34px;
    padding: 7px 12px;
    font-size: .78rem;
}
.inline-unban-form {
    display: inline-flex;
    margin: 0;
}
.unban-action-form {
    border-top: 4px solid #73c857;
}


/* PerfectRolRP Web 1.3.9 - aeronaves del catálogo PRP */
.special-vehicle-art-air::before{width:50%;height:25%;bottom:42px;left:25%;border-radius:55% 45% 35% 35%;background:#32362e;box-shadow:inset 0 10px #59604e;transform:rotate(-3deg)}
.special-vehicle-art-air .aircraft-wing{position:absolute;z-index:1;width:78%;height:14px;bottom:61px;left:11%;background:#484d41;border:3px solid #090a08;border-radius:60% 15%;transform:rotate(-4deg);box-shadow:inset 0 4px rgba(255,255,255,.13)}
.special-vehicle-art-air .aircraft-tail{position:absolute;z-index:1;width:18%;height:38px;bottom:54px;right:22%;background:#3d4238;border:3px solid #090a08;clip-path:polygon(0 100%,100% 100%,70% 0,30% 18%)}
.special-vehicle-card-air .special-plate-preview strong{background:#e8e5d3;color:#172236;border-color:#315a87}
.custom-aircraft-stage{background:linear-gradient(#5788a7 0 55%,#65745e 55% 68%,#24251f 68%)}
.custom-aircraft-stage .custom-road-line{display:none}
.custom-aircraft-body{position:absolute;left:18%;right:18%;bottom:29%;height:30%;z-index:3;filter:drop-shadow(0 14px 8px rgba(0,0,0,.45))}
.custom-aircraft-body::before{content:"";position:absolute;left:23%;right:17%;top:31%;height:34%;background:var(--vehicle-primary);border:5px solid #0a0b09;border-radius:55% 45% 38% 45%;box-shadow:inset 0 -12px rgba(0,0,0,.23)}
.custom-aircraft-wing{position:absolute;left:3%;right:3%;top:45%;height:18%;z-index:1;background:var(--vehicle-primary);border:5px solid #0a0b09;border-radius:70% 20%;transform:rotate(-3deg)}
.custom-aircraft-cabin{position:absolute;z-index:4;left:35%;top:24%;width:27%;height:26%;background:#263743;border:4px solid #0a0b09;border-radius:60% 40% 20% 20%}
.custom-aircraft-stripe{position:absolute;z-index:5;left:26%;right:19%;top:53%;height:9%;background:var(--vehicle-secondary);border-top:2px solid rgba(0,0,0,.45);border-bottom:2px solid rgba(0,0,0,.45)}
.custom-aircraft-tail{position:absolute;z-index:2;right:9%;top:6%;width:22%;height:48%;background:var(--vehicle-secondary);border:5px solid #0a0b09;clip-path:polygon(0 100%,100% 100%,72% 0,34% 22%)}

/* =========================================================
   PUBLICACIÓN ORIGINAL DESTACADA - PERFECTROLRP WEB 1.3.9.1
   ========================================================= */
.post-original{
    position:relative;
    isolation:isolate;
    border:2px solid #8fbd54;
    border-left:8px solid var(--green-light);
    background:
        linear-gradient(105deg,rgba(104,145,59,.13),transparent 34%),
        #1c1c16;
    box-shadow:7px 7px 0 #050505,0 0 0 1px rgba(205,232,157,.12) inset;
}
.post-original .post-author{
    background:
        linear-gradient(160deg,rgba(134,178,78,.28),transparent 48%),
        linear-gradient(160deg,#333726,#171711 76%);
    border-right:2px solid #789f4a;
}
.post-original .post-author::after{
    width:74px;
    height:74px;
    opacity:.25;
}
.post-original .post-skin-avatar{
    outline-color:#a7d66e;
    box-shadow:5px 5px 0 #000,0 0 18px rgba(154,205,92,.16);
}
.original-post-banner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:-3px 0 17px;
    padding:12px 15px;
    color:#13150e;
    background:
        repeating-linear-gradient(135deg,rgba(255,255,255,.12) 0 12px,transparent 12px 24px),
        linear-gradient(90deg,#a8d968,#d5b54d);
    border:2px solid #070806;
    outline:1px solid #8e7e45;
    box-shadow:4px 4px 0 #000;
    text-transform:uppercase;
}
.original-post-banner strong{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:.82rem;
    letter-spacing:.12em;
}
.original-post-banner strong span{
    font-size:1rem;
}
.original-post-banner small{
    color:#35351f;
    font-size:.58rem;
    font-weight:1000;
    letter-spacing:.15em;
}
.post-original .post-date{
    color:#bcd98d;
    border-bottom-color:#6c7d4b;
}
.topic-author-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    max-width:100%;
    margin-top:1px;
    padding:5px 9px;
    color:#17150d;
    background:#d4b64f;
    border:1px solid #080806;
    box-shadow:2px 2px 0 #000;
    font-size:.56rem;
    font-weight:1000;
    line-height:1.15;
    letter-spacing:.09em;
    text-align:center;
    text-transform:uppercase;
}
.post-by-topic-author:not(.post-original){
    border-left:4px solid #9a8542;
}
.post-by-topic-author:not(.post-original) .post-date::after{
    content:" · Autor del tema";
    color:#cbb664;
}

@media(max-width:850px){
    .post-original .post-author{
        border-right:0;
        border-bottom:2px solid #789f4a;
    }
    .post-original::before{
        padding:5px 8px;
        font-size:.5rem;
    }
    .topic-author-badge{
        grid-column:2;
        justify-self:start;
        margin-top:3px;
    }
}
@media(max-width:620px){
    .post-original{
        border-left-width:5px;
    }
    .original-post-banner{
        align-items:flex-start;
        flex-direction:column;
        gap:4px;
        margin-top:8px;
        padding:10px 12px;
    }
    .original-post-banner strong{
        font-size:.72rem;
    }
    .original-post-banner small{
        font-size:.52rem;
    }
}


/* =========================================================
   PUBLICACIÓN ORIGINAL UNIDA AL TÍTULO - WEB 1.3.9.2
   ========================================================= */
.original-title-badge{
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:max-content;
    padding:8px 12px 7px;
    color:#11140d;
    background:
        repeating-linear-gradient(135deg,rgba(255,255,255,.13) 0 10px,transparent 10px 20px),
        linear-gradient(90deg,var(--green-light),#d5b54d);
    border:2px solid #070806;
    outline:1px solid #8e7e45;
    box-shadow:3px 3px 0 #000;
    font-size:.62rem;
    font-weight:1000;
    line-height:1;
    letter-spacing:.12em;
    text-transform:uppercase;
    white-space:nowrap;
}
.original-title-badge span{font-size:.85rem}
.topic-heading-title{row-gap:10px}
.post-original .post-content{padding-top:25px}

@media(max-width:620px){
    .original-title-badge{
        padding:7px 9px 6px;
        font-size:.54rem;
        letter-spacing:.09em;
        white-space:normal;
    }
}


/* PerfectRolRP Web 1.3.10 · catálogo de skins por sexo */
.skin-sex-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 17px;padding:13px 16px;background:linear-gradient(90deg,#1b2114,#171813);border:1px solid #5d6942;border-left:6px solid var(--green)}
.skin-sex-filter span{color:var(--muted);font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.skin-sex-filter strong{padding:7px 13px;color:#111;background:var(--green-light);border:2px solid #090a08;box-shadow:3px 3px 0 #000;text-transform:uppercase}
.skin-sex-filter small{margin-left:auto;color:#bcb294}.skin-sex-filter code{color:var(--cream)}
.skin-sex-warning{border-left-color:var(--red)!important;background:#2b1816!important}
@media(max-width:780px){.skin-sex-filter{align-items:flex-start;flex-direction:column}.skin-sex-filter small{margin-left:0}}


/* PerfectRolRP Web 1.3.11 - registro de personaje */
.character-registration-fields{align-items:start}
.character-setup-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.button-small{padding:8px 13px!important;font-size:.72rem!important}
@media (max-width:680px){.character-registration-fields{grid-template-columns:1fr}.character-setup-alert .button{width:100%;text-align:center}}


/* =========================================================
   REFERIDOS · PERFECTROLRP WEB 1.4.0
   ========================================================= */
.nav-referrals,.nav-referral-admin{position:relative}.nav-referrals::before{content:"★";margin-right:5px;color:#d5b54d}.nav-referral-admin::before{content:"⚑";margin-right:5px;color:#e28b59}
.referral-register-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:14px 0 18px;padding:14px 16px;background:linear-gradient(115deg,#26301d,#181a14);border:1px solid #77924d;border-left:6px solid var(--green-light);box-shadow:4px 4px 0 #080806}.referral-register-banner strong,.referral-register-banner small{display:block}.referral-register-banner small{margin-top:4px;color:var(--muted)}.referral-register-banner a{color:#d8c477;font-weight:900}.referral-register-icon{display:grid;place-items:center;width:42px;height:42px;background:#d5b54d;color:#16140d;border:2px solid #080806;box-shadow:3px 3px 0 #000;font-size:1.2rem}
.referral-hero,.admin-referral-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:22px;padding:28px;background:linear-gradient(115deg,rgba(92,132,53,.3),transparent 45%),#171912;border:1px solid #667547;border-left:8px solid var(--green-light);box-shadow:8px 8px 0 #050505}.referral-hero h1,.admin-referral-hero h1{margin:.2rem 0 .5rem}.referral-hero p,.admin-referral-hero p{max-width:780px}.referral-totem-counter{display:grid;place-items:center;min-width:170px;padding:18px;background:linear-gradient(#d8bc59,#9f7c2e);color:#15130b;border:3px solid #070806;box-shadow:6px 6px 0 #000;text-align:center}.referral-totem-counter span{font-size:1.7rem}.referral-totem-counter strong{font-size:2.5rem;line-height:1}.referral-totem-counter small{font-weight:1000;text-transform:uppercase;letter-spacing:.08em}
.referral-link-panel{margin-bottom:20px}.referral-code-chip{padding:8px 12px;background:#0d0e0b;border:1px solid #7a8758;color:#d9c675;font-family:monospace;font-weight:900;letter-spacing:.12em}.referral-copy-row{display:grid;grid-template-columns:1fr auto;gap:12px}.referral-copy-row input{min-width:0;font-family:monospace}
.referral-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 22px}.referral-stat-grid article{padding:17px;background:#1b1c16;border:1px solid #50563d;border-bottom:4px solid #7da14d;box-shadow:4px 4px 0 #070707}.referral-stat-grid span,.referral-stat-grid strong{display:block}.referral-stat-grid span{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.referral-stat-grid strong{margin-top:5px;color:var(--cream);font-size:1.8rem}
.referral-list,.admin-referral-list{display:grid;gap:16px}.referral-card{padding:18px;background:#191a15;border:1px solid #4d513b;border-left:6px solid #788d50;box-shadow:5px 5px 0 #070707}.referral-card-head,.admin-referral-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.referral-card-head strong,.referral-card-head small{display:block}.referral-card-head strong{font-size:1.05rem}.referral-card-head small{margin-top:4px;color:var(--muted)}.referral-status-badge{display:inline-flex;padding:6px 9px;background:#323522;border:1px solid #6f754b;color:#d7d1b4;font-size:.62rem;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.referral-status-review{border-left-color:#d9a03c}.referral-status-danger{border-left-color:#bd4f43}.referral-status-success{border-left-color:#71c75c}.referral-status-pending{border-left-color:#7bbfce}.referral-level-row{display:flex;justify-content:space-between;gap:10px;margin:15px 0 7px;color:#d8d1b6;font-weight:900}.referral-progress{height:18px;padding:3px;background:#090a08;border:1px solid #4d513b;box-shadow:inset 0 2px 3px #000}.referral-progress span{display:block;height:100%;background:linear-gradient(90deg,#739e42,#c7d86d);box-shadow:0 0 9px rgba(160,205,91,.25);transition:width .4s ease}.referral-note{margin:12px 0 0;padding:10px 12px;border-left:4px solid #6c754c;background:#12130f}.referral-note.warning{border-left-color:#d69c39;color:#e1c078}.referral-note.success{border-left-color:#72c25e;color:#a8d99a}.referral-note.danger{border-left-color:#bd4f43;color:#df8a80}
.admin-referral-alert{padding:10px 13px;background:#5f7f3a;color:#0c1108;border:2px solid #080a06;box-shadow:4px 4px 0 #000;font-size:.7rem;font-weight:1000;text-transform:uppercase}.referral-admin-filters{display:grid;grid-template-columns:2fr 1fr auto;align-items:end;gap:14px}.admin-referral-card{padding:20px;border-left:7px solid #788d50}.admin-referral-card-head h2{margin:8px 0 4px}.admin-referral-card-head h2 small{color:var(--muted);font-size:.65em;font-weight:500}.risk-score{display:grid;place-items:center;min-width:78px;padding:10px;border:2px solid #080806;box-shadow:4px 4px 0 #000;color:#111}.risk-score strong{font-size:1.6rem;line-height:1}.risk-score span{font-size:.58rem;font-weight:1000;text-transform:uppercase}.risk-low{background:#7ec15e}.risk-medium{background:#d6b64e}.risk-high{background:#d2624e}.admin-referral-meta{display:flex;flex-wrap:wrap;gap:10px;margin:13px 0}.admin-referral-meta span{padding:7px 9px;background:#10110e;border:1px solid #454837;color:#bdb79f}.admin-referral-meta code{color:#d8c474}.risk-flag-list{display:grid;gap:8px;margin:13px 0}.risk-flag{display:grid;grid-template-columns:minmax(150px,.6fr) 1fr auto;gap:10px;align-items:center;padding:10px 12px;background:#2a1916;border-left:4px solid #c45a46}.risk-flag strong{font-size:.7rem;letter-spacing:.06em}.risk-flag span{color:#d7b2aa}.risk-flag small{color:#d9a38e}.risk-flag.is-resolved{opacity:.55;background:#171914;border-left-color:#66804b}.admin-referral-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.admin-referral-actions form{display:grid;gap:8px}.admin-referral-actions input{width:100%}
@media(max-width:900px){.referral-stat-grid{grid-template-columns:repeat(2,1fr)}.referral-hero,.admin-referral-hero{align-items:flex-start;flex-direction:column}.referral-totem-counter{width:100%}.admin-referral-actions{grid-template-columns:1fr}.risk-flag{grid-template-columns:1fr}.referral-admin-filters{grid-template-columns:1fr}}
@media(max-width:580px){.referral-stat-grid{grid-template-columns:1fr 1fr}.referral-copy-row{grid-template-columns:1fr}.referral-copy-row .button{width:100%}.referral-card-head,.admin-referral-card-head{flex-direction:column}.referral-register-banner{grid-template-columns:auto 1fr}.referral-register-banner a{grid-column:1/-1}.admin-referral-meta{flex-direction:column}.admin-referral-meta span{width:100%}}

/* =========================================================
   PRENDAS DE TEMPORADA · PERFECTROLRP WEB 1.4.2
   ========================================================= */
.nav-garments,.nav-garment-admin{position:relative}.nav-garments::before{content:"◆";margin-right:5px;color:#c892d7}.nav-garment-admin::before{content:"✦";margin-right:5px;color:#d8b452}
.garments-heading,.admin-garment-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:20px;padding:28px;background:linear-gradient(120deg,rgba(105,61,126,.42),transparent 48%),#171419;border:1px solid #684b72;border-left:8px solid #b679c9;box-shadow:8px 8px 0 #050505}.garments-heading h1,.admin-garment-hero h1{margin:.2rem 0 .55rem}.garment-balance{display:grid;min-width:210px;padding:17px 19px;background:linear-gradient(145deg,#d0a2dc,#7f4c91);color:#160e19;border:3px solid #080608;box-shadow:6px 6px 0 #000;text-align:center}.garment-balance small,.garment-balance span{font-size:.65rem;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.garment-balance strong{font-size:1.65rem;line-height:1.25}
.garment-info-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 21px}.garment-info-strip>div{padding:14px 15px;background:#1b181d;border:1px solid #57465d;border-left:5px solid #a66db7;box-shadow:4px 4px 0 #070607}.garment-info-strip strong,.garment-info-strip span{display:block}.garment-info-strip strong{color:#ead4ef;text-transform:uppercase}.garment-info-strip span{margin-top:4px;color:var(--muted);font-size:.76rem;line-height:1.45}
.garments-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.garment-card{display:flex;flex-direction:column;overflow:hidden;background:#1a171c;border:1px solid #57475b;border-top:6px solid #a16ab3;box-shadow:5px 5px 0 #050505}.garment-preview{position:relative;display:grid;place-items:center;height:210px;background:radial-gradient(circle at 50% 35%,#4a3650,#100e11 72%)}.garment-preview img{width:100%;height:100%;object-fit:cover}.garment-model{display:grid;gap:5px;text-align:center}.garment-model span{color:#b6a5ba;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.garment-model strong{color:#ead7ee;font-size:2.35rem}.garment-rarity{position:absolute;top:9px;left:9px;padding:6px 8px;background:#18131a;border:1px solid #b586c1;box-shadow:3px 3px 0 #000;color:#ead9ee;font-size:.61rem;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.rarity-comun{border-top-color:#88917b}.rarity-rara{border-top-color:#5ca4c9}.rarity-epica{border-top-color:#aa6ad0}.rarity-legendaria{border-top-color:#d7ad45}.rarity-temporada{border-top-color:#d46f84}.garment-copy{display:grid;gap:7px;flex:1;padding:16px}.garment-copy small{color:#a89aac;text-transform:uppercase}.garment-copy h3{margin:0;color:#f0e3f2;font-size:1.08rem;text-transform:uppercase}.garment-copy p{margin:0;color:#c2b5c5;line-height:1.5}.garment-price{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:auto;padding-top:8px}.garment-price strong{color:#d9a9e4;font-size:1.25rem}.garment-price span{padding:4px 7px;background:#29212c;border:1px solid #58475c;color:#bfb0c2;font-size:.62rem;text-transform:uppercase}.garment-card form,.garment-card>.button{margin:0 16px 16px}.garment-card form .button{width:100%}.button-buy{background:#945baa;border-color:#322039;color:#fff}.button-buy:hover{background:#ad6cc4}
.garment-owned-list,.garment-delivery-list,.admin-garment-list,.admin-garment-deliveries{display:grid;gap:11px}.garment-owned-list article,.garment-delivery-list article,.admin-garment-list article,.admin-garment-deliveries article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;background:#19171b;border:1px solid #514554;border-left:5px solid #8d609a}.garment-owned-list article>div{display:flex;align-items:center;gap:12px}.garment-owned-list strong,.garment-owned-list small,.garment-delivery-list strong,.garment-delivery-list small,.admin-garment-deliveries strong,.admin-garment-deliveries small{display:block}.garment-owned-list small,.garment-delivery-list small,.admin-garment-deliveries small{margin-top:3px;color:var(--muted)}.garment-owned-icon{display:grid;place-items:center;min-width:52px;height:52px;background:#2c2330;border:2px solid #0a080a;color:#d9b4e1;font-weight:1000}.garment-state{padding:6px 9px;background:#28222a;border:1px solid #5c4c60;color:#bfb1c2;font-size:.62rem;font-weight:1000;text-transform:uppercase}.garment-state.is-equipped{background:#6f9650;color:#10130d;border-color:#0b0d08}.garment-footnote{margin:14px 0 0;color:var(--muted)}.garment-delivery-list article{display:grid;grid-template-columns:1fr auto;align-items:center}.garment-delivery-list article p{grid-column:1/-1;margin:0;color:#c8a4a4}.delivery-pendiente{border-left-color:#d7ae4c!important}.delivery-procesando{border-left-color:#62a9c1!important}.delivery-entregada{border-left-color:#72ba5d!important}.delivery-rechazada{border-left-color:#c45d52!important}
.admin-garment-hero{border-left-color:#d2ad50;background:linear-gradient(120deg,rgba(154,113,42,.32),transparent 48%),#191711}.admin-garment-editor{margin-bottom:22px}.garment-admin-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.garment-admin-form label{display:grid;gap:6px;color:#c9bdcb;font-size:.68rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.garment-admin-form input,.garment-admin-form textarea,.garment-admin-form select{width:100%}.garment-admin-form .field-wide{grid-column:1/-1}.garment-transform{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:15px;border:1px solid #5b4c5f;background:#141216}.garment-transform legend{padding:0 8px;color:#d2b1da;font-weight:1000;text-transform:uppercase}.garment-active{display:flex!important;align-items:center;grid-template-columns:auto 1fr!important}.garment-active input{width:auto}.admin-garment-list article.is-inactive{opacity:.62;border-left-color:#666}.garment-code{display:inline-flex;padding:5px 7px;background:#0e0d0f;border:1px solid #544657;color:#d5b3dd;font-family:monospace;font-size:.65rem}.admin-garment-list h3{margin:7px 0 3px}.admin-garment-list p{margin:0;color:#c1b3c4}.admin-garment-list small{color:var(--muted)}.admin-garment-buttons{display:flex;align-items:center;gap:8px}.admin-garment-buttons form{margin:0}.admin-garment-deliveries article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(210px,.45fr)}.admin-garment-deliveries article>span{padding:6px 9px;background:#272229;border:1px solid #594a5c;font-size:.62rem;font-weight:1000;text-transform:uppercase}.admin-garment-deliveries form{display:grid;grid-template-columns:1fr auto;gap:7px}.admin-garment-deliveries p{margin:6px 0 0;color:#d3aaaa}
@media(max-width:1050px){.garments-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.garment-admin-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-garment-deliveries article{grid-template-columns:1fr auto}.admin-garment-deliveries form{grid-column:1/-1}}
@media(max-width:720px){.garments-heading,.admin-garment-hero{align-items:flex-start;flex-direction:column;padding:21px 18px}.garment-balance{width:100%}.garment-info-strip,.garments-grid{grid-template-columns:1fr}.garment-admin-form,.garment-transform{grid-template-columns:1fr}.garment-admin-form .field-wide{grid-column:auto}.garment-transform.field-wide{grid-column:auto}.garment-owned-list article,.admin-garment-list article{align-items:flex-start;flex-direction:column}.admin-garment-buttons{width:100%;flex-wrap:wrap}.admin-garment-buttons .button{flex:1}.garment-delivery-list article,.admin-garment-deliveries article{grid-template-columns:1fr}.admin-garment-deliveries form{grid-column:auto;grid-template-columns:1fr}.connection-warning{align-items:flex-start;flex-direction:column}}


/* ============================================================
   PerfectRolRP Web 1.4.3 - Rediseño visual completo
   ============================================================ */
:root {
    --prrp-bg: #0a0e0c;
    --prrp-surface: rgba(17, 24, 20, 0.92);
    --prrp-surface-2: rgba(22, 30, 25, 0.95);
    --prrp-border: rgba(174, 199, 87, 0.18);
    --prrp-text: #ecf3df;
    --prrp-muted: #9cad8c;
    --prrp-accent: #a6d94a;
    --prrp-accent-2: #d4ff6d;
    --prrp-gold: #e1c16f;
    --prrp-danger: #ff6363;
    --prrp-shadow: 0 22px 48px rgba(0, 0, 0, 0.35);
    --prrp-radius: 24px;
}
body {
    background:
        radial-gradient(circle at top left, rgba(136, 198, 39, 0.18), transparent 32%),
        radial-gradient(circle at top right, rgba(250, 214, 64, 0.08), transparent 28%),
        linear-gradient(180deg, #111612 0%, #0a0e0c 45%, #090b09 100%);
    color: var(--prrp-text);
}
body::before {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px);
    background-size: 28px 28px;
    opacity: .28;
    mask-image: linear-gradient(to bottom, rgba(0,0,0,.65), transparent);
}
.container { width: min(1180px, calc(100% - 32px)); }
.top-strip {
    position: sticky;
    top: 0;
    z-index: 60;
    backdrop-filter: blur(12px);
    background: linear-gradient(90deg, rgba(13, 18, 15, 0.94), rgba(27, 33, 25, 0.88));
    border-bottom: 1px solid rgba(214, 200, 96, 0.16);
}
.top-strip-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 10px 0;
}
.top-strip-copy {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--prrp-muted);
    font-size: .92rem;
}
.top-strip-copy strong { color: var(--prrp-gold); letter-spacing: .05em; text-transform: uppercase; }
.top-strip-badges { display: flex; flex-wrap: wrap; gap: 8px; }
.top-strip-badges span {
    padding: 6px 12px;
    border-radius: 999px;
    font-size: .74rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    border: 1px solid rgba(166, 217, 74, 0.18);
    background: rgba(166, 217, 74, 0.08);
    color: #dbeaa8;
}
.site-header {
    position: sticky;
    top: 41px;
    z-index: 55;
    background: rgba(10, 14, 12, 0.88);
    backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}
.nav-wrap { gap: 18px; min-height: 84px; }
.brand {
    padding: 12px 16px;
    border-radius: 22px;
    background: linear-gradient(145deg, rgba(24, 31, 26, 0.98), rgba(18, 24, 20, 0.9));
    border: 1px solid rgba(166, 217, 74, 0.16);
    box-shadow: var(--prrp-shadow);
}
.brand-mark {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    background: linear-gradient(135deg, #b9ff5d, #6ba822);
    color: #11140f;
    font-weight: 900;
    letter-spacing: .08em;
    box-shadow: 0 10px 24px rgba(125, 179, 35, 0.35);
}
.brand-title { font-size: 1.18rem; letter-spacing: .02em; }
.brand-subtitle { color: var(--prrp-muted); }
.nav {
    gap: 10px;
    align-items: center;
}
.nav a, .nav .user-chip {
    border-radius: 999px;
    padding: 11px 15px;
    border: 1px solid transparent;
    background: rgba(255,255,255,0.02);
    transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}
.nav a:hover, .nav a:focus-visible {
    transform: translateY(-1px);
    background: rgba(166, 217, 74, 0.1);
    border-color: rgba(166, 217, 74, 0.2);
    color: #effbcf;
}
.nav .button-link, .portal-actions .button, .button {
    border-radius: 16px;
    box-shadow: 0 10px 24px rgba(70, 100, 23, 0.24);
}
.user-chip {
    color: var(--prrp-gold);
    border-color: rgba(225, 193, 111, 0.18);
    background: rgba(225, 193, 111, 0.08);
}
.main-content { padding-top: 34px; padding-bottom: 56px; }
.alert, .total-ban-banner, .game-ban-banner, .sanction-banner, .empty-state,
.section-bar, .page-heading, .reply-card, .character-card, .hero, .forum-card,
.topic-row, .post, .shortcut-card, .economy-card, .inventory-item, .job-card,
.feature-card, .player-banner, .site-footer, .topic-heading, .topic-list,
.table-card, .admin-card, .panel-card {
    box-shadow: var(--prrp-shadow);
}
.hero, .page-heading, .reply-card, .forum-card, .topic-row, .post,
.economy-card, .inventory-item, .job-card, .character-card,
.feature-card, .player-banner, .section-bar, .empty-state {
    border: 1px solid var(--prrp-border);
    background: linear-gradient(180deg, rgba(21, 28, 24, 0.96), rgba(13, 18, 15, 0.96));
    border-radius: var(--prrp-radius);
}
.hero {
    padding: 36px;
    position: relative;
    overflow: hidden;
}
.hero::after, .player-banner::after {
    content: '';
    position: absolute;
    inset: auto -40px -60px auto;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(166, 217, 74, 0.22), transparent 65%);
    pointer-events: none;
}
.portal-hero, .premium-banner {
    background:
        linear-gradient(140deg, rgba(33, 40, 34, 0.96), rgba(12, 17, 14, 0.96)),
        linear-gradient(90deg, rgba(212, 255, 109, 0.05), transparent 55%);
}
.portal-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(260px, .8fr);
    gap: 26px;
    align-items: stretch;
}
.hero h1, .page-heading h1, .topic-heading h1 {
    font-size: clamp(2.2rem, 4vw, 3.6rem);
    line-height: 1;
    margin-bottom: 14px;
}
.eyebrow {
    color: var(--prrp-gold);
    letter-spacing: .16em;
    text-transform: uppercase;
    font-size: .78rem;
    font-weight: 700;
}
.hero-copy p:not(.eyebrow) { color: #d7e6d0; max-width: 62ch; }
.hero-highlights, .portal-actions, .player-tags, .banner-quick-actions, .footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.hero-highlights span, .player-tags span {
    padding: 9px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    color: #e9f6cd;
}
.hero-side-panel {
    display: grid;
    gap: 16px;
    align-content: stretch;
}
.hero-side-card, .hero-side-metrics > div {
    padding: 22px;
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,0.08);
    background: linear-gradient(180deg, rgba(30, 38, 33, 0.9), rgba(14, 18, 15, 0.92));
}
.hero-side-card strong { display: block; font-size: 1.6rem; margin: 6px 0 10px; }
.hero-side-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.hero-side-metrics strong { display: block; font-size: 1.45rem; color: var(--prrp-accent-2); }
.public-feature-grid, .shortcut-grid, .jobs-grid, .economy-grid { gap: 18px; }
.public-feature-grid { margin-top: 24px; }
.feature-card {
    padding: 24px;
    position: relative;
    overflow: hidden;
}
.feature-card span:first-child {
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(212, 255, 109, 0.9), rgba(131, 189, 33, 0.9));
    color: #11140f;
    font-weight: 900;
}
.player-banner {
    padding: 28px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(260px, .9fr);
    gap: 24px;
    align-items: center;
    position: relative;
    overflow: hidden;
}
.player-skin-panel {
    background: linear-gradient(180deg, rgba(25, 31, 27, 0.95), rgba(15, 19, 16, 0.92));
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 24px;
    padding: 16px;
}
.player-skin-panel img {
    width: 132px;
    height: 164px;
    object-fit: contain;
    filter: drop-shadow(0 12px 26px rgba(0,0,0,0.5));
}
.banner-description { color: var(--prrp-muted); max-width: 55ch; }
.banner-quick-actions a, .prp-buy-inline, .vip-buy-inline, .totem-inline {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    color: #f4fbde;
    border-radius: 14px;
    padding: 12px 14px;
    text-decoration: none;
}
.banner-quick-actions a:hover, .prp-buy-inline:hover, .vip-buy-inline:hover, .totem-inline:hover {
    background: rgba(166, 217, 74, 0.11);
    border-color: rgba(166, 217, 74, 0.22);
}
.section-bar {
    padding: 18px 22px;
    margin-bottom: 16px;
    backdrop-filter: blur(10px);
}
.section-bar h2 { font-size: 1.2rem; }
.economy-grid { margin-top: 24px; }
.economy-card {
    padding: 24px;
    min-height: 160px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.economy-card span:first-child { color: var(--prrp-muted); text-transform: uppercase; letter-spacing: .1em; font-size: .75rem; }
.economy-card strong { font-size: clamp(1.55rem, 3vw, 2.2rem); line-height: 1.1; }
.economy-prp strong, .economy-totem strong { color: var(--prrp-accent-2); }
.economy-vip strong { color: var(--prrp-gold); }
.dashboard-shortcuts { margin-top: 28px; }
.shortcut-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.shortcut-card {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 16px;
    padding: 24px;
    text-decoration: none;
    color: inherit;
}
.shortcut-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    font-size: 1.45rem;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(212, 255, 109, 0.14), rgba(212, 255, 109, 0.03));
    border: 1px solid rgba(212, 255, 109, 0.18);
}
.shortcut-card h3 { margin-bottom: 8px; }
.shortcut-card p { color: var(--prrp-muted); margin: 0; }
.shortcut-card:hover {
    transform: translateY(-2px);
    border-color: rgba(166, 217, 74, 0.24);
    background: linear-gradient(180deg, rgba(24, 32, 27, 0.98), rgba(16, 21, 18, 0.95));
}
.dashboard-columns {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(280px, .9fr);
    gap: 24px;
    margin-top: 24px;
}
.inventory-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
}
.inventory-item {
    padding: 18px;
    display: grid;
    grid-template-columns: 54px 1fr;
    gap: 14px;
    align-items: center;
}
.inventory-icon, .forum-icon, .topic-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(212, 255, 109, 0.12), rgba(212, 255, 109, 0.04));
    border: 1px solid rgba(212, 255, 109, 0.16);
}
.inventory-icon { width: 54px; height: 54px; font-size: .83rem; color: var(--prrp-gold); font-weight: 800; }
.character-card { padding: 22px; }
.character-list div {
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
.character-list div:last-child { border-bottom: 0; }
.jobs-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); margin-top: 16px; }
.job-card { padding: 22px; }
.progress-track {
    height: 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.07);
    overflow: hidden;
}
.progress-track span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #83b926, #d4ff6d);
    box-shadow: 0 0 18px rgba(166, 217, 74, 0.35);
}
.forum-list, .topic-list, .posts { display: grid; gap: 18px; }
.forum-card, .topic-row {
    padding: 22px;
    display: grid;
    gap: 18px;
    align-items: center;
    text-decoration: none;
    color: inherit;
}
.forum-card {
    grid-template-columns: 82px minmax(0,1fr) auto;
}
.forum-icon {
    width: 82px;
    height: 82px;
    font-size: 1.05rem;
    color: var(--prrp-gold);
    font-weight: 900;
}
.forum-card:hover, .topic-row:hover { transform: translateY(-2px); }
.forum-title-row, .topic-title-line, .topic-heading-title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.forum-info p, .topic-main p, .post-date, .post-body, .page-heading p { color: #c6d4c0; }
.forum-stats {
    display: grid;
    gap: 6px;
    min-width: 110px;
    justify-items: end;
    color: var(--prrp-muted);
}
.forum-stats strong { color: var(--prrp-accent-2); font-size: 1.1rem; }
.topic-row { grid-template-columns: 74px minmax(0,1fr) auto; }
.topic-status { width: 74px; height: 74px; font-size: 1.5rem; }
.topic-meta {
    min-width: 100px;
    padding: 12px 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.04);
    text-align: center;
}
.topic-meta strong { display: block; color: var(--prrp-accent-2); font-size: 1.4rem; }
.post {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    padding: 24px;
}
.post-original {
    border-color: rgba(166, 217, 74, 0.28);
    background: linear-gradient(180deg, rgba(24, 34, 27, 0.98), rgba(15, 21, 17, 0.96));
}
.post-author {
    padding: 18px;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(26, 33, 29, 0.95), rgba(17, 22, 19, 0.9));
    border: 1px solid rgba(255,255,255,0.06);
}
.post-skin-avatar {
    padding: 14px;
    background: rgba(255,255,255,0.03);
    border-radius: 18px;
    text-align: center;
}
.post-skin-avatar img { width: 100%; max-width: 120px; height: 140px; object-fit: contain; }
.topic-author-badge, .original-title-badge, .pin-badge, .lock-badge, .badge-private {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-radius: 999px;
    font-size: .76rem;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.original-title-badge, .topic-author-badge, .pin-badge {
    background: rgba(166, 217, 74, 0.12);
    color: #eefbc8;
    border: 1px solid rgba(166, 217, 74, 0.25);
}
.lock-badge { background: rgba(255, 99, 99, 0.12); color: #ffd1d1; border: 1px solid rgba(255,99,99,0.25); }
.badge-private { background: rgba(225,193,111,0.12); color: #f4e0a5; border: 1px solid rgba(225,193,111,0.2); }
.action-row { display: flex; flex-wrap: wrap; gap: 12px; }
.stack-form, form label { display: grid; gap: 8px; }
input, select, textarea {
    width: 100%;
    border-radius: 16px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    color: var(--prrp-text);
    padding: 13px 14px;
}
input:focus, select:focus, textarea:focus {
    outline: none;
    border-color: rgba(166, 217, 74, 0.38);
    box-shadow: 0 0 0 4px rgba(166, 217, 74, 0.1);
}
.button, button {
    background: linear-gradient(135deg, #9fd73d, #6a9b21);
    color: #10140f;
    font-weight: 800;
    border: 0;
}
.button-secondary {
    background: linear-gradient(135deg, rgba(255,255,255,0.12), rgba(255,255,255,0.05));
    color: var(--prrp-text);
    border: 1px solid rgba(255,255,255,0.08);
}
.button-ghost {
    background: transparent;
    color: var(--prrp-text);
    border: 1px dashed rgba(255,255,255,0.16);
}
.button-danger, .text-danger {
    background: linear-gradient(135deg, #ff7c7c, #c63c3c);
    color: #fff;
}
.table, table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
    border-radius: 20px;
    background: rgba(15, 20, 17, 0.96);
}
th, td {
    padding: 14px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
thead th {
    background: rgba(166, 217, 74, 0.08);
    color: #edf9d0;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .74rem;
}
.site-footer {
    margin-top: 42px;
    background: linear-gradient(180deg, rgba(14, 18, 15, 0.98), rgba(9, 11, 9, 1));
    border-top: 1px solid rgba(166, 217, 74, 0.12);
    border-radius: 32px 32px 0 0;
    padding: 28px 0 34px;
}
.footer-grid {
    display: grid;
    grid-template-columns: 1.2fr .9fr .9fr;
    gap: 26px;
}
.footer-brand { color: var(--prrp-gold); font-size: 1.35rem; font-weight: 900; margin-bottom: 12px; }
.footer-links { list-style: none; padding: 0; margin: 0; flex-direction: column; gap: 10px; }
.footer-links a { color: #dce7c1; text-decoration: none; }
.footer-links a:hover { color: #f4ffc7; }
.footer-note { color: var(--prrp-muted); line-height: 1.7; }
@media (max-width: 1120px) {
    .portal-hero, .player-banner, .dashboard-columns, .footer-grid { grid-template-columns: 1fr; }
    .forum-card, .topic-row, .post { grid-template-columns: 1fr; }
    .forum-stats { justify-items: start; }
    .topic-meta { max-width: 140px; }
}
@media (max-width: 768px) {
    .site-header { top: 47px; }
    .container { width: min(100% - 20px, 1180px); }
    .hero, .player-banner, .forum-card, .topic-row, .post, .economy-card, .feature-card, .shortcut-card { padding: 20px; }
    .hero h1, .page-heading h1, .topic-heading h1 { font-size: clamp(1.8rem, 8vw, 2.6rem); }
    .hero-side-metrics { grid-template-columns: 1fr; }
    .top-strip-inner, .top-strip-copy { align-items: flex-start; }
    .top-strip-inner { flex-direction: column; }
    .brand { width: 100%; }
    .nav-wrap { min-height: 74px; }
    .post-author { order: -1; }
}


/* ============================================================
   PerfectRolRP Web 1.4.3.1 - Sidebar responsive refinado
   ============================================================ */
:root {
    --sidebar-width: 318px;
    --sidebar-collapsed-width: 0px;
    --sidebar-top-offset: 42px;
}
.site-header.sidebar-shell {
    position: fixed;
    top: var(--sidebar-top-offset);
    left: 0;
    bottom: 0;
    width: var(--sidebar-width);
    z-index: 70;
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 22px 18px 22px;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(10, 15, 12, 0.97), rgba(11, 16, 13, 0.95));
    border-right: 1px solid rgba(166, 217, 74, 0.14);
    backdrop-filter: blur(20px);
}
.sidebar-branding {
    display: grid;
    gap: 14px;
    padding-bottom: 8px;
}
.sidebar-branding .brand {
    width: 100%;
    min-width: 0;
}
.sidebar-tagline {
    margin: 0;
    padding: 0 6px;
    color: var(--prrp-muted);
    line-height: 1.55;
    font-size: .92rem;
}
.sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 18px;
    overflow: auto;
    padding-right: 4px;
    flex: 1;
}
.sidebar-nav::-webkit-scrollbar { width: 8px; }
.sidebar-nav::-webkit-scrollbar-thumb { background: rgba(166, 217, 74, 0.18); border-radius: 999px; }
.nav-group {
    display: grid;
    gap: 10px;
    padding: 16px;
    border-radius: 24px;
    border: 1px solid rgba(255,255,255,0.05);
    background: linear-gradient(180deg, rgba(21, 28, 24, 0.85), rgba(14, 18, 15, 0.85));
}
.nav-group-title {
    color: var(--prrp-gold);
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: .72rem;
    font-weight: 800;
    padding: 0 4px;
}
.sidebar-nav a, .sidebar-nav .user-chip {
    display: flex;
    align-items: center;
    min-height: 46px;
    width: 100%;
    border-radius: 16px;
    padding: 12px 14px;
    text-decoration: none;
    text-align: left;
}
.sidebar-nav .button-link {
    justify-content: center;
}
.sidebar-nav a:hover, .sidebar-nav a:focus-visible {
    background: rgba(166, 217, 74, 0.10);
    border-color: rgba(166, 217, 74, 0.18);
}
.user-chip-sidebar {
    justify-content: center;
    text-align: center;
    line-height: 1.4;
    min-height: 54px;
}
.sidebar-logout {
    justify-content: center;
    background: rgba(255, 255, 255, 0.03);
}
.sidebar-launcher {
    position: fixed;
    top: 54px;
    left: 16px;
    z-index: 90;
    display: none;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid rgba(166, 217, 74, 0.18);
    background: rgba(11, 15, 12, 0.94);
    color: #eff8d4;
    backdrop-filter: blur(14px);
    box-shadow: var(--prrp-shadow);
}
.sidebar-launcher .nav-toggle-box { display: inline-flex; flex-direction: column; gap: 4px; }
.sidebar-launcher .nav-toggle-box i { width: 16px; height: 2px; background: currentColor; border-radius: 999px; display: block; }
.sidebar-launcher .nav-toggle-label { font-weight: 700; letter-spacing: .04em; }
.main-content {
    width: min(1180px, calc(100% - 32px));
    margin-left: calc(var(--sidebar-width) + 22px);
    max-width: calc(100vw - var(--sidebar-width) - 44px);
    padding-top: 34px;
}
.site-footer {
    margin-left: calc(var(--sidebar-width) + 22px);
    width: calc(100% - var(--sidebar-width) - 22px);
}
.top-strip {
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 80;
}
.nav-backdrop {
    display: none;
}
.nav-mobile-heading { display: none; }
@media (max-width: 1280px) {
    :root { --sidebar-width: 292px; }
    .main-content { max-width: calc(100vw - var(--sidebar-width) - 32px); }
}
@media (max-width: 1180px) {
    .sidebar-launcher { display: inline-flex; }
    .site-header.sidebar-shell {
        transform: translateX(calc(-1 * var(--sidebar-width) - 28px));
        transition: transform .24s ease;
        width: min(var(--sidebar-width), calc(100vw - 28px));
        box-shadow: 0 22px 48px rgba(0,0,0,.45);
    }
    html.nav-open .site-header.sidebar-shell {
        transform: translateX(0);
    }
    .nav-backdrop {
        display: block;
        position: fixed;
        inset: 0;
        border: 0;
        background: rgba(5, 7, 6, 0.58);
        opacity: 0;
        pointer-events: none;
        transition: opacity .2s ease;
        z-index: 65;
    }
    html.nav-open .nav-backdrop {
        opacity: 1;
        pointer-events: auto;
    }
    .nav-mobile-heading {
        display: grid;
        gap: 4px;
        padding: 0 4px 4px;
    }
    .nav-mobile-heading span {
        color: #f4ffca;
        font-weight: 800;
        letter-spacing: .06em;
        text-transform: uppercase;
    }
    .nav-mobile-heading small { color: var(--prrp-muted); }
    .main-content,
    .site-footer {
        margin-left: 0;
        width: auto;
        max-width: none;
    }
    .main-content {
        width: min(100% - 24px, 1180px);
        padding-top: 68px;
    }
    .site-footer {
        margin-top: 42px;
    }
}
@media (max-width: 900px) {
    .top-strip-badges { display: none; }
    .top-strip-copy { font-size: .82rem; }
    .sidebar-launcher { top: 56px; left: 12px; }
}
@media (max-width: 767px) {
    .top-strip {
        position: sticky;
    }
    .top-strip-inner { padding: 9px 0; }
    .top-strip-copy span { display: none; }
    .site-header.sidebar-shell {
        top: 0;
        width: calc(100vw - 18px);
        height: 100vh;
        height: 100dvh;
        padding-top: 72px;
    }
    .sidebar-launcher {
        top: 12px;
        left: 12px;
    }
    .main-content {
        width: calc(100% - 18px);
        padding-top: 28px;
    }
    .sidebar-tagline { font-size: .88rem; }
    .nav-group { padding: 14px; }
}


/* ============================================================
   PerfectRolRP Web 1.4.3.2 - Sidebar compacta y corregida
   ============================================================ */
:root {
    --sidebar-width: 248px;
    --sidebar-top: 42px;
}
.site-header.sidebar-shell {
    top: var(--sidebar-top) !important;
    width: var(--sidebar-width) !important;
    padding: 14px !important;
    gap: 12px !important;
    overflow: hidden !important;
    background: linear-gradient(180deg, rgba(10, 15, 12, .985), rgba(8, 12, 10, .97)) !important;
}
.sidebar-head {
    display: flex;
    align-items: center;
    gap: 10px;
}
.sidebar-brand {
    min-width: 0;
    width: 100%;
    padding: 10px 11px !important;
    border-radius: 18px !important;
    box-shadow: none !important;
}
.sidebar-brand .brand-mark {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    font-size: .84rem;
    flex: 0 0 auto;
}
.sidebar-brand .brand-title { font-size: 1rem; }
.sidebar-brand .brand-subtitle { font-size: .72rem; }
.sidebar-close {
    display: none;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 12px;
    padding: 0;
    background: rgba(255,255,255,.05);
    color: #eef6dc;
    border: 1px solid rgba(255,255,255,.08);
    font-size: 1.5rem;
    line-height: 1;
}
.sidebar-nav {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 13px !important;
    min-height: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 2px 3px 8px 0 !important;
}
.sidebar-section {
    display: grid;
    gap: 6px;
    padding: 10px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.045);
    background: rgba(255,255,255,.018);
}
.sidebar-section-title {
    padding: 0 7px 5px;
    color: #c9a94e;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.sidebar-nav a {
    width: 100% !important;
    min-height: 39px !important;
    padding: 10px 12px !important;
    border-radius: 11px !important;
    font-size: .79rem !important;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background: rgba(255,255,255,.026) !important;
    border: 1px solid transparent !important;
    box-shadow: none !important;
}
.sidebar-nav a:hover,
.sidebar-nav a:focus-visible {
    transform: none !important;
    background: rgba(166,217,74,.085) !important;
    border-color: rgba(166,217,74,.15) !important;
}
.sidebar-nav a.is-active {
    background: linear-gradient(90deg, rgba(166,217,74,.18), rgba(166,217,74,.055)) !important;
    border-color: rgba(166,217,74,.28) !important;
    color: #f2ffd1 !important;
    box-shadow: inset 3px 0 0 #a6d94a !important;
}
.sidebar-premium .nav-prp { color: #ebcaff; }
.sidebar-premium .nav-vip { color: #f6d66e; }
.sidebar-disclosure {
    border-radius: 16px;
    border: 1px solid rgba(225,193,111,.12);
    background: rgba(225,193,111,.025);
    overflow: hidden;
}
.sidebar-disclosure summary {
    position: relative;
    display: grid;
    gap: 2px;
    padding: 13px 39px 13px 14px;
    cursor: pointer;
    list-style: none;
    color: #e4c56f;
    user-select: none;
}
.sidebar-disclosure summary::-webkit-details-marker { display: none; }
.sidebar-disclosure summary::after {
    content: '+';
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    font-size: 1.05rem;
    color: #c9d79e;
}
.sidebar-disclosure[open] summary::after { content: '−'; }
.sidebar-disclosure summary span {
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .105em;
    text-transform: uppercase;
}
.sidebar-disclosure summary small {
    color: #87947e;
    font-size: .7rem;
}
.sidebar-disclosure-body {
    display: grid;
    gap: 6px;
    padding: 0 10px 10px;
}
.sidebar-disclosure-body a {
    font-size: .73rem !important;
    min-height: 37px !important;
}
.sidebar-account {
    display: grid;
    grid-template-columns: 36px minmax(0,1fr) auto;
    gap: 9px;
    align-items: center;
    padding: 10px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.05);
    background: rgba(255,255,255,.022);
}
.sidebar-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 12px;
    background: linear-gradient(135deg,#b9ff5d,#6ba822);
    color: #11150f;
    font-weight: 900;
}
.sidebar-account-copy {
    min-width: 0;
    display: grid;
    gap: 2px;
}
.sidebar-account-copy strong,
.sidebar-account-copy span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.sidebar-account-copy strong { font-size: .78rem; color: #f0f6e5; }
.sidebar-account-copy span { font-size: .68rem; color: #c8a954; }
.sidebar-logout {
    min-height: 32px !important;
    padding: 8px 9px !important;
    border-radius: 10px !important;
    font-size: .68rem !important;
    text-decoration: none;
    color: #dbe7ce;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.06);
}
.main-content {
    margin-left: calc(var(--sidebar-width) + 18px) !important;
    max-width: calc(100vw - var(--sidebar-width) - 36px) !important;
}
.site-footer {
    margin-left: calc(var(--sidebar-width) + 18px) !important;
    width: calc(100% - var(--sidebar-width) - 18px) !important;
}
@media (max-width: 1120px) {
    .sidebar-launcher { display: inline-flex !important; }
    .site-header.sidebar-shell {
        top: 0 !important;
        width: min(292px, calc(100vw - 24px)) !important;
        height: 100vh;
        height: 100dvh;
        padding: 14px !important;
        transform: translateX(calc(-100% - 28px)) !important;
        transition: transform .22s ease !important;
        z-index: 95 !important;
    }
    html.nav-open .site-header.sidebar-shell { transform: translateX(0) !important; }
    .sidebar-close { display: inline-flex; align-items: center; justify-content: center; }
    .sidebar-launcher { top: 54px !important; left: 12px !important; z-index: 90 !important; }
    .nav-backdrop { z-index: 91 !important; }
    .main-content,
    .site-footer {
        margin-left: 0 !important;
        width: auto !important;
        max-width: none !important;
    }
    .main-content {
        width: min(100% - 22px, 1180px) !important;
        padding-top: 68px !important;
    }
    html.nav-open { overflow: hidden; }
}
@media (max-width: 767px) {
    .top-strip { position: sticky !important; }
    .sidebar-launcher { top: 11px !important; }
    .main-content { padding-top: 24px !important; }
    .site-header.sidebar-shell { width: min(286px, calc(100vw - 16px)) !important; }
}


/* 1.4.3.3 - Botón hamburguesa/X */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
.sidebar-launcher {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    padding: 0 !important;
    justify-content: center !important;
    border-radius: 14px !important;
}
.sidebar-launcher .nav-toggle-label {
    display: block !important;
}
.sidebar-launcher .nav-toggle-box {
    position: relative;
    width: 20px !important;
    height: 16px !important;
    display: inline-flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    gap: 0 !important;
}
.sidebar-launcher .nav-toggle-box i {
    width: 20px !important;
    height: 2px !important;
    background: currentColor !important;
    border-radius: 999px;
    display: block;
    transform-origin: center;
    transition: transform .22s ease, opacity .18s ease, width .18s ease;
}
html.nav-open .sidebar-launcher .nav-toggle-box i:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
}
html.nav-open .sidebar-launcher .nav-toggle-box i:nth-child(2) {
    opacity: 0;
}
html.nav-open .sidebar-launcher .nav-toggle-box i:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}


/* 1.4.3.4 - Botón único para copiar IP del servidor */
.server-copy-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 34px;
    padding: 7px 13px;
    border: 1px solid rgba(166, 217, 74, 0.28);
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(35, 49, 27, 0.92), rgba(20, 29, 17, 0.94));
    color: #edf8cf;
    box-shadow: 0 7px 18px rgba(0, 0, 0, 0.24);
    cursor: pointer;
    font: inherit;
    transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
.server-copy-button:hover,
.server-copy-button:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(203, 245, 101, 0.58);
    background: linear-gradient(180deg, rgba(48, 66, 35, 0.96), rgba(25, 37, 20, 0.97));
    box-shadow: 0 9px 22px rgba(0, 0, 0, 0.3), 0 0 0 3px rgba(166, 217, 74, 0.08);
    outline: none;
}
.server-copy-button:active {
    transform: translateY(0) scale(.985);
}
.server-copy-status {
    color: #aebc96;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.server-copy-button strong {
    color: #efffc2;
    font-size: .84rem;
    letter-spacing: .035em;
    white-space: nowrap;
}
.server-copy-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 7px;
    background: rgba(166, 217, 74, 0.13);
    color: #cfff69;
    font-size: .9rem;
    line-height: 1;
}
.server-copy-button.is-copied {
    border-color: rgba(183, 255, 94, 0.66);
    background: linear-gradient(180deg, rgba(51, 76, 31, 0.97), rgba(27, 43, 20, 0.98));
}
.server-copy-button.is-copied .server-copy-status,
.server-copy-button.is-copied strong,
.server-copy-button.is-copied .server-copy-icon {
    color: #dfff9a;
}
.server-copy-button.copy-failed {
    border-color: rgba(255, 111, 111, 0.55);
    background: linear-gradient(180deg, rgba(72, 32, 32, 0.97), rgba(43, 20, 20, 0.98));
}
@media (max-width: 900px) {
    .server-copy-button {
        min-height: 32px;
        padding: 6px 10px;
        gap: 8px;
    }
    .server-copy-status { display: none; }
}
@media (max-width: 520px) {
    .top-strip-inner {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
    }
    .top-strip-copy strong { font-size: .8rem; }
    .server-copy-button {
        padding: 6px 9px;
        border-radius: 10px;
    }
    .server-copy-button strong { font-size: .72rem; }
    .server-copy-icon { width: 19px; height: 19px; font-size: .75rem; }
}


/* 1.4.3.5 - Scroll en administración */
.sidebar-disclosure-body {
    max-height: min(42vh, 320px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 4px;
    overscroll-behavior: contain;
}
.sidebar-disclosure-body::-webkit-scrollbar {
    width: 7px;
}
.sidebar-disclosure-body::-webkit-scrollbar-thumb {
    background: rgba(166, 217, 74, 0.22);
    border-radius: 999px;
}
.sidebar-disclosure-body::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.03);
    border-radius: 999px;
}
.sidebar-disclosure[open] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
}


/* 1.4.3.6.1 - Ajuste visual scroll administración */
.sidebar-disclosure {
    overflow: hidden;
}
.sidebar-disclosure-body {
    box-sizing: border-box;
    max-height: min(40vh, 300px);
    padding: 0 10px 14px 0;
    margin: 0 6px 6px 10px;
    scrollbar-gutter: stable;
}
.sidebar-disclosure-body a:last-child {
    margin-bottom: 2px;
}


/* 1.4.3.6.2 - Scroll completo de la navegación lateral */
.site-header.sidebar-shell {
    min-height: 0 !important;
}
.sidebar-nav {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    padding-bottom: 18px !important;
}
.sidebar-nav::-webkit-scrollbar {
    width: 7px;
}
.sidebar-nav::-webkit-scrollbar-thumb {
    background: rgba(166, 217, 74, 0.26);
    border-radius: 999px;
}
.sidebar-nav::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.025);
    border-radius: 999px;
}
.sidebar-disclosure[open] {
    display: block !important;
}
.sidebar-disclosure-body {
    max-height: none !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 10px 12px !important;
    scrollbar-gutter: auto !important;
}
.sidebar-disclosure-body a:last-child {
    margin-bottom: 0 !important;
}
.sidebar-account {
    flex: 0 0 auto;
}

/* ============================================================
   PerfectRolRP Web 1.4.3.7 - Inicio, noticias y carreras
   ============================================================ */
.home-news-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
    gap: 22px;
    padding: 30px;
    border: 1px solid rgba(166,217,74,.18);
    border-radius: 26px;
    background:
        radial-gradient(circle at 85% 25%, rgba(166,217,74,.16), transparent 28%),
        linear-gradient(145deg, rgba(25,33,27,.98), rgba(12,17,14,.98));
    box-shadow: var(--prrp-shadow);
    overflow: hidden;
}
.home-news-copy h1 {
    margin: 6px 0 14px;
    font-size: clamp(2.15rem, 4.5vw, 4rem);
    line-height: .98;
    max-width: 16ch;
}
.home-news-copy > p:not(.eyebrow) { color: #cdd9c7; max-width: 62ch; }
.home-news-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.home-server-card {
    display: grid;
    align-content: center;
    gap: 8px;
    padding: 24px;
    border-radius: 22px;
    border: 1px solid rgba(225,193,111,.2);
    background: linear-gradient(180deg, rgba(34,39,31,.94), rgba(18,23,19,.94));
}
.home-server-card > span { color: var(--prrp-gold); text-transform: uppercase; letter-spacing: .13em; font-size: .72rem; }
.home-server-card > strong { font-size: 1.7rem; }
.home-server-card p { margin: 0 0 14px; color: var(--prrp-muted); }
.home-server-card div { display: grid; gap: 3px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.07); }
.home-server-card b { color: var(--prrp-accent-2); font-size: 1.05rem; }
.home-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr);
    gap: 24px;
    margin-top: 28px;
    align-items: start;
}
.server-update-list { display: grid; gap: 16px; }
.server-update-card {
    padding: 22px;
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,.07);
    background: linear-gradient(180deg, rgba(20,27,23,.96), rgba(13,18,15,.96));
    box-shadow: 0 16px 34px rgba(0,0,0,.22);
}
.server-update-card.is-featured { border-color: rgba(166,217,74,.27); box-shadow: inset 3px 0 0 rgba(166,217,74,.75), 0 16px 34px rgba(0,0,0,.22); }
.server-update-meta { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 12px; }
.update-type, .update-version, .update-featured {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.04);
}
.update-type-actualizacion { color: #d9ff9b; border-color: rgba(166,217,74,.18); background: rgba(166,217,74,.08); }
.update-type-mantenimiento { color: #ffd987; border-color: rgba(225,193,111,.2); background: rgba(225,193,111,.08); }
.update-type-evento { color: #e4c2ff; border-color: rgba(196,132,255,.2); background: rgba(196,132,255,.08); }
.update-type-aviso { color: #ffb7b7; border-color: rgba(255,99,99,.2); background: rgba(255,99,99,.08); }
.update-version { color: #e8e8df; }
.update-featured { color: var(--prrp-gold); }
.server-update-card h3 { margin: 0 0 8px; font-size: 1.28rem; }
.server-update-summary { color: #d7e3d2; margin: 0 0 12px; font-weight: 600; }
.server-update-body { color: #aebda8; line-height: 1.65; }
.server-update-card footer { display: flex; justify-content: space-between; gap: 12px; margin-top: 18px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.06); color: #7f8e79; font-size: .78rem; }
.race-leaderboard { display: grid; gap: 10px; }
.race-leader {
    display: grid;
    grid-template-columns: 42px 50px minmax(0,1fr) auto;
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 11px 12px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.06);
    background: rgba(255,255,255,.025);
}
.race-position-1 { border-color: rgba(225,193,111,.34); background: linear-gradient(90deg, rgba(225,193,111,.1), rgba(255,255,255,.02)); }
.race-position-2 { border-color: rgba(200,210,210,.2); }
.race-position-3 { border-color: rgba(184,115,51,.23); }
.race-place { color: var(--prrp-gold); font-weight: 900; text-align: center; }
.race-skin { width: 50px; height: 54px; border-radius: 12px; overflow: hidden; background: rgba(255,255,255,.035); }
.race-skin img { width: 100%; height: 100%; object-fit: contain; }
.race-player { min-width: 0; display: grid; gap: 2px; }
.race-player strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.race-player small { color: var(--prrp-muted); }
.race-wins { text-align: right; display: grid; }
.race-wins strong { color: var(--prrp-accent-2); font-size: 1.35rem; line-height: 1; }
.race-wins span { color: var(--prrp-muted); font-size: .68rem; text-transform: uppercase; letter-spacing: .06em; }
.race-info-card { margin-top: 14px; padding: 18px; border-radius: 18px; border: 1px solid rgba(255,255,255,.06); background: rgba(255,255,255,.025); }
.race-info-card span { color: var(--prrp-gold); text-transform: uppercase; letter-spacing: .08em; font-size: .7rem; }
.race-info-card strong { display: block; margin: 6px 0; }
.race-info-card p { color: var(--prrp-muted); margin: 0; font-size: .88rem; line-height: 1.55; }
.samp-download-section { margin-top: 28px; }
.samp-download-grid { display: grid; grid-template-columns: 1.15fr repeat(2,minmax(0,.75fr)); gap: 16px; }
.samp-download-info, .samp-mirror-card {
    padding: 22px;
    border-radius: 22px;
    border: 1px solid rgba(255,255,255,.07);
    background: linear-gradient(180deg, rgba(20,27,23,.96), rgba(13,18,15,.96));
}
.download-badge { display: inline-flex; padding: 6px 9px; border-radius: 999px; color: #10140f; background: var(--prrp-accent-2); font-size: .67rem; font-weight: 900; letter-spacing: .1em; }
.samp-download-info h3 { margin: 12px 0 8px; font-size: 1.35rem; }
.samp-download-info p, .samp-mirror-card p { color: var(--prrp-muted); line-height: 1.55; }
.download-server-address { display: grid; gap: 3px; margin-top: 18px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.06); }
.download-server-address strong { color: var(--prrp-accent-2); }
.samp-mirror-card { display: flex; flex-direction: column; text-decoration: none; color: inherit; transition: transform .18s ease, border-color .18s ease; }
.samp-mirror-card:hover { transform: translateY(-2px); border-color: rgba(166,217,74,.25); }
.samp-mirror-card > span { color: var(--prrp-gold); font-size: .7rem; text-transform: uppercase; letter-spacing: .09em; }
.samp-mirror-card > strong { margin-top: 8px; font-size: 1.4rem; }
.samp-mirror-card b { margin-top: auto; padding-top: 14px; color: var(--prrp-accent-2); }
.download-source-note { color: #73806f; font-size: .78rem; margin: 12px 4px 0; }
.server-update-admin-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.server-update-admin-form .field-wide { grid-column: 1 / -1; }
.inline-check { display: flex !important; align-items: center; gap: 8px; }
.inline-check input { width: auto; }
.server-update-admin-list { display: grid; gap: 12px; }
.server-update-admin-list > article { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 18px; padding: 18px; border-radius: 18px; border: 1px solid rgba(255,255,255,.06); background: rgba(255,255,255,.02); }
.server-update-admin-list > article.is-hidden { opacity: .68; }
.server-update-admin-list h3 { margin: 8px 0 4px; }
.server-update-admin-list p { margin: 0 0 8px; color: var(--prrp-muted); }
.server-update-admin-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
@media (max-width: 1050px) {
    .home-news-hero, .home-layout, .samp-download-grid { grid-template-columns: 1fr; }
    .home-news-copy h1 { max-width: none; }
}
@media (max-width: 700px) {
    .home-news-hero { padding: 20px; }
    .server-update-card footer { flex-direction: column; gap: 4px; }
    .race-leader { grid-template-columns: 34px 44px minmax(0,1fr) auto; padding: 10px 8px; }
    .race-skin { width: 44px; height: 48px; }
    .server-update-admin-form { grid-template-columns: 1fr; }
    .server-update-admin-form .field-wide { grid-column: auto; }
    .server-update-admin-list > article { grid-template-columns: 1fr; }
    .server-update-admin-actions { justify-content: flex-start; }
}


/* 1.4.3.8.1 - Mejoras visuales para Inicio */
.home-news-hero {
    margin-bottom: 10px;
}
.home-layout {
    gap: 32px;
    margin-top: 34px;
}
.home-updates-section,
.home-race-section,
.samp-download-section {
    position: relative;
}
.home-updates-section .section-bar,
.home-race-section .section-bar,
.samp-download-section .section-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 22px 24px;
    margin-bottom: 22px;
    border: 1px solid rgba(225,193,111,.16);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(24,31,26,.94), rgba(12,17,14,.92));
    box-shadow: 0 12px 28px rgba(0,0,0,.18);
}
.home-updates-section .section-bar h2,
.home-race-section .section-bar h2,
.samp-download-section .section-bar h2 {
    margin: 0;
    color: #f1ead2;
    font-size: clamp(1.05rem, 2vw, 1.35rem);
    letter-spacing: .08em;
    text-transform: uppercase;
    text-shadow: 0 1px 0 rgba(0,0,0,.55);
}
.home-updates-section .section-bar span,
.home-race-section .section-bar span,
.samp-download-section .section-bar span {
    color: #d9c07c;
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: .95;
}
.server-update-list,
.race-leaderboard {
    gap: 18px;
}
.server-update-card,
.samp-download-info,
.samp-mirror-card,
.race-info-card {
    padding: 24px;
}
.server-update-card footer {
    margin-top: 22px;
    padding-top: 16px;
}
.samp-download-section {
    margin-top: 40px;
}
.samp-download-grid {
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
    gap: 22px;
    align-items: stretch;
}
.samp-mirror-card > strong {
    line-height: 1.05;
}
@media (max-width: 900px) {
    .home-updates-section .section-bar,
    .home-race-section .section-bar,
    .samp-download-section .section-bar {
        align-items: flex-start;
        flex-direction: column;
    }
    .home-updates-section .section-bar span,
    .home-race-section .section-bar span,
    .samp-download-section .section-bar span {
        white-space: normal;
    }
}

/* 1.4.4 - Inicio expandido para aprovechar mejor el ancho */
.main-content {
    width: min(1520px, calc(100vw - var(--sidebar-width) - 36px)) !important;
    max-width: calc(100vw - var(--sidebar-width) - 36px) !important;
}
.home-news-hero {
    grid-template-columns: minmax(0, 1.45fr) minmax(320px, .85fr);
    gap: 26px;
    padding: 34px;
}
.home-server-stack {
    display: grid;
    grid-template-rows: auto auto;
    gap: 18px;
}
.home-overview-card {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    padding: 18px;
    border-radius: 22px;
    border: 1px solid rgba(166,217,74,.16);
    background: linear-gradient(180deg, rgba(19,25,21,.96), rgba(11,15,13,.96));
    box-shadow: 0 16px 34px rgba(0,0,0,.18);
}
.home-overview-card article {
    min-width: 0;
    padding: 14px 12px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.06);
    background: rgba(255,255,255,.025);
    display: grid;
    gap: 4px;
}
.home-overview-card small,
.home-overview-card span {
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .68rem;
    color: var(--prrp-muted);
    font-weight: 800;
}
.home-overview-card strong {
    font-size: 1.55rem;
    line-height: 1;
    color: var(--prrp-accent-2);
}
.home-layout {
    grid-template-columns: minmax(0, 1.65fr) minmax(350px, 1fr);
    gap: 28px;
    align-items: start;
}
.home-side-column {
    display: grid;
    gap: 28px;
    align-content: start;
}
.home-race-section,
.home-download-panel {
    margin: 0;
}
.home-race-section .section-bar,
.home-download-panel .section-bar,
.home-updates-section .section-bar {
    min-height: 86px;
}
.samp-download-grid {
    grid-template-columns: 1fr;
    gap: 16px;
}
.samp-download-info,
.samp-mirror-card {
    min-height: 100%;
}
.download-server-address strong {
    overflow-wrap: anywhere;
}
@media (max-width: 1380px) {
    .main-content {
        width: calc(100vw - var(--sidebar-width) - 32px) !important;
    }
    .home-news-hero {
        grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
    }
    .home-layout {
        grid-template-columns: minmax(0, 1.45fr) minmax(320px, .95fr);
    }
}
@media (max-width: 1120px) {
    .main-content {
        width: min(1180px, calc(100% - 24px)) !important;
        max-width: min(1180px, calc(100% - 24px)) !important;
    }
    .home-news-hero,
    .home-layout {
        grid-template-columns: 1fr;
    }
    .home-server-stack,
    .home-side-column {
        gap: 20px;
    }
}
@media (max-width: 700px) {
    .home-news-hero {
        padding: 22px 18px;
        gap: 18px;
    }
    .home-overview-card {
        grid-template-columns: 1fr;
        padding: 14px;
    }
    .home-layout {
        gap: 22px;
        margin-top: 24px;
    }
}


/* ============================================================
   PerfectRolRP Web 1.4.4.1 - Scroll real en Herramientas del staff
   ============================================================ */
.sidebar-disclosure-admin {
    display: flex;
    flex-direction: column;
    min-height: 0;
}
.sidebar-disclosure-admin .sidebar-disclosure-body {
    display: grid !important;
    gap: 6px;
    max-height: min(68vh, 560px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    scroll-behavior: smooth;
    padding: 0 8px 12px 10px !important;
    margin: 0 !important;
}
.sidebar-disclosure-admin .sidebar-disclosure-body:focus {
    outline: 1px solid rgba(166, 217, 74, 0.30);
    outline-offset: -1px;
}
.sidebar-disclosure-admin .sidebar-disclosure-body::-webkit-scrollbar {
    width: 7px;
}
.sidebar-disclosure-admin .sidebar-disclosure-body::-webkit-scrollbar-thumb {
    background: rgba(166, 217, 74, 0.28);
    border-radius: 999px;
}
.sidebar-disclosure-admin .sidebar-disclosure-body::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.03);
    border-radius: 999px;
}
@media (max-width: 1120px) {
    .sidebar-disclosure-admin .sidebar-disclosure-body {
        max-height: min(58vh, 460px) !important;
    }
}
@media (max-width: 640px) {
    .sidebar-disclosure-admin .sidebar-disclosure-body {
        max-height: min(50vh, 380px) !important;
    }
}


/* PerfectRolRP Web 1.4.4.2 - Staff más grande */
.sidebar-disclosure-admin summary {
    margin-bottom: 8px;
}
.sidebar-disclosure-admin .sidebar-disclosure-body {
    padding-bottom: 16px !important;
}


/* ============================================================
   PerfectRolRP Web 1.4.4.3 - Corrección definitiva de rueda Staff
   ============================================================ */
.sidebar-disclosure-admin .sidebar-disclosure-body {
    height: auto !important;
    max-height: min(62vh, 500px) !important;
    overflow-y: scroll !important;
    overflow-x: hidden !important;
    overscroll-behavior-y: auto !important;
    touch-action: pan-y;
    scrollbar-gutter: stable;
    -webkit-overflow-scrolling: touch;
}
.sidebar-disclosure-admin .sidebar-disclosure-body::-webkit-scrollbar {
    width: 9px !important;
}
.sidebar-disclosure-admin .sidebar-disclosure-body::-webkit-scrollbar-thumb {
    background: rgba(166, 217, 74, .42) !important;
    border: 2px solid rgba(10, 15, 11, .72);
    border-radius: 999px;
}
.sidebar-disclosure-admin .sidebar-disclosure-body::-webkit-scrollbar-track {
    background: rgba(255,255,255,.045) !important;
    border-radius: 999px;
}
.sidebar-disclosure-admin .sidebar-disclosure-body:hover::-webkit-scrollbar-thumb {
    background: rgba(166, 217, 74, .68) !important;
}
@media (max-height: 760px) {
    .sidebar-disclosure-admin .sidebar-disclosure-body {
        max-height: min(50vh, 360px) !important;
    }
}


/* ============================================================
   PerfectRolRP Web 1.4.4.4 - Botón y página Herramientas del staff
   ============================================================ */
.sidebar-staff-section {
    gap: 8px;
}
.sidebar-staff-section .staff-tools-link {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 3px 10px;
    align-items: center;
    min-height: 58px !important;
    padding: 11px 12px !important;
    border-color: rgba(225,193,111,.13) !important;
    background: linear-gradient(90deg, rgba(225,193,111,.08), rgba(255,255,255,.025)) !important;
}
.sidebar-staff-section .staff-tools-link::after {
    content: '→';
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    color: #d9c06f;
    font-size: 1.1rem;
}
.sidebar-staff-section .staff-tools-link > span {
    min-width: 0;
    color: #f2e6b8;
}
.sidebar-staff-section .staff-tools-link > small {
    min-width: 0;
    color: #82907b;
    font-size: .62rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: none;
    overflow: hidden;
    text-overflow: ellipsis;
}
.sidebar-staff-section .staff-tools-link:hover,
.sidebar-staff-section .staff-tools-link.is-active {
    border-color: rgba(166,217,74,.27) !important;
    background: linear-gradient(90deg, rgba(166,217,74,.14), rgba(225,193,111,.06)) !important;
}

.staff-tools-hero {
    display: grid;
    grid-template-columns: minmax(0,1fr) 230px;
    gap: 24px;
    align-items: center;
    padding: 32px;
    margin-bottom: 28px;
    border-radius: 26px;
    border: 1px solid rgba(166,217,74,.18);
    background:
        radial-gradient(circle at 86% 20%, rgba(166,217,74,.15), transparent 28%),
        linear-gradient(145deg, rgba(25,33,27,.98), rgba(12,17,14,.98));
    box-shadow: var(--prrp-shadow);
}
.staff-tools-hero h1 {
    margin: 6px 0 10px;
    font-size: clamp(2rem,4vw,3.6rem);
    line-height: 1;
}
.staff-tools-hero > div > p:not(.eyebrow) {
    max-width: 70ch;
    margin: 0;
    color: #cbd8c5;
    line-height: 1.65;
}
.staff-tools-summary {
    display: grid;
    gap: 6px;
    padding: 22px;
    border-radius: 20px;
    border: 1px solid rgba(225,193,111,.18);
    background: rgba(255,255,255,.025);
}
.staff-tools-summary small,
.staff-tools-summary span {
    color: var(--prrp-muted);
    text-transform: uppercase;
    letter-spacing: .09em;
    font-size: .7rem;
    font-weight: 800;
}
.staff-tools-summary strong {
    color: var(--prrp-accent-2);
    font-size: 2.5rem;
    line-height: 1;
}

.staff-tools-section .section-bar {
    margin-bottom: 18px;
}
.staff-tools-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 16px;
}
.staff-tool-card {
    display: grid;
    grid-template-columns: 52px minmax(0,1fr) auto;
    gap: 15px;
    align-items: center;
    min-height: 142px;
    padding: 21px;
    border-radius: 20px;
    border: 1px solid rgba(255,255,255,.07);
    background: linear-gradient(180deg, rgba(20,27,23,.96), rgba(13,18,15,.96));
    color: inherit;
    text-decoration: none;
    box-shadow: 0 14px 30px rgba(0,0,0,.18);
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.staff-tool-card:hover {
    transform: translateY(-2px);
    border-color: rgba(166,217,74,.26);
    background: linear-gradient(180deg, rgba(25,34,28,.98), rgba(14,20,16,.98));
}
.staff-tool-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    color: #11160e;
    background: linear-gradient(135deg,#c7ff64,#79ae2e);
    font-weight: 1000;
    font-size: 1.25rem;
    box-shadow: 0 8px 20px rgba(117,167,43,.14);
}
.staff-tool-copy {
    min-width: 0;
}
.staff-tool-copy > span {
    color: #d6ba67;
    font-size: .66rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.staff-tool-copy h3 {
    margin: 5px 0 7px;
    font-size: 1.15rem;
}
.staff-tool-copy p {
    margin: 0;
    color: var(--prrp-muted);
    line-height: 1.5;
    font-size: .86rem;
}
.staff-tool-card > b {
    color: var(--prrp-accent-2);
    font-size: 1.35rem;
}
@media (max-width: 900px) {
    .staff-tools-hero,
    .staff-tools-grid {
        grid-template-columns: 1fr;
    }
    .staff-tools-summary {
        width: 100%;
    }
}
@media (max-width: 560px) {
    .staff-tools-hero {
        padding: 22px 18px;
    }
    .staff-tool-card {
        grid-template-columns: 44px minmax(0,1fr) auto;
        padding: 17px;
    }
    .staff-tool-icon {
        width: 44px;
        height: 44px;
        border-radius: 13px;
    }
}


/* ============================================================
   PerfectRolRP Web 1.4.4.5 - Encabezado de descarga funcional
   ============================================================ */
.home-download-panel .samp-download-main-action {
    text-decoration: none;
    cursor: pointer;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.home-download-panel .samp-download-main-action:hover,
.home-download-panel .samp-download-main-action:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(166,217,74,.45);
    background: linear-gradient(180deg, rgba(42,55,35,.98), rgba(16,23,18,.98));
    box-shadow: 0 16px 34px rgba(0,0,0,.28), inset 0 0 0 1px rgba(166,217,74,.09);
}
.home-download-panel .samp-download-main-action:focus-visible {
    outline: 2px solid rgba(166,217,74,.65);
    outline-offset: 3px;
}
.home-download-panel .samp-download-main-action h2 {
    color: #f4edd9;
}
.home-download-panel .samp-download-main-action span {
    color: #cfff62;
}
.home-download-panel .samp-download-main-action::before {
    content: '↓';
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    border-radius: 11px;
    color: #11170e;
    background: linear-gradient(135deg,#ccff66,#7eb22d);
    font-size: 1.15rem;
    font-weight: 1000;
}
.home-download-panel .samp-download-main-action {
    display: grid !important;
    grid-template-columns: 34px minmax(0,1fr) auto;
}
.home-download-panel .samp-download-main-action h2 {
    align-self: center;
}
.home-download-panel .samp-download-main-action span {
    align-self: center;
}
.samp-download-grid-single {
    grid-template-columns: 1fr !important;
}
.download-inline-note {
    margin: 16px 0 0 !important;
    padding-top: 14px;
    border-top: 1px solid rgba(255,255,255,.06);
    color: #9cad94 !important;
    font-size: .8rem;
}
@media (max-width: 700px) {
    .home-download-panel .samp-download-main-action {
        grid-template-columns: 34px minmax(0,1fr);
    }
    .home-download-panel .samp-download-main-action span {
        grid-column: 1 / -1;
        padding-left: 46px;
    }
}

/* PerfectRolRP beta79 - imágenes reales por ID de vehículo (400-611) */
.vehicle-photo-art,.special-vehicle-photo{isolation:isolate;background:radial-gradient(circle at 50% 35%,#3b4038 0,#171914 64%,#0a0b09 100%)}
.vehicle-photo-art::before,.special-vehicle-photo::before{display:none!important}
.vehicle-photo-art img,.special-vehicle-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;padding:12px;z-index:1;filter:drop-shadow(0 12px 13px rgba(0,0,0,.5));transition:transform .18s ease}
.vehicle-card:hover .vehicle-photo-art img,.special-vehicle-card:hover .special-vehicle-photo img{transform:scale(1.045)}
.vehicle-photo-art strong,.special-vehicle-photo b{z-index:2!important;pointer-events:none}
.vehicle-photo-art em,.special-vehicle-photo em{z-index:3!important}
.vehicle-photo-missing::after{content:"IMAGEN NO DISPONIBLE";position:absolute;inset:auto 12px 12px;z-index:3;text-align:center;color:#a79d80;font-size:.65rem;font-weight:900;letter-spacing:.08em}
.vehicle-order-with-image{grid-template-columns:78px minmax(0,1fr) auto!important;align-items:center}
.vehicle-order-thumb{width:72px;height:52px;object-fit:contain;border:1px solid #504b39;background:#11130f;padding:3px}
.custom-vehicle-reference{position:absolute;z-index:4;left:50%;top:49%;width:min(78%,520px);height:63%;object-fit:contain;transform:translate(-50%,-50%);filter:drop-shadow(0 16px 16px rgba(0,0,0,.55));pointer-events:none}
.custom-vehicle-stage .custom-car-body,.custom-vehicle-stage .custom-aircraft-body{opacity:.17}
.investigation-vehicle-thumb{height:120px;object-fit:contain;background:radial-gradient(circle at 50% 35%,#34382f,#11130f 72%);border-bottom:1px solid #4a4635;padding:8px;margin:-1px -1px 10px;width:calc(100% + 2px)}
@media(max-width:760px){.vehicle-order-with-image{grid-template-columns:62px minmax(0,1fr)!important}.vehicle-order-with-image>div:last-child{grid-column:2}.vehicle-order-thumb{width:58px;height:46px}.custom-vehicle-reference{width:88%;height:58%}}
/* beta84 - Garaje Virtual */
.vehicle-card-virtual{opacity:.88;border-style:dashed}.virtual-tag{background:rgba(120,96,255,.14);border:1px solid rgba(120,96,255,.35);color:#cfc7ff}.virtual-garage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}.virtual-garage-card{background:var(--panel,#12151d);border:1px solid var(--border,rgba(255,255,255,.09));border-radius:18px;overflow:hidden;padding-bottom:18px}.virtual-garage-card .vehicle-art{border-radius:0}.virtual-garage-card .vehicle-title,.virtual-garage-card .vehicle-statuses,.virtual-garage-card .virtual-garage-form{margin-left:18px;margin-right:18px}.virtual-garage-form{display:grid;gap:12px;margin-top:16px}.virtual-garage-form label{display:grid;gap:7px;font-size:.9rem}.virtual-garage-form select{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--border,rgba(255,255,255,.12));background:#10131a;color:inherit}.virtual-garage-form button:disabled{opacity:.5;cursor:not-allowed}.virtual-garage-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:24px}.virtual-garage-mini-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border,rgba(255,255,255,.09));border-radius:14px;background:var(--panel,#12151d)}.virtual-garage-mini-card img{width:92px;height:58px;object-fit:contain;background:rgba(255,255,255,.03);border-radius:9px}.virtual-garage-mini-card div{display:grid;gap:2px}.virtual-garage-mini-card small,.virtual-garage-mini-card span{opacity:.7}.virtual-garage-mini-card strong{font-size:1rem}
