/* Frontend private portal for EDI Lift Offers */
.elo-front-portal {
    --navy:#12172a;
    --navy-2:#1c2440;
    --gold:#c9a227;
    --gold-light:#e8c766;
    --paper:#f6f2e8;
    --paper-2:#ece5d3;
    --ink:#1a1d29;
    --line:#d9d0b8;
    --danger:#a8433c;
    --success:#3f7d5c;
    background: linear-gradient(135deg, #0d1224 0%, #1b2440 42%, #efe8d5 42%, #f6f2e8 100%);
    min-height: 100vh;
    padding: 28px;
    color: var(--ink);
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.elo-front-shell {
    display:grid;
    grid-template-columns: 280px minmax(0,1fr);
    gap:24px;
    max-width: 1560px;
    margin:0 auto;
}
.elo-front-side {
    position: sticky;
    top: 24px;
    height: calc(100vh - 56px);
    background: rgba(18,23,42,.96);
    border:1px solid rgba(232,199,102,.28);
    border-radius:24px;
    padding:22px;
    box-shadow:0 24px 60px rgba(0,0,0,.24);
}
.elo-front-brand {
    display:flex;
    align-items:center;
    gap:14px;
    color:#fff;
    margin-bottom:28px;
}
.elo-front-mark {
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    border-radius:18px;
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    color:var(--navy);
    font-weight:900;
    letter-spacing:.06em;
}
.elo-front-brand strong { display:block; font-size:17px; }
.elo-front-brand small { display:block; color:#c8cce0; margin-top:2px; }
.elo-front-nav { display:grid; gap:10px; }
.elo-front-nav a {
    display:flex;
    align-items:center;
    padding:13px 14px;
    border-radius:14px;
    color:#eef1ff;
    text-decoration:none;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.03);
    transition:.2s ease;
}
.elo-front-nav a:hover,
.elo-front-nav a.active {
    background:linear-gradient(135deg,var(--gold),var(--gold-light));
    color:var(--navy);
    transform:translateX(3px);
}
.elo-front-main { min-width:0; }
.elo-front-hero {
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    background:rgba(255,255,255,.9);
    border:1px solid rgba(217,208,184,.9);
    border-radius:24px;
    padding:24px;
    margin-bottom:22px;
    box-shadow:0 20px 50px rgba(18,23,42,.1);
}
.elo-front-hero h1 { margin:0 0 6px; color:var(--navy); font-size:30px; line-height:1.1; }
.elo-front-hero p { margin:0; color:#626876; }
.elo-front-btn,
.elo-front-btn:visited {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:0;
    border-radius:12px;
    padding:12px 16px;
    color:var(--navy);
    background:#fff;
    border:1px solid var(--line);
    text-decoration:none;
    cursor:pointer;
    font-weight:700;
    white-space:nowrap;
}
.elo-front-btn.primary { background:linear-gradient(135deg,var(--gold),var(--gold-light)); border-color:transparent; }
.elo-front-card {
    background:rgba(255,255,255,.92);
    border:1px solid rgba(217,208,184,.95);
    border-radius:22px;
    padding:22px;
    box-shadow:0 18px 44px rgba(18,23,42,.08);
}
.elo-front-stats {
    display:grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap:14px;
    margin-bottom:22px;
}
.elo-front-stats .elo-front-card { padding:18px; }
.elo-front-stats span { display:block; color:#6a7081; font-size:13px; margin-bottom:8px; }
.elo-front-stats strong { display:block; color:var(--navy); font-size:24px; line-height:1.15; }
.elo-front-table-card h2 { margin-top:0; }
.elo-front-table-scroll { overflow:auto; }
.elo-front-table { width:100%; border-collapse:separate; border-spacing:0; min-width:980px; }
.elo-front-table th { background:var(--navy); color:#fff; padding:12px 10px; text-align:left; font-size:13px; }
.elo-front-table th:first-child { border-top-left-radius:12px; }
.elo-front-table th:last-child { border-top-right-radius:12px; }
.elo-front-table td { padding:12px 10px; border-bottom:1px solid var(--line); background:#fff; vertical-align:top; }
.elo-front-status { display:inline-block; padding:5px 9px; border-radius:999px; background:#edf3ef; color:var(--success); font-size:12px; font-weight:800; }
.elo-front-actions { white-space:nowrap; }
.elo-front-actions a { margin-right:8px; text-decoration:none; font-weight:700; color:var(--navy-2); }
.elo-front-actions a.danger { color:var(--danger); }
.elo-front-filter-card form { display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.elo-front-filter-card input,
.elo-front-filter-card select,
.elo-front-settings input {
    min-height:44px;
    border-radius:12px;
    border:1px solid var(--line);
    padding:9px 12px;
    background:#fff;
}
.elo-front-settings form { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:16px; }
.elo-front-settings label { display:grid; gap:6px; font-weight:700; color:var(--navy); }
.elo-front-settings label span { font-size:13px; color:#5e6474; }
.elo-front-settings button { grid-column:1 / -1; justify-self:start; }
.elo-front-notice { padding:13px 16px; border-radius:14px; margin-bottom:18px; font-weight:700; }
.elo-front-notice.success { background:#e9f4ed; color:var(--success); border:1px solid #bcd9c8; }
.elo-front-access { max-width:520px; margin:60px auto; text-align:center; }
.elo-front-form-wrap {
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
}
.elo-front-form-wrap > h1,
.elo-front-form-wrap > .wp-header-end { display:none !important; }
.elo-front-portal .elo-sidebar { display:none !important; }
.elo-front-portal .elo-form-nav ul { border-radius:20px; overflow:hidden; }
.elo-front-portal .elo-form-sections { border-radius:24px; box-shadow:0 20px 50px rgba(18,23,42,.08); }
.elo-front-portal .elo-section { background:#fff; border:1px solid var(--line); border-radius:20px; padding:20px; }
.elo-front-portal .button,
.elo-front-portal button.button,
.elo-front-portal input.button {
    border-radius:12px !important;
    min-height:40px;
    padding:7px 14px !important;
}
.elo-front-portal .button-primary { background:var(--gold) !important; color:var(--navy) !important; border-color:var(--gold) !important; }
@media (max-width:1100px){
    .elo-front-shell{grid-template-columns:1fr;}
    .elo-front-side{position:relative;top:auto;height:auto;}
    .elo-front-nav{grid-template-columns:repeat(4,minmax(0,1fr));}
    .elo-front-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:720px){
    .elo-front-portal{padding:14px;}
    .elo-front-nav{grid-template-columns:1fr 1fr;}
    .elo-front-hero{display:block;}
    .elo-front-hero .elo-front-btn{margin-top:14px;}
    .elo-front-stats{grid-template-columns:1fr;}
    .elo-front-settings form{grid-template-columns:1fr;}
}
