/* ==========================================================================
   Theme tokens (shared palette)
   ========================================================================== */

:root {
    --plum-deep: #4A263A;
    --plum-dark: #351B2A;
    --plum-secondary: #6A4053;
    --coral: #E77972;
    --coral-dark: #D56560;
    --apricot: #F4B59D;
    --pearl: #FFFDFC;
    --bg-soft: #FBF4F1;
    --text: #3B2932;
    --text-muted: #735F68;
    --border: #EAD8D3;
}

html,
body{
    overflow-x:hidden;
    max-width:100%;
}

/* =========================
   GLOBAL
========================= */
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    background: var(--bg-soft);
    color: var(--text);
    margin:0;
}

/* =========================
   HERO
========================= */
.rr-search-hero {
    padding:50px 15px 20px;
    text-align:center;
}

.rr-hero-content h1 {
    font-size:32px;
    font-weight:700;
    margin-bottom:8px;
    color: var(--plum-deep);
}

.rr-hero-content p {
    color: var(--text-muted);
    margin-bottom:20px;
}

/* =========================
   SEARCH FORM (CLEAN)
========================= */
.rr-job-search-form {
    display:flex;
    gap:8px;
    max-width:650px;
    margin:0 auto;

    background: var(--pearl);
    padding:8px;
    border-radius:12px;

    border:1px solid var(--border);
}

/* INPUT */
.rr-job-search-form input {
    flex:1;
    border:none;
    outline:none;
    padding:12px;
    font-size:14px;
    background: var(--bg-soft);
    color: var(--text);
    border-radius:8px;
}

.rr-job-search-form input::placeholder {
    color: var(--text-muted);
}

.rr-job-search-form input:focus {
    outline: 2px solid var(--coral-dark);
    outline-offset: 2px;
}

/* BUTTON */
.rr-job-search-form button {
    background: var(--plum-deep);
    color: var(--pearl);
    border:none;
    padding:12px 18px;
    border-radius:8px;
    font-weight:600;
    cursor:pointer;
    transition: background 0.2s ease;
}

.rr-job-search-form button:hover,
.rr-job-search-form button:focus-visible {
    background: var(--plum-dark);
}

/* =========================
   JOB LIST (CENTER LIST)
========================= */
.job-list {
    max-width:800px;   /* 🔥 CENTER WIDTH */
    margin:30px auto;
    padding:0 15px;
}

/* =========================
   JOB CARD (LIST STYLE)
========================= */
.job-card {
    display:flex;
    gap:15px;

    background: var(--pearl);
    border-radius:12px;
    padding:15px;
    margin-bottom:15px;

    border:1px solid var(--border);
    transition:all 0.2s ease;
}

.job-card:hover {
    box-shadow:0 8px 25px rgba(74, 38, 58, 0.14);
    border-color: var(--coral);
}

/* IMAGE */
.job-card img {
    width:80px;
    height:80px;
    border-radius:10px;
    object-fit:cover;
    border: 1px solid var(--border);
}

/* CONTENT */
.job-card-content{
    flex:1;
    min-width:0;
}

/* TITLE */
.job-card h3 {
    font-size:16px;
    margin:0 0 6px;
    color: var(--plum-deep);
}

/* COMPANY */
.job-card .company {
    font-size:13px;
    color: var(--text-muted);
    margin-bottom:5px;
}

/* META */
.job-card .meta {
    font-size:13px;
    color: var(--text);
}

/* SALARY */
.job-card .salary {
    display:inline-block;
    background: rgba(231, 121, 114, 0.14);
    color: var(--coral-dark);
    padding:4px 8px;
    border-radius:6px;
    font-size:12px;
    margin-top:6px;
    font-weight: 600;
}

/* =========================
   NO JOBS
========================= */
.no-jobs {
    text-align:center;
    padding:40px;
    color: var(--text-muted);
}

/* =========================
   MOBILE FIX (IMPORTANT)
========================= */
@media (max-width:768px){

    .rr-hero-content h1 {
        font-size:24px;
    }

    .rr-job-search-form {
        flex-direction:column;
        padding:12px;
    }

    .rr-job-search-form input,
    .rr-job-search-form button {
        width:100%;
    }

    /* CARD STACK */
    .job-card {
        flex-direction:column;
    }

    .job-card img {
        width:100%;
        height:150px;
    }
}

.search-title {
    margin-bottom:15px;
    font-size:22px;
    font-weight:600;
    color: var(--plum-deep);
}