:root {
    --account-navy:#0d2f52;
    --account-navy-deep:#071f38;
    --account-gold:#bd8b37;
    --account-gold-soft:#ddc28c;
    --account-paper:#fbf7ed;
    --account-ink:#15304c;
    --account-muted:#6d685f;
    --account-border:rgba(181,132,53,.34);
    --account-shadow:0 18px 46px rgba(17,42,69,.11);
}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(180deg,#f7f2e7,#fbf8f0 45%,#f1eadc);color:var(--account-ink);font-family:"Lato",Arial,sans-serif;min-height:100vh}
.account-hero{min-height:235px;border-bottom:2px solid var(--account-gold);background:linear-gradient(90deg,rgba(7,31,56,.98),rgba(18,62,102,.93)),url("../../assets/backgrounds/portal_fondo.webp") center/cover;color:#fff}
.account-hero-inner{width:min(1120px,calc(100% - 40px));margin:auto;padding:22px 0 35px}
.account-back{display:inline-block;margin-bottom:28px;color:#f5d995;text-decoration:none;font-weight:700;font-size:.82rem}.account-back:hover{text-decoration:underline}
.account-kicker,.eyebrow{display:block;color:#d6a94f;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.account-hero h1,.account-section-heading h2{font-family:"Marcellus",Georgia,serif;font-weight:400}.account-hero h1{font-size:clamp(2.7rem,5vw,4.5rem);margin:7px 0 2px}.account-hero p{margin:0;color:rgba(255,255,255,.82)}
.account-shell{width:min(1120px,calc(100% - 40px));margin:-28px auto 60px;position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.account-card{background:rgba(255,252,245,.96);border:1px solid var(--account-border);border-top:3px solid var(--account-navy);border-radius:15px;padding:24px;box-shadow:var(--account-shadow)}
.account-profile-card{grid-column:1/-1}.account-session-card{grid-column:1/-1}
.account-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid rgba(181,132,53,.26)}
.account-section-heading h2{font-size:1.65rem;margin:4px 0 0;color:var(--account-navy-deep)}
.role-badge{border:1px solid var(--account-border);background:#f4ead6;color:#76531d;border-radius:999px;padding:7px 11px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.account-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.account-field{padding:14px;border:1px solid rgba(181,132,53,.23);border-radius:10px;background:rgba(255,255,255,.55)}.account-field span{display:block;color:#8a682e;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}.account-field strong{font-family:"Marcellus",Georgia,serif;font-weight:400;font-size:1rem;overflow-wrap:anywhere}
.active-character{min-height:100px}.active-character-card{display:flex;align-items:center;gap:16px;padding:14px;border-radius:12px;background:linear-gradient(120deg,#0c2c4e,#184b78);color:white}.active-character-card img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid #d4af67;background:#eee}.active-character-card h3{font-family:"Marcellus",Georgia,serif;font-size:1.45rem;font-weight:400;margin:0 0 4px}.active-character-card p{margin:0;color:rgba(255,255,255,.78);font-size:.82rem}.active-character-placeholder{padding:18px;border:1px dashed var(--account-border);border-radius:10px;color:var(--account-muted);text-align:center}
.account-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.account-button{display:inline-flex;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;border-radius:9px;border:1px solid rgba(13,47,82,.22);background:#fffaf0;color:var(--account-navy);font-family:"Lato",sans-serif;font-weight:700;text-decoration:none;cursor:pointer}.account-button:hover{filter:brightness(.97);transform:translateY(-1px)}.account-button-primary{background:linear-gradient(180deg,#174b78,#0d3357);border-color:#b98b3d;color:#f9e6ac}.account-button-admin{background:#7d583b;color:white;border-color:#ad7b44}.account-button-danger{margin-left:auto;background:#8f2d33;color:white;border-color:#6f1e23}
.password-form{display:grid;gap:14px}.password-form label{font-size:.75rem;font-weight:700;color:#173856;text-transform:uppercase;letter-spacing:.03em}.password-input{display:flex;margin-top:6px}.password-input input{min-width:0;flex:1;height:46px;border:1px solid var(--account-border);border-radius:9px 0 0 9px;background:#fffdf8;padding:0 13px;font:inherit;color:#18334c;outline:none}.password-input input:focus{border-color:#b68031;box-shadow:0 0 0 3px rgba(190,143,60,.13)}.password-input button{width:58px;border:1px solid var(--account-border);border-left:0;border-radius:0 9px 9px 0;background:#f1eee6;color:#143759;font-weight:700;cursor:pointer}.account-help{font-size:.76rem;color:var(--account-muted);margin:0;line-height:1.5}.account-message{display:none;padding:10px 12px;border-radius:8px;font-size:.8rem}.account-message.is-error{display:block;color:#8a262c;background:#fae8e8;border:1px solid #e7b5b8}.account-message.is-success{display:block;color:#205e3a;background:#e7f4ea;border:1px solid #b8d8c1}
.account-session-card>p{color:var(--account-muted);line-height:1.55;margin:0}
@media(max-width:780px){.account-hero{min-height:205px}.account-hero-inner,.account-shell{width:min(100% - 24px,1120px)}.account-shell{grid-template-columns:1fr;margin-top:-20px}.account-profile-card,.account-session-card{grid-column:auto}.account-grid{grid-template-columns:1fr 1fr}.account-card{padding:18px}.account-section-heading h2{font-size:1.4rem}.account-button-danger{margin-left:0}.account-actions .account-button{flex:1 1 150px}}
@media(max-width:480px){.account-grid{grid-template-columns:1fr}.account-hero-inner{padding-top:16px}.account-back{margin-bottom:22px}.active-character-card{align-items:flex-start}.active-character-card img{width:58px;height:58px}.account-section-heading{align-items:center}.role-badge{font-size:.62rem}.account-actions{flex-direction:column}.account-actions .account-button{width:100%}}
