/* Groups: sharing recipes with friends and family. */

/* The share checkboxes reuse .checkset from plans.css, one group per line
   like the meal plan's slot choices. */
.sharegroups {
    background: var(--surface);
    border-color: var(--rule);
    border-radius: var(--radius-lg);
}

.sharedwith {
    color: var(--ink-soft);
    font-size: 0.95rem;
}

.group-role-form {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.group-role-form select {
    width: auto;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    font: inherit;
    font-size: 0.9rem;
    color: var(--ink);
    background-color: #FFFFFF;
    border: 1px solid var(--rule-strong);
    border-radius: var(--radius);
}

.group-roles {
    margin-top: 1rem;
    max-width: 46rem;
    color: var(--ink-soft);
    font-size: 0.95rem;
}

.group-roles summary { cursor: pointer; }

.group-invite {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.group-invite__panel {
    border: 1px solid var(--rule);
    border-radius: var(--radius-lg);
    padding: 1rem 1.25rem;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.group-invite__panel h3 { margin-top: 0; }
.group-invite__panel .form { max-width: none; }

.group-subhead { margin-top: 1.75rem; }

.group-newlink { max-width: 46rem; }
.group-newlink p { margin-top: 0; }

.group-newlink__row {
    display: flex;
    gap: 0.5rem;
}

.group-newlink__row input {
    flex: 1 1 auto;
    min-width: 0;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.85rem;
}

.group-copy {
    border: 1px solid var(--herb-line);
    background: var(--herb-wash);
    border-radius: var(--radius-lg);
    padding: 1rem 1.25rem;
    max-width: 46rem;
}

.group-copy h2 { margin-top: 0; }
.group-copy__plan { padding-left: 1.2rem; }

.checkline {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    font-weight: normal;
}

/* Several buttons in one table cell, each in its own form. Forms are blocks,
   so without this they stack; this lines them up on one row instead. */
.group-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
}

@media (max-width: 40rem) {
    .group-actions { justify-content: flex-start; }
    .group-newlink__row { flex-direction: column; }
    .group-role-form { flex-wrap: wrap; }
}
