/* MEUTFS Core 1.0.0 Beta 48 — Frontend signup cards matching UMR.
   Page-local styles. WoltLab style tokens remain authoritative. */
.meutfsSignupLayout {
    --meutfs-signup-border: var(--wcfContentBorderInner,var(--wcfContentBorder,#30343a));
    --meutfs-signup-surface: var(--wcfContentContainerBackground,var(--wcfContentBackground,transparent));
    --meutfs-signup-accent: var(--wcfContentLink,currentColor);
    --meutfs-signup-muted: var(--wcfContentDimmedText,#888);
    --meutfs-signup-radius: var(--wcfBorderRadiusContainer,.4rem);
    min-width:0;max-width:100%;
}
.meutfsSignupLayout *, .meutfsSignupLayout *::before,.meutfsSignupLayout *::after {box-sizing:border-box;}
.meutfsSignupLayout .meutfsSignupBody {display:block;padding:1rem;min-width:0;max-width:100%;}
.meutfsSignupLayout .meutfsSignupActivityPanel,
.meutfsSignupLayout .meutfsSignupUnit {
    min-width:0;max-width:100%;background:var(--meutfs-signup-surface);
    border:1px solid var(--meutfs-signup-border);border-radius:var(--meutfs-signup-radius);
}
.meutfsSignupLayout .meutfsSignupActivityPanel {padding:1rem;margin:0 0 1rem;}
.meutfsSignupLayout .meutfsSignupActivityHeading,
.meutfsSignupLayout .meutfsSignupUnitHeader {
    display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .8rem;
    min-width:0;align-items:center;
}
.meutfsSignupLayout .meutfsSignupActivityHeadingText,
.meutfsSignupLayout .meutfsSignupUnitNameBox {display:flex;flex-direction:column;gap:.16rem;min-width:0;overflow-wrap:anywhere;}
.meutfsSignupLayout .meutfsSignupEyebrow {
    font-size:.75em;letter-spacing:.065em;font-weight:700;text-transform:uppercase;
    color:var(--meutfs-signup-accent);
}
.meutfsSignupLayout .meutfsSignupActivityIdentity {display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;font-size:1em;}
.meutfsSignupLayout .meutfsSignupActivityIdentity strong {font-weight:700;}
.meutfsSignupLayout .meutfsSignupActivityIdentity > span {opacity:.85;}
.meutfsSignupLayout .meutfsSignupMetrics {display:flex;align-items:flex-end;flex-direction:column;gap:.15rem;font-size:.86em;}
.meutfsSignupLayout .meutfsSignupCount,
.meutfsSignupLayout .meutfsSignupStrength {font-variant-numeric:tabular-nums;white-space:nowrap;}
.meutfsSignupLayout .meutfsSignupCount {font-weight:700;}
.meutfsSignupLayout .meutfsSignupReservation {opacity:.75;white-space:nowrap;}
.meutfsSignupLayout progress.meutfsSignupProgress {
    display:block;grid-column:1/-1;width:100%;height:6px;margin:.55rem 0 .35rem;
    appearance:none;-webkit-appearance:none;border:0;border-radius:100px;overflow:hidden;
    background:var(--meutfs-signup-border);color:var(--meutfs-signup-accent);
    accent-color:var(--meutfs-signup-accent);
}
.meutfsSignupLayout progress.meutfsSignupProgress::-webkit-progress-bar {background:var(--meutfs-signup-border);border-radius:100px;}
.meutfsSignupLayout progress.meutfsSignupProgress::-webkit-progress-value {background:var(--meutfs-signup-accent);border-radius:100px;}
.meutfsSignupLayout progress.meutfsSignupProgress::-moz-progress-bar {background:var(--meutfs-signup-accent);border-radius:100px;}
.meutfsSignupLayout .meutfsSignupMeta {
    display:flex;align-items:center;flex-wrap:wrap;gap:.35rem 1rem;
    margin:.65rem 0 0;font-size:.87em;opacity:.88;overflow-wrap:anywhere;
}
.meutfsSignupLayout .meutfsSignupMeta strong {font-weight:700;}
.meutfsSignupLayout .meutfsSignupActions {display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:1rem;}
.meutfsSignupLayout .meutfsSignupActions form,
.meutfsSignupLayout .meutfsSignupSlotAction form {margin:0;}
.meutfsSignupLayout .meutfsSignupActions .button {max-width:100%;}
.meutfsSignupLayout .meutfsSignupUnits {display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;}
.meutfsSignupLayout .meutfsSignupUnit {overflow:hidden;}
.meutfsSignupLayout .meutfsSignupUnitHeader {padding:.8rem .9rem;}
.meutfsSignupLayout .meutfsSignupUnitName {
    font-size:1.07em;line-height:1.3;font-weight:700;margin:0;overflow-wrap:anywhere;color:inherit;
}
.meutfsSignupLayout .meutfsSignupStrength {display:flex;gap:.4rem;align-items:center;font-size:.88em;}
.meutfsSignupLayout .meutfsSignupRoster {
    list-style:none;margin:0;padding:.2rem .9rem .65rem;counter-reset:meutfsSignupPosition;
}
.meutfsSignupLayout .meutfsSignupSlot {
    display:grid;grid-template-columns:8px 35px minmax(0,1fr) auto;gap:.6rem;
    align-items:center;min-width:0;margin:0;padding:.6rem .1rem;
    border-top:1px solid var(--meutfs-signup-border);counter-increment:meutfsSignupPosition;
}
.meutfsSignupLayout .meutfsSignupStatusDot {
    width:8px;height:8px;border-radius:50%;background:var(--meutfs-signup-border);
}
.meutfsSignupLayout .meutfsSignupSlot--occupied .meutfsSignupStatusDot,
.meutfsSignupLayout .meutfsSignupSlot--mine .meutfsSignupStatusDot {background:var(--meutfs-signup-accent);}
.meutfsSignupLayout .meutfsSignupSlot--reserved .meutfsSignupStatusDot {background:var(--wcfWarningColor,#bd9828);}
.meutfsSignupLayout .meutfsSignupSlotNumber {
    display:inline-flex;align-items:center;justify-content:center;min-width:31px;min-height:22px;
    border:1px solid var(--meutfs-signup-border);border-radius:var(--wcfBorderRadius,.25rem);
    color:var(--meutfs-signup-accent);font-size:.75em;font-weight:700;font-variant-numeric:tabular-nums;
}
.meutfsSignupLayout .meutfsSignupSlotNumber::before {content:counter(meutfsSignupPosition,decimal-leading-zero);}
.meutfsSignupLayout .meutfsSignupSlot--occupied .meutfsSignupSlotNumber,
.meutfsSignupLayout .meutfsSignupSlot--mine .meutfsSignupSlotNumber {border-color:var(--meutfs-signup-accent);}
.meutfsSignupLayout .meutfsSignupSlotText {display:flex;flex-direction:column;gap:.1rem;min-width:0;overflow-wrap:anywhere;}
.meutfsSignupLayout .meutfsSignupSlotTitle {font-weight:650;line-height:1.3;font-size:.95em;}
.meutfsSignupLayout .meutfsSignupSlotPerson {font-size:.83em;line-height:1.4;opacity:.79;min-width:0;}
.meutfsSignupLayout .meutfsSignupSlotPerson a {font-weight:650;color:inherit;text-decoration:none;}
.meutfsSignupLayout .meutfsSignupSlotPerson a:hover {text-decoration:underline;}
.meutfsSignupLayout .meutfsSignupVacant {font-style:italic;color:var(--meutfs-signup-muted);}
.meutfsSignupLayout .meutfsSignupSlotAction {min-width:0;display:flex;align-items:center;justify-content:flex-end;font-size:.83em;}
.meutfsSignupLayout .meutfsSignupSlotAction .button {max-width:100%;white-space:normal;}
.meutfsSignupLayout .meutfsSignupMuted {opacity:.65;}
.meutfsSignupLayout .meutfsSignupMineLabel {font-weight:700;color:var(--meutfs-signup-accent);}
.meutfsSignupLayout .meutfsSignupSlot--mine .meutfsSignupSlotTitle {color:var(--meutfs-signup-accent);}
.meutfsSignupLayout .meutfsSignupNotice {margin-top:1rem;}
@media(max-width:700px) {
    .meutfsSignupLayout .meutfsSignupBody {padding:.7rem;}
    .meutfsSignupLayout .meutfsSignupActivityPanel {padding:.75rem;}
    .meutfsSignupLayout .meutfsSignupSlot {grid-template-columns:8px 32px minmax(0,1fr);gap:.4rem;}
    .meutfsSignupLayout .meutfsSignupSlotAction {grid-column:3;justify-content:flex-start;padding-top:.1rem;}
    .meutfsSignupLayout .meutfsSignupSlotAction .button {min-height:2rem;}
    .meutfsSignupLayout .meutfsSignupRoster {padding:0 .65rem .5rem;}
    .meutfsSignupLayout .meutfsSignupUnitHeader {padding:.7rem;}
}
@media(max-width:440px) {
    .meutfsSignupLayout .meutfsSignupActivityHeading {grid-template-columns:minmax(0,1fr);}
    .meutfsSignupLayout .meutfsSignupMetrics {flex-direction:row;justify-content:space-between;gap:.6rem;}
    .meutfsSignupLayout .meutfsSignupActions form {flex:1 1 calc(50% - .4rem);}
    .meutfsSignupLayout .meutfsSignupActions .button {width:100%;}
}
