.dinner-table-members,.dtm-consent{--dtm-ink:#204d4d;--dtm-muted:#486b69;--dtm-line:#cfe1dd;color:var(--dtm-ink);text-align:left;font-family:inherit;line-height:1.6;overflow-wrap:anywhere}
[data-dinner-table-members]{min-width:0;width:100%;max-width:100%}
.dinner-table-members{min-width:0;max-width:100%;margin-block:32px 0;border-top:1px solid var(--dtm-line);padding-block:26px 8px}
.dinner-table-members *,.dtm-consent *{box-sizing:border-box}
.dtm-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:8px}
.dtm-heading h3,.dtm-consent h3{margin:0;font-size:clamp(21px,2vw,25px);font-weight:700;line-height:1.4;text-wrap:balance}
.dtm-heading p{margin:6px 0 0;color:var(--dtm-muted);font-size:14px}
.dtm-person h4{margin:0;color:var(--dtm-ink);font-size:18px;line-height:1.5;font-weight:700}
.dtm-person h4>span{font-size:12px;font-weight:500;margin-inline-start:10px;color:var(--dtm-muted)}
.dtm-meta{margin:6px 0 0;color:var(--dtm-muted);font-size:14px;line-height:1.8}
.dtm-meta span{white-space:pre-wrap}
.dtm-intro{margin:10px 0 0;color:var(--dtm-ink);font-size:15px;max-width:66ch;line-height:1.8}
.dtm-state{font-size:16px;line-height:1.8;margin:20px 0 8px;color:var(--dtm-ink);max-width:66ch}
.dinner-table-members .dtm-link,.dinner-table-members .dtm-button{font:inherit;min-height:44px;cursor:pointer;touch-action:manipulation;display:inline-flex;align-items:center;justify-content:center;line-height:1.5}
.dinner-table-members .dtm-link{background:transparent;border:0;color:#286c6d;padding:8px 0;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.dinner-table-members .dtm-link:hover{color:#163d3e;text-decoration-thickness:2px}
.dinner-table-members .dtm-button{background:#57b7b7;color:#163d3e;border:1px solid transparent;border-radius:12px;padding:10px 18px;font-weight:650}
.dinner-table-members .dtm-button:hover{background:#79c5c5}
.dinner-table-members button:disabled{opacity:.6;cursor:wait}
.dinner-table-members :focus-visible,.dtm-consent :focus-visible{outline:3px solid #287d7e;outline-offset:4px}
.dinner-table-members ::selection,.dtm-consent ::selection{color:#163d3e;background:#c4e8e5}
.dtm-settings{margin-top:24px;border-top:1px solid var(--dtm-line);padding-top:8px}
.dinner-table-members .dtm-settings>summary{padding:12px 0;cursor:pointer;min-height:44px;font-size:14px;font-weight:600;display:list-item;list-style:disclosure-closed inside;color:var(--dtm-ink)}
.dinner-table-members .dtm-settings[open]>summary{list-style-type:disclosure-open}
.dtm-settings>summary>span{color:var(--dtm-muted);margin-inline-start:12px;font-size:12px;font-weight:400}
.dtm-settings>div{padding:16px 0 8px}
.dtm-consent{margin-top:28px;border-top:1px solid var(--dtm-line);padding-top:24px}
.dtm-consent .dtm-person{margin-top:18px}
.dtm-consent-check{display:flex;gap:12px;align-items:flex-start;margin:20px 0;min-height:44px;cursor:pointer;font-size:15px;color:var(--dtm-ink);font-weight:600}
.dtm-consent-check input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin:3px 0 0;accent-color:#287d7e}
.dtm-consent-check small{display:block;margin-top:5px;color:var(--dtm-muted);font-size:13px;font-weight:400;line-height:1.8;max-width:66ch}
.dtm-notice{margin:12px 0 0;font-size:14px;color:#286c6d;line-height:1.8;min-height:0}
.dtm-notice:empty{display:none}
.dinner-signup-cards .success+.dtm-success-members{margin-top:32px}
.dtm-carousel{margin-top:12px;min-width:0}
.dinner-table-members .dtm-viewport{--dtm-card-size:320px;--dtm-gutter:20px;position:relative;overflow-x:auto;overflow-y:hidden;margin-inline:-20px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#83ada5 transparent;touch-action:pan-x pan-y pinch-zoom;outline-offset:-4px}
.dinner-table-members .dtm-track{position:relative;display:flex;align-items:stretch;gap:12px;width:max-content;list-style:none;margin:0;padding:8px var(--dtm-gutter) 16px;box-sizing:content-box}
.dinner-table-members .dtm-slide{display:flex;flex:0 0 var(--dtm-card-size);width:var(--dtm-card-size);min-width:0;margin:0;padding:0;border:0;scroll-snap-align:center;scroll-snap-stop:always;container-type:inline-size}
.dtm-profile-card{cursor:grab;flex:1;min-width:0;min-height:296px;overflow:hidden;display:flex;flex-direction:column;border:1px solid #d0dfd8;border-radius:16px;background:#fffdf8;transition:border-color 180ms ease}
.dtm-slide.is-active .dtm-profile-card{border-color:#4d9791}
.dtm-card-profile{padding:24px 24px 22px}
.dtm-card-name{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin:0}
.dtm-card-name h4{min-width:0;max-width:100%;margin:0;color:#1c4645;font-size:32px;font-weight:700;line-height:1.35;letter-spacing:-.02em;overflow-wrap:anywhere}
.dtm-card-gender{color:#4c7069;font-size:13px;font-weight:400;line-height:1.6;white-space:nowrap}
.dtm-card-school{margin:10px 0 0;color:#2f615c;font-size:15px;font-weight:500;line-height:1.65;overflow-wrap:anywhere}
.dtm-card-school span{white-space:nowrap}
.dtm-card-major{margin:4px 0 0;color:#4c7069;font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.dtm-card-intro{flex:1;margin:0;padding:22px 24px 24px;background:#eaf3ee}
.dtm-card-intro .dtm-intro-lead{margin:0;color:#204d48;font-size:20px;font-weight:500;line-height:1.65;overflow-wrap:anywhere;text-wrap:pretty}
.dtm-card-intro .dtm-intro-rest{margin:12px 0 0;color:#476b62;font-size:14px;line-height:1.85;overflow-wrap:anywhere}
.dtm-long-name .dtm-card-name h4{font-size:24px;line-height:1.45}
.dtm-private-card .dtm-card-name h4{font-size:27px}
.dtm-private-card .dtm-card-intro .dtm-intro-lead{font-size:17px;font-weight:400;line-height:1.8}
.dtm-carousel-controls{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin-top:8px}
.dtm-swipe-hint{margin:0;color:var(--dtm-muted);font-size:12px;line-height:1.6;text-align:center}
.dtm-card-navigation{display:flex;align-items:center;justify-content:center;gap:12px;flex-shrink:0}
.dinner-table-members .dtm-arrow{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;margin:0;padding:0;border:1px solid #accdc4;border-radius:50%;color:#286c6d;background:transparent;cursor:pointer;touch-action:manipulation}
.dtm-arrow svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dinner-table-members .dtm-arrow:hover:not(:disabled){background:#dfefeb;border-color:#57b7b7}
.dinner-table-members .dtm-arrow:disabled{opacity:.4;cursor:default}
.dtm-card-position{min-width:55px;margin:0;text-align:center;color:var(--dtm-ink);font-size:14px;font-weight:700;line-height:1.5;font-variant-numeric:tabular-nums}
.dtm-card-position>span>span{font-weight:400;color:var(--dtm-muted)}
.dtm-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.dtm-viewport::-webkit-scrollbar{height:4px}
.dtm-viewport::-webkit-scrollbar-thumb{background:#83ada5;border-radius:4px}
.dtm-viewport::-webkit-scrollbar-track{background:transparent}
.dtm-viewport.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
.dtm-card-name h4,.dtm-card-school,.dtm-card-major,.dtm-card-gender,.dtm-card-intro p{cursor:text}
.dtm-viewport.is-dragging .dtm-profile-card,.dtm-viewport.is-dragging .dtm-profile-card *{cursor:grabbing}
@container(max-width:260px){.dtm-card-profile{padding:20px 20px 18px}.dtm-card-intro{padding:20px}.dtm-card-name h4{font-size:29px}.dtm-card-school{font-size:14px}.dtm-card-intro .dtm-intro-lead{font-size:18px}.dtm-long-name .dtm-card-name h4{font-size:23px}.dtm-private-card .dtm-card-name h4{font-size:25px}}
@container(max-width:220px){.dtm-card-profile{padding-inline:18px}.dtm-card-intro{padding-inline:18px}.dtm-card-name h4{font-size:27px}.dtm-card-intro .dtm-intro-lead{font-size:17px}.dtm-card-intro .dtm-intro-rest{font-size:13px}.dtm-long-name .dtm-card-name h4{font-size:22px}}
@media(max-width:600px){.dtm-heading{gap:12px}.dtm-heading h3{font-size:22px}.dtm-person h4{font-size:18px}.dinner-table-members{padding-top:24px;margin-top:28px}.dtm-consent{padding-top:24px}.dtm-settings>summary>span{display:block;margin:4px 0 0 17px}.dtm-consent-check{gap:10px}.dtm-card-navigation{gap:10px}.dtm-card-position{min-width:50px}}
@media(prefers-reduced-motion:reduce){.dtm-profile-card{transition:none!important}.dinner-table-members .dtm-viewport{scroll-behavior:auto}}
/* Keep vertical scrolling in the existing signup body, so the modal header stays visible. */
:is(#dinnerMyModal,#myDinnerModal).hz-dinner-card-signup-modal:has(.dtm-carousel)>:is(.modal,.activity-signup-sheet){overflow:hidden!important;overflow:clip!important}

/* Keep the browsing counter out of the legacy generic status-callout style. */
.dinner-table-members .dtm-card-position[role=status]{border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}
