/* =========================================================
   RideMonkey Bike Context Header — Shared Component
   ========================================================= */


/* ---------------------------------------------------------
   Header strip — bike name + action link

   Deliberately NOT styled like .rm-card (no border-radius,
   no side/top border) — it's a full-bleed page-title strip
   that sits flush under the app nav, edge to edge like the
   nav bars above it. Do not add the rm-card class back onto
   this component's markup, or the generic card rules will
   override this file (higher specificity).

   The negative left/right margin + calc width breaks it out
   of .rm-app-content's 20px side padding (see app.css —
   that padding is the ONLY thing insetting it). The -24px
   top margin cancels that same container's top padding so
   it sits flush under the nav with no gap.
   --------------------------------------------------------- */

.rm-bike-context-header {
    width: calc(100% + 40px);
    margin: -24px -20px 24px;
    padding: 0;

    background: #ffffff;

    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);

    overflow: hidden;
}

.rm-bike-context-header-top {
    display: flex;

    align-items: center;
    justify-content: space-between;
    gap: 10px;

    padding: 12px 20px 10px;

    background: #faf9f6;

    border-bottom: 2px solid #ff4b00;
}

.rm-bike-context-header-title {
    display: flex;
    flex-direction: column;

    gap: 1px;

    color: #222222;
    text-decoration: none;

    line-height: 1.25;
}

.rm-bike-context-header-title:hover,
.rm-bike-context-header-title:focus {
    color: #ff4b00;
}

.rm-bike-context-header-nickname {
    font-size: 18px;
    font-weight: 700;
}

.rm-bike-context-header-makemodel {
    color: #666666;

    font-size: 13px;
    font-weight: 500;
}

.rm-bike-context-header-action {
    display: flex;
    flex-shrink: 0;

    align-items: center;
    justify-content: center;

    min-width: 32px;
    min-height: 32px;

    color: #ff4b00;
    text-decoration: none;

    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}

.rm-bike-context-header-page-title {
    padding: 4px 20px;

    color: #ff4b00;
    text-align: right;

    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}


/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 767px) {

    .rm-bike-context-header {
        margin-bottom: 18px;
    }

    .rm-bike-context-header-top {
        padding: 8px 16px 6px;
    }

    .rm-bike-context-header-nickname {
        font-size: 15px;
    }

    .rm-bike-context-header-makemodel {
        font-size: 11px;
    }

    .rm-bike-context-header-action {
        font-size: 18px;
    }

    .rm-bike-context-header-page-title {
        padding: 3px 16px;

        font-size: 10px;
    }

}