/* Paginile contului si paginile de stare: Login (lg-), Profilul meu (pf-), Acces interzis + Eroare (er-).
   Peste aplicatie.css (a-panou, a-segment, t-banner, butoanele Bootstrap re-tematizate). */

/* ---------- Login ---------- */
.lg-pagina { display: flex; flex-direction: column; align-items: center; gap: 16px; padding-top: 24px; }
.lg-limbi { align-self: center; justify-content: center; max-width: 100%; }
.lg-panou { width: 100%; max-width: 480px; padding: 32px; gap: 20px; }
body.aplicatie .lg-panou h1 { margin: 0; font-size: 30px; }
.lg-sub { margin: 0; color: var(--t-cerneala-slaba); }
.lg-panou .form-group { margin-bottom: 0; }
/* sumarul de validare (ModelOnly): ascuns cat nu are erori, banner rosu cand are */
.lg-eroare.validation-summary-valid { display: none; }
.lg-eroare { margin-bottom: 0; }
.lg-eroare ul { margin: 0; padding: 0; list-style: none; }

/* ---------- Profilul meu ---------- */
.pf-cont__rand { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 20px; }
.pf-avatar {
    flex: 0 0 auto;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--t-principal-nuanta);
    color: var(--t-principal-inchis);
    font-family: var(--t-condensat);
    font-size: 34px;
    font-weight: 800;
}
.pf-rol { justify-self: start; }
.pf-limbi { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
body.aplicatie .pf-limbi .btn { flex-direction: column; gap: 2px; min-height: 88px; padding: 10px 16px; white-space: normal; text-align: center; }
.pf-limba__nume { display: inline-flex; align-items: center; gap: 8px; font-size: 24px; font-weight: 700; }
.pf-limba__nota { font-size: 15px; font-weight: 600; }

/* ---------- Acces interzis / Eroare ---------- */
.er-stare { flex-direction: row; flex-wrap: wrap; align-items: flex-start; gap: 20px; padding: 20px 24px; }
.er-stare__icon {
    flex: 0 0 auto;
    width: 72px;
    height: 72px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--t-rosu-fundal);
    color: var(--t-rosu);
    font-size: 30px;
}
.er-stare__icon--gri { background: var(--t-gri-fundal); color: var(--t-gri); }
.er-stare__corp { flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
body.aplicatie .er-stare__corp h1 { margin: 0; font-size: 26px; }
.er-stare__corp p { margin: 0; }
.er-mesaj { font-weight: 700; }
.er-cod { font-size: 14px; color: var(--t-cerneala-slaba); }
.er-cod code { color: inherit; word-break: break-all; }

@media (max-width: 599px) {
    .lg-pagina { padding-top: 0; }
    .lg-panou { padding: 20px 16px; }
    .lg-limbi { align-self: stretch; }
    .er-stare { padding: 16px; }
    .er-stare__corp .a-actiuni > .btn { flex: 1 1 100%; }
}
