﻿body {
    padding-top: 50px;
    padding-bottom: 20px;
}

/* Wrapping element */
/* Set some basic padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
}

/* Set widths on the form inputs since otherwise they're 100% wide */
input,
select,
textarea {
    max-width: 280px;
}

/* Responsive: Portrait tablets and up */
@media screen and (min-width: 768px) {
    .jumbotron {
        margin-top: 20px;
    }
    .body-content {
        padding: 0;
    }
}

/* ===== Desktop Enhancements ===== */

/* Tablet and up */
@media (min-width: 768px) {
    body {
        padding-bottom: 40px;
    }
    .body-content {
        padding-left: 20px;
        padding-right: 20px;
    }
    input, select, textarea {
        max-width: 400px;
    }

    /* Tables get more breathing room */
    table td, table th {
        padding: 4px 8px;
    }

    /* Filter buttons */
    .filter-group .filter-label {
        padding: 8px 16px;
        font-size: 0.9em;
    }

    /* Jump bar */
    .jump-bar a {
        padding: 6px 14px;
        font-size: 14px;
    }

    /* Button panel: taller buttons */
    .same-size-button {
        height: 38px !important;
        font-size: 0.95em !important;
    }
}

/* Desktop */
@media (min-width: 1024px) {
    .container.body-content {
        max-width: 960px;
        margin: 0 auto;
    }

    /* Show extended columns on desktop by default */
    #mdTable .ext-col {
        display: table-cell;
    }

    /* Tables */
    table td, table th {
        padding: 6px 10px;
    }

    /* Scorecard modal wider on desktop */
    #scorecardModal > div {
        max-width: 700px;
    }

    /* Leaderboard larger font on desktop */
    #leaderboard + table tr {
        font-size: 17px;
    }

    /* Login: full-width background, centered card */
    .login-wrapper {
        width: 100vw;
        margin-left: calc(-50vw + 50%);
        min-height: calc(100vh - 50px) !important;
    }
    .login-bg {
        height: 40vh !important;
    }
    .login-card {
        max-width: 420px !important;
    }
}

/* ---------------------------------------------------------------------------
   Enter Scores — the primary action once a Ryder Cup is live.

   Used on BOTH the Ryder Cup leaderboard and the dashboard hero card, so it is
   defined here rather than in either page. It used to be a 6px chip sitting
   fourth in a row of reference links (Roster / Format / Ground Rules) that get
   tapped once all day, which buried the one thing a player is there to do.

   Sized as a thumb target, not a chip: tapped on a phone, outdoors, possibly
   wearing a glove.
--------------------------------------------------------------------------- */
.rc-enter {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 12px 0 4px;
    padding: 14px 16px;
    background: linear-gradient(135deg, #1b5e20, #2e7d32);
    color: #fff;
    border-radius: 12px;
    text-decoration: none;
    box-shadow: 0 3px 12px rgba(27, 94, 32, .28);
}
.rc-enter:hover,
.rc-enter:focus { color: #fff; text-decoration: none; filter: brightness(1.07); }
.rc-enter:focus-visible { outline: 3px solid #a5d6a7; outline-offset: 2px; }
.rc-enter:active { transform: translateY(1px); }
.rc-enter-ic { font-size: 26px; line-height: 1; flex: 0 0 auto; }
.rc-enter-tx { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.rc-enter-tx .t { font-size: 1.18em; font-weight: 800; letter-spacing: .01em; }
.rc-enter-tx .s { font-size: .78em; opacity: .88; }
.rc-enter-go { font-size: 22px; font-weight: 800; opacity: .9; flex: 0 0 auto; }

/* On the narrowest phones the subtitle costs more than it adds. */
@media (max-width: 380px) {
    .rc-enter-tx .s { display: none; }
}
