.google-login-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    color: var(--dark);
    font-family: "Roboto", "Helvetica Neue", Arial, sans-serif;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.25px;
    text-decoration: none;
    padding: 0 12px 0 0;
    border: 1px solid var(--cool-gray-400);
    border-radius: 4px;
    height: 40px;
    width: 100%;
    box-sizing: border-box;      /* keeps the border inside the 100% width/40px height */
    transition: background-color 0.2s, box-shadow 0.2s, border-color 0.2s;
    cursor: pointer;
}

.google-login-btn:hover {
    background-color: var(--light);
    box-shadow: 0 1px 2px 0 rgba(60,64,67,0.3), 0 1px 3px 1px rgba(60,64,67,0.15);
}

.google-login-btn:active {
    background-color: #f1f3f4;
}

.google-login-btn:focus-visible {
    outline: none;
    border-color: var(--info);
    background-color: var(--light);
}

.google-icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    flex-shrink: 0;
}

.google-icon {
    width: 18px;
    height: 18px;
    display: block;              /* removes inline baseline gap that can nudge the icon */
}

.google-button-text {
    padding-left: 0;             /* wrapper already gives spacing */
    white-space: nowrap;
    user-select: none;
}