*{box-sizing:border-box}
body{
    margin:0;
    font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display",system-ui,sans-serif;
    color:#fff;
}

/* ===== BACKGROUND ===== */
.vac-bg{
    min-height:100vh;
    background:
            radial-gradient(1200px 600px at 20% -10%, #3a1b6a 0%, rgba(58,27,106,.2) 40%, transparent 60%),
            linear-gradient(180deg,#2b0f4a 0%, #12091f 45%, #07040e 100%);
    position:relative;
    overflow:hidden;
}
.vac-bg::before{
    content:"";
    position:absolute; inset:0;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    pointer-events:none;
}

/* ===== LAYOUT ===== */
.vac-container{
    position:relative;
    padding:16px 16px 110px;
}

/* ===== HERO ===== */
.vac-hero{
    display:flex; align-items:flex-start; justify-content:space-between;
    margin-top:6px;
}
.vac-title{
    font-size:28px; font-weight:700; letter-spacing:.2px;
}
.vac-sub{
    margin-top:6px;
    font-size:14px; color:rgba(255,255,255,.75);
}
.vac-hero-btn{
    width:44px;height:44px;border-radius:50%;
    display:grid;place-items:center;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.18);
}

/* ===== SEGMENT ===== */
.vac-seg{
    display:flex; gap:10px; margin:18px 0 14px;
}
.vac-seg-btn{
    display:flex; align-items:center; gap:8px;
    padding:10px 14px; border-radius:16px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    font-weight:600; font-size:14px;
}
.vac-seg-btn.inactive{
    background:rgba(255,255,255,.06);
    opacity:.8;
}

/* ===== SEARCH ===== */
.vac-search{
    margin:12px 0;
    display:flex; align-items:center; gap:10px;
    padding:14px 16px; border-radius:18px;
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.18);
}
.vac-search input{
    flex:1; background:transparent; border:0; outline:0;
    color:#fff; font-size:15px;
}
.vac-search input::placeholder{color:rgba(255,255,255,.6)}

/* ===== FILTERS ===== */
.vac-filters{
    display:flex; align-items:center; gap:10px; margin:12px 0 18px;
}
.vac-filter{
    display:flex; align-items:center; gap:8px;
    padding:10px 14px; border-radius:16px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    font-weight:600; font-size:14px;
}
.vac-filter.icon{
    width:44px;height:44px; padding:0; justify-content:center;
}

/* ===== SECTION ===== */
.vac-section{
    font-size:20px; font-weight:700; margin:8px 0 12px;
}

/* ===== CARD ===== */
.job-card-xl{
    border-radius:22px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    padding:16px;
}
.job-card-top{
    display:flex; justify-content:space-between; align-items:center;
}
.chip{
    padding:6px 12px; border-radius:999px;
    background:rgba(255,255,255,.18);
    font-weight:700; font-size:13px;
}
.bookmark{
    width:36px;height:36px;border-radius:12px;
    display:grid;place-items:center;
    background:rgba(255,255,255,.18);
}
.job-title{
    margin-top:10px; font-size:22px; font-weight:700;
}
.job-loc{
    margin-top:4px; font-size:14px; color:rgba(255,255,255,.75);
}
.job-row{
    margin-top:8px; display:flex; align-items:center; gap:8px;
    font-size:14px; color:rgba(255,255,255,.9);
}
.job-tags{
    margin-top:12px; display:flex; flex-wrap:wrap; gap:8px;
}
.job-tag{
    padding:8px 12px; border-radius:999px;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.18);
    font-weight:600; font-size:13px;
}

/* ===== FAB ===== */
.vac-fab{
    position:fixed; left:16px; right:16px; bottom:86px;
    height:56px; border-radius:28px;
    display:flex; align-items:center; justify-content:center; gap:10px;
    background:linear-gradient(90deg,#9b4dff,#7b3cff);
    font-size:18px; font-weight:700;
    box-shadow:0 10px 30px rgba(123,60,255,.45);
}
