/* admin_style.css */
:root{
    --radius: 14px;
    --shadow: 0 18px 40px rgba(0,0,0,.55);

    /* ======= DARK (implicit) ======= */
    --page-bg: radial-gradient(circle at top, #111827 0, #020617 55%, #000 100%);
    --text: #e5e7eb;
    --muted: #9ca3af;

    /* TOPBAR */
    --topbar-bg: linear-gradient(90deg,#020617,#020617,#0f172a);
    --topbar-border: rgba(15,23,42,.7);

    /* CARD */
    --card-bg: rgba(15,23,42,.96);
    --card-border: #1f2937;

    /* PILL */
    --pill-bg: rgba(15,23,42,.9);
    --pill-border: rgba(55,65,81,.9);

    /* TABLE / BACKGROUNDS */
    --bg-soft: #020617;
    --border: #1f2937;
    --table-wrap-bg: linear-gradient(to bottom,#020617,#020617);
    --table-head-bg: rgba(15,23,42,.98);

    /* INPUT */
    --input-bg: #020617;
    --input-border: #1f2937;

    /* LOGOUT BTN */
    --btn-logout-bg: rgba(15,23,42,.95);
    --btn-logout-bg-hover: #111827;
    --btn-logout-border: rgba(75,85,99,.9);
    --btn-logout-text: #e5e7eb;

    /* ACCENT */
    --accent: #38bdf8;
    --accent-soft: rgba(56,189,248,.12);
    --danger: #f97373;

    /* alias pentru cod vechi */
    --card: var(--card-bg);
}

body.theme-light{
    --page-bg: radial-gradient(circle at top, #e5e7eb 0, #f3f4f6 55%, #ffffff 100%);
    --text: #111827;
    --muted: #6b7280;

    /* topbar mai deschis */
    --topbar-bg: linear-gradient(90deg,#ffffff,#f3f4f6,#ffffff);
    --topbar-border: #e5e7eb;

    /* card */
    --card-bg: #ffffff;
    --card-border: #e5e7eb;

    /* pill */
    --pill-bg: rgba(15,23,42,.03);
    --pill-border: #e5e7eb;

    /* tabel */
    --bg-soft: #f3f4f6;
    --border: var(--card-border);
    --table-wrap-bg: #ffffff;
    --table-head-bg: #f3f4f6;

    /* input-uri */
    --input-bg: #f9fafb;
    --input-border: #d1d5db;

    /* logout btn – versiune „light” */
    --btn-logout-bg: #ffffff;
    --btn-logout-bg-hover: #e5e7eb;
    --btn-logout-border: #d1d5db;
    --btn-logout-text: #111827;

    /* accent */
    --accent: #2563eb;
    --accent-soft: rgba(37,99,235,.08);
}

/* ========== GLOBAL ========== */

*{
    box-sizing:border-box;
}

body{
    margin:0;
    font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    background: var(--page-bg);
    color:var(--text);
}

a{
    color:#fdba74;
    text-decoration:none;
}
a:hover{
    text-decoration:underline;
}

.page{
    min-height:100vh;
    display:flex;
    flex-direction:column;
}

main{
    flex: 1;
    padding: 24px;
    width: 100%;
    max-width: none;
    margin: 0;
}

/* ========== LOGIN PAGE ========== */

body.login-page{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.login-card{
    width:100%;
    max-width:380px;
    background:var(--card-bg);
    border-radius:var(--radius);
    border:1px solid var(--card-border);
    box-shadow:var(--shadow);
    padding:22px 22px 20px;
}

/* brand-ul din login reutilizează .brand + .brand-badge,
   aici doar completăm textul din dreapta */
.brand-text{
    display:flex;
    flex-direction:column;
    gap:2px;
}
.brand-title{
    font-size:15px;
    font-weight:600;
}
.brand-sub{
    font-size:11px;
    color:var(--muted);
    letter-spacing:.08em;
    text-transform:uppercase;
}

.login-card h1{
    margin:10px 0 6px 0;
    font-size:22px;
}
.subtitle{
    margin:0 0 14px 0;
    font-size:13px;
    color:var(--muted);
}

/* câmpuri formular */

.field{
    margin-bottom:12px;
}
.field label{
    display:block;
    font-size:13px;
    margin-bottom:4px;
}

textarea{
    width:100%;
    border-radius:10px;
    border:1px solid var(--input-border);
    background:var(--input-bg);
    color:var(--text);
    padding:7px 10px;
    font:inherit;
}

input[type="text"],
input[type="date"],
input[type="email"],
input[type="number"],
input[type="password"]{
    width:100%;
    border-radius:10px;
    border:1px solid var(--input-border);
    background:var(--input-bg);
    color:var(--text);
    padding:7px 10px;
    font:inherit;
}
input::placeholder{
    color:#6b7280;
}
input:focus{
    outline:none;
    border-color:var(--accent);
    box-shadow:0 0 0 1px rgba(56,189,248,.7);
}

/* parola + icon */

.password-wrapper{
    display:flex;
    align-items:center;
    border-radius:10px;
    border:1px solid var(--input-border);
    background:var(--input-bg);
    overflow:hidden;
}
.password-wrapper input{
    border:none;
    border-radius:0;
    padding-right:36px;
}
.toggle-pass{
    border:none;
    background:transparent;
    color:#9ca3af;
    width:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    font-size:14px;
}
.toggle-pass:hover{
    color:var(--accent);
}

/* buton principal */

.btn-primary{
    width:100%;
    margin-top:6px;
    background:var(--accent);
    border:none;
    border-radius:999px;
    color:#0b1120;
    padding:9px 12px;
    font-weight:600;
    font-size:14px;
    cursor:pointer;
}
.btn-primary:hover{
    background:#0ea5e9;
}

/* erori + footer */

.error{
    background:rgba(248,113,113,.12);
    border:1px solid rgba(248,113,113,.7);
    color:#fecaca;
    font-size:13px;
    border-radius:10px;
    padding:6px 9px;
    margin-bottom:10px;
}

.alert-ok{
    background: rgba(34,197,94,.12);
    border: 1px solid rgba(34,197,94,.6);
    color: #bbf7d0;
    font-size: 13px;
    border-radius: 10px;
    padding: 6px 9px;
    margin-bottom: 10px;
}

.footer{
    margin-top:14px;
    font-size:11px;
    color:var(--muted);
    text-align:center;
}
.footer a{
    color:#facc15;
}
.footer a:hover{
    text-decoration:underline;
}

/* ========== TOPBAR ========== */

.topbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:14px 24px;
    border-bottom:1px solid var(--topbar-border);
    background:var(--topbar-bg);
    position:sticky;
    top:0;
    z-index:10;
}

.brand{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:12px;
    color:var(--text);
}

.brand-badge{
    width:26px;
    height:26px;
    border-radius:999px;
    background:radial-gradient(circle at 30% 20%,#38bdf8,#0ea5e9 60%,#0369a1 100%);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    font-size:14px;
    color:#0b1120;
    box-shadow:0 0 0 1px rgba(15,23,42,.8), 0 10px 25px rgba(8,47,73,.6);
}

/* bloc user în topbar */

.brand-user-block{
    display:flex;
    flex-direction:column;
    gap:2px;
}

.brand-user-link{
    color:var(--text);
    text-decoration:none;
    font-weight:600;
    font-size:13px;
    text-transform:none;
    letter-spacing:0;
}
.brand-user-link:hover{
    color:var(--accent);
}

.brand-user-sub{
    font-size:11px;
    color:var(--muted);
    text-transform:none;
    letter-spacing:0;
}

.topbar-right{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

/* ========== THEME TOGGLE ========== */

.theme-toggle-form{
    display:inline-block;
}

.theme-toggle{
    position:relative;
    display:inline-flex;
    align-items:center;
    cursor:pointer;
}

.theme-toggle input{
    display:none;
}

.theme-toggle-track{
    position:relative;
    width:60px;
    height:24px;
    border-radius:999px;
    background:#e5e7eb;
    box-shadow:inset 0 0 0 1px #d1d5db;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:2px;
    transition:background .2s ease, box-shadow .2s ease;
}

.theme-toggle-thumb{
    width:20px;
    height:20px;
    border-radius:999px;
    background:#ffffff;
    box-shadow:0 2px 4px rgba(0,0,0,.35);
    transition:transform .2s ease;
}

.theme-toggle-label{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    font-size:10px;
    font-weight:600;
    letter-spacing:.08em;
    color:#6b7280;
    pointer-events:none;
}

/* ON */
.theme-toggle input:checked + .theme-toggle-track{
    background:#22c55e;
    box-shadow:inset 0 0 0 1px #16a34a;
}
.theme-toggle input:checked + .theme-toggle-track .theme-toggle-thumb{
    transform:translateX(36px);
}
.theme-toggle input:checked + .theme-toggle-track .theme-toggle-label{
    color:#f0fdf4;
}

/* ========== PILL-URI / STATUS BARS ========== */

.pill{
    padding:4px 10px;
    border-radius:999px;
    background:var(--pill-bg);
    border:1px solid var(--pill-border);
    color:var(--muted);
    font-size:13px;
}
.pill strong{
    color:var(--text);
}

.pill-warning{
    padding:4px 10px;
    border-radius:999px;
    background:rgba(234,179,8,.12);
    border:1px solid rgba(234,179,8,.7);
    color:#facc15;
    font-size:12px;
}
.pill-warning strong{
    color:#facc15;
}

.pill-danger{
    padding:4px 10px;
    border-radius:999px;
    background:rgba(248,113,113,.16);
    border:1px solid rgba(248,113,113,.7);
    color:#fecaca;
    font-size:12px;
}
.pill-danger strong{
    color:#fee2e2;
}

.pill-alert{
    padding:4px 10px;
    border-radius:999px;
    background:rgba(248,113,113,.15);
    border:1px solid rgba(248,113,113,.7);
    color:#fecaca;
    font-size:13px;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    gap:4px;
}
.pill-alert strong{
    color:#fee2e2;
}
.pill-alert:hover{
    background:rgba(248,113,113,.25);
}

/* ========== LOGOUT BTN ========== */

.btn-logout{
    padding:6px 11px;
    border-radius:999px;
    border:1px solid var(--btn-logout-border);
    background:var(--btn-logout-bg);
    color:var(--btn-logout-text);
    font-size:13px;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    gap:6px;
    cursor:pointer;
}
.btn-logout:hover{
    background:var(--btn-logout-bg-hover);
}

/* ========== CARDURI ========== */

.card{
    background:var(--card-bg);
    border-radius:var(--radius);
    border:1px solid var(--card-border);
    box-shadow:var(--shadow);
    padding:18px 20px 16px;
}

.card-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
    margin-bottom:10px;
}
.card-header h1{
    margin:0;
    font-size:19px;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.card-header p{
    margin:4px 0 0 0;
    font-size:13px;
    color:var(--muted);
}

.card-tools{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:6px;
    min-width:260px;
}

/* card special setări */

.card-settings{
    max-width: 980px;
    margin: 24px auto;
}

.settings-row-split{
    margin: 14px 0;
    border-top: 1px dashed var(--border);
}

.settings-actions{
    margin-top: 10px;
    text-align: right;
}

.settings-meta{
    margin-top: 10px;
    font-size: 11px;
}

/* ========== SEARCH INPUT ========== */

.search-form{
    width:100%;
}
.search-input{
    width:100%;
    border-radius:999px;
    border:1px solid var(--input-border);
    padding:6px 10px;
    background:var(--input-bg);
    color:var(--text);
    font-size:13px;
    outline:none;
}
.search-input::placeholder{
    color:#6b7280;
}
.search-input:focus{
    border-color:#38bdf8;
    box-shadow:0 0 0 1px rgba(56,189,248,.6);
}

/* ========== TABEL COMPANII ========== */

.table-wrap{
    margin-top:8px;
    border-radius:12px;
    overflow:hidden;
    border:1px solid var(--border);
    background:var(--card);
    box-shadow:var(--shadow);
}

table{
    width:100%;
    border-collapse:collapse;
    font-size:13px;
}

thead{
    background:var(--bg-soft);
}

th,td{
    padding:8px 10px;
    text-align:left;
    border-bottom:1px solid var(--border);
}

th{
    font-weight:500;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:.07em;
    font-size:11px;
}

.table-wrap tbody tr:hover{
    background:rgba(15,23,42,.10);
}
body.theme-light .table-wrap tbody tr:hover{
    background:rgba(15,23,42,.03);
}

.table-wrap tbody tr:last-child td{
    border-bottom:none;
}

.mono{
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size:12px;
}

/* badge-uri / status */

.status-badge{
    display:inline-flex;
    align-items:center;
    padding:3px 8px;
    border-radius:999px;
    font-size:11px;
    letter-spacing:.06em;
    text-transform:uppercase;
    border:1px solid transparent;
}
.status-ok{
    background:rgba(22,163,74,.12);
    color:#4ade80;
    border-color:rgba(22,163,74,.5);
}
.status-trial{
    background:rgba(249,115,22,.12);
    color:#fdba74;
    border-color:rgba(249,115,22,.6);
}
.status-pending{
    background:rgba(59,130,246,.1);
    color:#93c5fd;
    border-color:rgba(59,130,246,.6);
}
.status-expired{
    background:rgba(248,113,113,.12);
    color:#fecaca;
    border-color:rgba(248,113,113,.7);
}
.status-blocked{
    background:rgba(148,27,37,.2);
    color:#fecaca;
    border-color:rgba(127,29,29,.9);
}

.badge-soft{
    font-size:11px;
    padding:2px 7px;
    border-radius:999px;
    background:var(--bg-soft);
    border:1px solid var(--border);
    color:var(--muted);
}

/* Celula de acțiuni din tabel – versiune “safe” (nu mai iese din card) */
.actions-cell{
    display:flex;
    gap:6px;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:wrap;
    white-space:normal;
}


/* Buton generic în tabel */

.btn-table{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:4px 9px;
    border-radius:999px;
    font-size:12px;
    line-height:1.2;
    text-decoration:none;
    border:1px solid var(--border);
    background:var(--bg-soft);
    color:var(--text);
    cursor:pointer;
    white-space:nowrap;
}
.btn-table:hover{
    background:rgba(31,41,55,.95);
}

/* Varianta accent (ex: Achitări) */

.btn-table-accent{
    border-color:transparent;
    background:var(--accent-soft);
    color:var(--accent);
}
.btn-table-accent:hover{
    opacity:0.9;
}

/* Ajustări pentru tema light */

.theme-light .btn-table{
    background:#f9fafb;
    border-color:#d1d5db;
    color:#111827;
}
.theme-light .btn-table:hover{
    background:#e5e7eb;
}
.theme-light .btn-table-accent{
    background:var(--accent-soft);
    color:#1d4ed8;
}

/* ========== TEXT MIC / LINKURI / ETC ========== */

.link{
    color:var(--accent);
    text-decoration:none;
    font-size:12px;
}
.link:hover{
    text-decoration:underline;
}

.muted{
    color:var(--muted);
}

.note-small{
    margin-top:2px;
    font-size:11px;
    color:var(--muted);
    max-width:260px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.note-small.dup{
    color:#fed7aa;
}

/* ========== LAYOUT MIC / HEADER APP ========== */

.app-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

.app-card{
    background:var(--card-bg);
    border-radius:var(--radius);
    border:1px solid var(--card-border);
    box-shadow:var(--shadow);
    padding:16px 18px;
}

/* ========== SELECT-URI ========== */

select{
    width:100%;
    border-radius:10px;
    border:1px solid var(--input-border);
    background:var(--input-bg);
    color:var(--text);
    padding:7px 10px;
    font:inherit;
}
select:focus{
    outline:none;
    border-color:var(--accent);
    box-shadow:0 0 0 1px rgba(56,189,248,.7);
}

/* ========== ELEMENTE SPECIFICE SETĂRI ========== */

.field-label-row{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.link-inline{
    border:none;
    background:none;
    padding:0;
    font-size:11px;
    color:var(--accent);
    cursor:pointer;
    text-decoration:underline;
}
.link-inline:hover{
    text-decoration:none;
}

/* ========== MEDIA QUERIES ========== */

@media (max-width:800px){
    main{
        padding:16px;
    }
    .card-header{
        flex-direction:column;
        align-items:flex-start;
    }
    .card-tools{
        align-items:stretch;
        min-width:0;
        width:100%;
    }
    table{
        font-size:12px;
    }
    th,td{
        padding:7px 8px;
    }
}
/* === Layout pe coloane pentru formulare mari (company_edit / company_new) === */

.form-grid{
    display:grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)); /* 3 coloane pe desktop */
    column-gap:16px;
    row-gap:12px;
    margin-bottom:12px;
}

/* titlu mic de secțiune în formular */
.settings-section-title{
    margin:16px 0 4px;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--muted);
}

/* descriere mică sub titlu (opțional) */
.settings-section-sub{
    margin:0 0 8px 0;
    font-size:12px;
    color:var(--muted);
}

/* pe ecrane mici revenim la 1 coloană */
@media (max-width: 720px){
    .form-grid{
        grid-template-columns: 1fr;
    }
}
.card-settings .btn-primary{
    width:auto;
    padding-left:18px;
    padding-right:18px;
}
@media (max-width: 1100px){
    .card-settings{
        max-width: 100%;
    }
    .form-grid{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
.hidden{
    display:none !important;
}
/* ========== DASHBOARD COMPANII & LICENȚE ========== */

.card-dashboard{
    width:100%;
    max-width:100%;
    margin:24px 0;
}

/* în dashboard, tabelul folosește același card-bg, fără shadow dublu */
.card-dashboard .table-wrap{
    background:var(--card-bg);
    box-shadow:none;
}
.card-dashboard .table-wrap table{
    width:100%;
    background:transparent;
}

/* info companie în celulă */
.company-brand{
    font-weight:600;
}
.company-sub{
    font-size:12px;
    color:var(--muted);
}
.company-sub.mono{
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

/* text mic gri */
.small-muted{
    font-size:12px;
    color:var(--muted);
}

/* link mic pentru domeniu */
.link-small{
    font-size:12px;
    color:var(--accent);
    text-decoration:none;
}
.link-small:hover{
    text-decoration:underline;
}

/* culoare UI */
.color-swatch{
    width:40px;
    height:18px;
    border-radius:4px;
    border:1px solid rgba(255,255,255,0.25);
    margin-bottom:4px;
}

/* badge-uri status licență */
.badge-status{
    display:inline-block;
    padding:2px 8px;
    border-radius:999px;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.badge-status-trial{
    background:rgba(255,193,7,.15);
    color:#ffc107;
}
.badge-status-ok{
    background:rgba(76,175,80,.15);
    color:#4caf50;
}
.badge-status-pending{
    background:rgba(255,193,7,.18);
    color:#ffca28;
}
.badge-status-expired{
    background:rgba(244,67,54,.20);
    color:#ff5252;
}
.badge-status-blocked{
    background:rgba(244,67,54,.30);
    color:#ff8a80;
}

/* badge status companie (ACTIVE / INACTIVE) */
.badge-company-status{
    display:inline-block;
    padding:2px 8px;
    border-radius:999px;
    font-size:11px;
}
.badge-company-status-active{
    background:rgba(34,197,94,.12);
    color:#4ade80;
}
.badge-company-status-inactive{
    background:rgba(162,24,24,.18);
    color:#ce0606;
}

/* ========== MODALE DASHBOARD (COMPANIE / LICENȚĂ / PLĂȚI) ========== */

.modal-overlay{
    position:fixed;
    inset:0;
    display:none;
    align-items:center;
    justify-content:center;
    z-index:100;
}
.modal-overlay.is-open{
    display:flex;
}
.modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.6);
}
.modal-dialog{
    position:relative;
    z-index:101;
    background:var(--card-bg);
    border-radius:16px;
    padding:20px 24px;
    width:90%;
    max-width:640px;
    box-shadow:0 20px 40px rgba(0,0,0,.45);
    border:1px solid var(--card-border);
}
.modal-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:12px;
}
.modal-title{
    font-size:16px;
    font-weight:600;
}
.modal-close{
    border:none;
    background:transparent;
    color:var(--muted);
    cursor:pointer;
    font-size:20px;
    padding:4px 8px;
}
.modal-body{
    font-size:13px;
    margin-bottom:16px;
}
.modal-meta{
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size:12px;
    color:var(--muted);
}
.modal-footer{
    display:flex;
    justify-content:flex-end;
    gap:8px;
}
/* ====== MODAL COMPANIE – layout pe 2 coloane ====== */

.modal-body-company{
    font-size:13px;
}

.modal-body-company .modal-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:24px;
    row-gap:8px;
}

.modal-body-company .modal-col{
    min-width:0;
}

.modal-section-title{
    margin:0 0 6px 0;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--muted);
}

.meta-row{
    display:flex;
    align-items:flex-start;
    gap:8px;
    margin-bottom:3px;
}

.meta-label{
    flex:0 0 130px;
    font-weight:600;
    color:var(--muted);
}

.meta-value{
    flex:1;
    word-break:break-word;
}

.modal-meta-footer{
    margin-top:10px;
    font-size:11px;
    color:var(--muted);
}

/* pe ecrane mici – o singură coloană */
@media (max-width:720px){
    .modal-body-company .modal-grid{
        grid-template-columns:1fr;
    }
    .meta-label{
        flex-basis:110px;
    }
}

@media (max-width: 900px){
    .card-dashboard{
        padding:16px 12px;
    }
    .card-dashboard .table-wrap{
        box-shadow:none;
    }
    .card-dashboard table thead{
        display:none;
    }
    .card-dashboard table tbody tr{
        display:block;
        margin-bottom:12px;
    }
    .card-dashboard table tbody tr td{
        display:flex;
        justify-content:space-between;
        align-items:center;
        padding:6px 4px;
    }
    .card-dashboard table tbody tr td.actions-cell{
        justify-content:flex-start;
        align-items:flex-start;
    }
}

.card-dashboard td.actions-cell{
    justify-content:flex-start; /* sub textul ACȚIUNI */
    min-width: 190px;           /* opțional, mai mic ca înainte sau poți să-l elimini */
    padding-right: 10px;        /* padding normal, nu excesiv */
}

/* ===== FIX: scrolling în modal (body scrollabil, header/footer fixe) ===== */

.modal-dialog{
  /* limitează modalul la ecran */
  max-height: calc(100vh - 48px);
  display: flex;
  flex-direction: column;

  /* important: scroll NU pe dialog, ci doar pe body */
  overflow: hidden;
}

/* header/footer nu scrollează */
.modal-header,
.modal-footer{
  flex: 0 0 auto;
}

/* body-ul modalului scrollează */
.modal-body{
  flex: 1 1 auto;
  min-height: 0;                 /* CRUCIAL pentru flex + overflow */
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;

  margin-bottom: 0;              /* tu aveai 16px, îl mutăm în padding dacă vrei */
  padding-bottom: 12px;
}

/* cazul tău: modal-body-company (același element cu .modal-body) */
.modal-body.modal-body-company{
  min-height: 0;
  overflow: auto;
}

/* opțional: blochează scroll pe pagină când modalul e deschis */
body.modal-open{
  overflow: hidden;
}
  .smtp-test-center { text-align:center; margin-top: 14px; }
  .btn-test-smtp{
    background:#ffeb3b;
    color:#000;
    border:1px solid #f1c40f;
    padding:12px 22px;
    border-radius:12px;
    font-weight:800;
    cursor:pointer;
  }
  .btn-test-smtp:hover{ filter:brightness(.97); }