/* Screen styles for #/activitati — owned by its screen agent. Prefix: "activitati-".
   Reuses the design system (ui-*) and subject colour pairs (.ui-sub--* -> --_fg / --_bg). */

.activitati { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; padding-bottom: var(--sp-7); }
.activitati-sec { margin-top: var(--sp-7); min-width: 0; }
.activitati-sec:first-child { margin-top: 0; }
.activitati-sec--tight { margin-top: var(--sp-5); }
.activitati-sec__head { margin-top: 0; flex-wrap: wrap; row-gap: var(--sp-2); }
.activitati-sec__tools { display: flex; align-items: center; gap: var(--sp-2); flex-wrap: wrap; min-width: 0; }
.activitati-sec__sub { margin: calc(var(--sp-2) * -1) 0 var(--sp-3); }
.activitati-note { display: flex; align-items: flex-start; gap: 6px; margin-top: var(--sp-3); }
.activitati-sheet .activitati-note { margin-top: 0; }
.activitati-note .ui-i { margin-top: 2px; }
.activitati-back { margin: var(--sp-3) 0 calc(var(--sp-3) * -1) -12px; }
.activitati-back + .ui-pagehead { padding-top: var(--sp-3); }
.activitati .ui-pagehead { margin-bottom: var(--sp-2); }
.activitati .sh-pagehead__actions { gap: var(--sp-2); }
.activitati .sh-pagehead + .activitati-sec { margin-top: var(--sp-4); }
/* phones: title, then the one-line summary, then the actions (the shell puts actions next to the title) */
@media (max-width: 767px) {
  .activitati .sh-pagehead__row { display: contents; }
  .activitati .sh-pagehead .ui-pagehead__text { order: 1; }
  .activitati .sh-pagehead__actions { order: 2; margin-top: 2px; }
  .activitati--detail .activitati-layout, .activitati--group .activitati-stats { margin-top: var(--sp-2); }
}

/* ---------- tags & pills ---------- */
.activitati-tag { display: inline-flex; align-items: center; gap: 4px; min-height: 24px; padding: 2px 9px; border-radius: var(--r-pill);
  background: var(--surface-3); color: var(--ink-2); font-size: var(--fs-label-s); font-weight: var(--fw-semibold); white-space: nowrap; max-width: 100%; }
/* longer (English) tags wrap inside the card instead of being clipped */
.activitati-tag > span { min-width: 0; white-space: normal; overflow-wrap: anywhere; line-height: 1.25; }
.activitati-tag .ui-i { flex-shrink: 0; }
.activitati-pill { display: inline-flex; align-items: center; gap: 4px; min-height: 24px; padding: 2px 9px; border-radius: var(--r-pill);
  font-size: var(--fs-label-s); font-weight: var(--fw-semibold); white-space: nowrap; }
.activitati-pill--platit, .activitati-pill--ok { background: var(--success-soft); color: var(--success-ink); }
.activitati-pill--scadent { background: var(--warning-soft); color: var(--warning-ink); }

/* ---------- list: activity cards ---------- */
.activitati-cards { display: grid; gap: var(--sp-3); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 768px) { .activitati-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4); } }
.activitati-card { display: flex; flex-direction: column; gap: 8px; color: inherit; text-decoration: none; overflow: hidden; }
.activitati-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--_fg, var(--primary)); opacity: .75; }
.activitati-card__top { display: flex; align-items: flex-start; gap: var(--sp-3); margin-bottom: 4px; }
.activitati-card__icon { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; border-radius: 14px; background: var(--_bg, var(--primary-soft)); color: var(--_fg, var(--primary-ink)); }
.activitati-card__icon .ui-i { width: 22px; height: 22px; }
.activitati-card__head { flex: 1; min-width: 0; display: grid; gap: 3px; }
.activitati-card__head .ui-eyebrow { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.activitati-card__title { font-family: var(--font-display); font-weight: var(--fw-regular); font-size: var(--fs-display-s); line-height: 1.2; letter-spacing: var(--ls-display); }
.activitati-card__go { color: var(--subtle); margin-top: 10px; transition: transform var(--dur-2) var(--ease-standard); }
.activitati-card:hover .activitati-card__go { transform: translateX(2px); }
.activitati-card__meta { display: flex; align-items: flex-start; gap: 8px; font-size: var(--fs-body-s); color: var(--ink-2); line-height: 1.4; }
.activitati-card__meta .ui-i { color: var(--muted); margin-top: 1px; }
.activitati-card__meta b { font-weight: var(--fw-semibold); color: var(--ink); }
.activitati-card__warn { color: var(--warning-ink); font-weight: var(--fw-semibold); }
.activitati-card__foot { display: flex; align-items: center; gap: var(--sp-2); flex-wrap: wrap; margin-top: auto; padding-top: var(--sp-3); }
/* the whole card opens the activity (stretched title link); the visibility stack is its own button, above the link */
.activitati-card__link { color: inherit; text-decoration: none; }
.activitati-card__link::after { content: ""; position: absolute; inset: 0; border-radius: inherit; z-index: 1; }
.activitati-card__link:focus-visible { outline: none; }
.activitati-card:has(.activitati-card__link:focus-visible) { box-shadow: var(--focus-ring); }
.activitati-card__foot .sh-vis { z-index: 2; }

/* ---------- list: compact empty state ---------- */
.activitati-empty { display: flex; align-items: center; gap: var(--sp-4); flex-wrap: wrap; padding: var(--sp-4) var(--sp-5); }
.activitati-empty__ic { display: grid; place-items: center; width: 48px; height: 48px; flex-shrink: 0; border-radius: 16px; background: var(--primary-soft); color: var(--primary-ink); transform: rotate(-4deg); }
.activitati-empty__ic .ui-i { width: 24px; height: 24px; transform: rotate(4deg); }
.activitati-empty__body { flex: 1 1 220px; min-width: 0; display: grid; gap: 2px; }
.activitati-empty__title { font-family: var(--font-display); font-size: var(--fs-title); line-height: 1.25; }
.activitati-empty__act { flex-shrink: 0; }
@media (max-width: 479px) { .activitati-empty__act { width: 100%; padding-left: calc(48px + var(--sp-4)); } }

/* ---------- list: requests ---------- */
.activitati-req { flex-wrap: wrap; align-items: flex-start; }
.activitati-req__sub { display: block; font-size: var(--fs-body-s); color: var(--muted); line-height: 1.4; }
.activitati-req__state { justify-self: start; margin-top: 6px; }
.activitati-req .ui-row__body { display: grid; justify-items: start; }
.activitati-req__acts { display: flex; align-items: center; gap: var(--sp-2); flex-wrap: wrap; justify-content: flex-end; margin-left: auto; align-self: center; }
@media (max-width: 767px) {
  .activitati-req .ui-row__body { flex-basis: calc(100% - 60px); }
  .activitati-req__acts { width: 100%; justify-content: flex-start; padding-left: 40px; margin-left: 0; }
}
.activitati .ui-callout__body > p:not(.ui-callout__title) + p { margin-top: 6px; }

/* ---------- list: offerings from the real timetable ---------- */
.activitati-offer .ui-callout { margin-bottom: var(--sp-4); }
.activitati-days__segwrap { margin-bottom: var(--sp-3); }
.activitati-days { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-3); }
.activitati-day { display: none; min-width: 0; }
.activitati-day.is-active { display: grid; gap: var(--sp-2); align-content: start; }
.activitati-day__name { display: none; font-size: var(--fs-label); font-weight: var(--fw-bold); letter-spacing: .06em; text-transform: uppercase; color: var(--muted); padding: 0 2px 4px; }
@media (min-width: 1100px) {
  .activitati-days__segwrap { display: none; }
  .activitati-days { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--sp-3); }
  .activitati-day, .activitati-day.is-active { display: grid; gap: var(--sp-2); align-content: start; }
  .activitati-day__name { display: block; }
}
.activitati-slot { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: 10px; box-shadow: var(--sh-1); display: grid; gap: 8px; }
.activitati-slot__time { display: flex; align-items: center; justify-content: space-between; gap: 6px; font-size: var(--fs-label); font-weight: var(--fw-semibold); color: var(--ink-2); }
.activitati-slot__alt { font-size: var(--fs-label-s); font-weight: var(--fw-semibold); color: var(--muted); background: var(--surface-3); padding: 1px 7px; border-radius: var(--r-pill); }
.activitati-slot__opts { display: grid; gap: 4px; }
.activitati-slot__or { justify-self: center; font-size: var(--fs-label-s); color: var(--subtle); font-style: italic; line-height: 1; }
.activitati-opt { position: relative; display: flex; align-items: center; gap: 8px; width: 100%; min-height: var(--touch); padding: 6px 10px 6px 6px;
  border-radius: 12px; border: 1px dashed color-mix(in srgb, var(--_fg, var(--primary)) 45%, transparent); background: color-mix(in srgb, var(--_bg, var(--primary-soft)) 55%, var(--surface));
  color: var(--ink); text-align: left; font-size: var(--fs-body-s); font-weight: var(--fw-semibold); cursor: pointer; transition: background var(--dur-2), border-color var(--dur-2), transform var(--dur-1); }
.activitati-opt:hover { background: var(--_bg, var(--primary-soft)); border-color: var(--_fg, var(--primary)); }
.activitati-opt:active { transform: scale(.985); }
.activitati-opt__ic { display: grid; place-items: center; width: 30px; height: 30px; flex-shrink: 0; border-radius: 9px; background: var(--surface); color: var(--_fg, var(--primary-ink)); }
.activitati-opt__name { flex: 1; min-width: 0; overflow-wrap: anywhere; line-height: 1.25; }
.activitati-opt__flag { display: inline-flex; align-items: center; gap: 3px; flex-shrink: 0; padding: 2px 7px; border-radius: var(--r-pill); font-size: var(--fs-label-s); font-weight: var(--fw-bold); background: var(--surface); color: var(--ink-2); }
.activitati-opt.is-enrolled { border-style: solid; border-color: var(--_fg, var(--primary)); background: var(--_bg, var(--primary-soft)); }
.activitati-opt.is-enrolled .activitati-opt__flag { background: var(--primary); color: var(--on-primary); }
.activitati-opt.is-requested .activitati-opt__flag { background: var(--ai-soft); color: var(--ai-ink); }
@media (min-width: 1100px) and (max-width: 1320px) { .activitati-opt__ic { display: none; } .activitati-opt { padding-left: 10px; } }
.activitati-offer__prov { margin-top: var(--sp-3); }

/* ---------- detail layout ---------- */
.activitati-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-5); margin-top: var(--sp-4); align-items: start; }
.activitati-main, .activitati-side { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-4); min-width: 0; align-content: start; }
.activitati-main > .activitati-sec { margin-top: var(--sp-3); }
.activitati-main > .activitati-sec:first-child { margin-top: 0; }
@media (min-width: 1100px) {
  .activitati-layout { grid-template-columns: minmax(0, 1fr) var(--panel-w); gap: var(--sp-7); }
  .activitati-side { position: sticky; top: calc(var(--sh-top-h) + var(--sp-4)); }
}
/* tablet: side boxes flow in two balanced columns (no ragged grid gaps) */
@media (min-width: 768px) and (max-width: 1099px) {
  .activitati-side { display: block; columns: 2; column-gap: var(--sp-4); }
  .activitati-side > * { break-inside: avoid; -webkit-column-break-inside: avoid; margin-bottom: var(--sp-4); }
}

/* next session hero */
.activitati-next { display: flex; gap: var(--sp-4); align-items: flex-start; padding: var(--sp-5); border-radius: var(--r-lg);
  background: linear-gradient(135deg, var(--_bg, var(--primary-soft)), color-mix(in srgb, var(--_bg, var(--primary-soft)) 35%, var(--surface)));
  border: 1px solid color-mix(in srgb, var(--_fg, var(--primary)) 18%, transparent); }
.activitati-next__date { display: grid; justify-items: center; align-content: center; width: 64px; min-height: 76px; flex-shrink: 0; border-radius: 16px;
  background: var(--surface); color: var(--_fg, var(--primary-ink)); box-shadow: var(--sh-1); font-size: var(--fs-label-s); font-weight: var(--fw-bold); text-transform: uppercase; letter-spacing: .06em; }
.activitati-next__date b { font-family: var(--font-display); font-size: 1.9rem; line-height: 1.05; font-weight: var(--fw-medium); letter-spacing: 0; color: var(--ink); }
.activitati-next__body { min-width: 0; display: grid; gap: 6px; }
.activitati-next__title { font-family: var(--font-display); font-weight: var(--fw-regular); font-size: var(--fs-display-s); line-height: 1.2; letter-spacing: var(--ls-display); }
.activitati-next__meta { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: var(--fs-body-s); color: var(--ink-2); }
.activitati-next__meta > span { display: inline-flex; align-items: center; gap: 6px; }
.activitati-next__meta .ui-i { color: var(--_fg, var(--muted)); }
.activitati-next__exc { display: flex; gap: 10px; align-items: flex-start; margin-top: 6px; padding: 10px 12px; border-radius: var(--r-sm); background: var(--warning-soft); color: var(--warning-ink); font-size: var(--fs-body-s); }
.activitati-next__exc .ui-i { margin-top: 2px; }
.activitati-next__exc p { color: var(--ink-2); }
.activitati-next { position: relative; }
.activitati-next__body { flex: 1; }
.activitati-next__edit { flex-shrink: 0; margin: -6px -8px 0 auto; }
@media (max-width: 479px) { .activitati-next__edit { padding-inline: 10px; } .activitati-next__edit-l { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } }
@media (max-width: 767px) { .activitati-next { padding: var(--sp-4); gap: var(--sp-3); } .activitati-next__date { width: 56px; min-height: 68px; } }

/* carpool rota */
.activitati-rota__row { align-items: flex-start; }
.activitati-mini { display: grid; place-items: center; align-content: center; gap: 0; background: var(--_bg, var(--surface-3)); color: var(--_fg, var(--ink-2)); line-height: 1.05; }
.activitati-mini small { font-size: 10px; font-weight: var(--fw-bold); text-transform: uppercase; letter-spacing: .06em; }
.activitati-mini b { font-family: var(--font-display); font-size: 1.15rem; font-weight: var(--fw-medium); color: var(--ink); }
.activitati-rota__who { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; font-size: var(--fs-body-s); color: var(--ink-2); }
.activitati-rota__who .ui-avatar { --_size: 22px; }
.activitati-rota__none { display: inline-flex; align-items: center; gap: 4px; color: var(--warning-ink); font-weight: var(--fw-semibold); }
.activitati-rota__by { display: block; margin-top: 2px; color: var(--muted); font-size: var(--fs-caption); }
.activitati-rota__exc, .activitati-rota__warn { display: flex; align-items: flex-start; gap: 5px; margin-top: 4px; font-size: var(--fs-caption); line-height: 1.4; }
.activitati-rota__exc { color: var(--warning-ink); }
.activitati-rota__warn { color: var(--danger-ink); }
.activitati-rota__exc .ui-i, .activitati-rota__warn .ui-i { margin-top: 2px; }
@media (max-width: 359px) {
  .activitati-rota__row { flex-wrap: wrap; }
  .activitati-rota__row .ui-row__body { flex-basis: calc(100% - 60px); }
  .activitati-rota__row .ui-row__trail { width: 100%; padding-left: 52px; }
}

/* posts */
.activitati-card--pad { padding: var(--sp-5); }
.activitati-posts .ui-tl__dot { background: var(--_bg, var(--surface-3)); color: var(--_fg, var(--ink-2)); }
.activitati-post--change .ui-tl__dot { background: var(--warning-soft); color: var(--warning-ink); }
.activitati-post--change .ui-tl__title { color: var(--ink); }
.activitati-compose { display: grid; gap: var(--sp-3); margin-bottom: var(--sp-3); }
.activitati-compose .ui-check { padding: 4px 0; }
.activitati-compose__date { display: grid; gap: 6px; max-width: 360px; }
.activitati-compose__date[hidden] { display: none; }
.activitati-compose__foot { display: flex; align-items: center; gap: var(--sp-2) var(--sp-3); flex-wrap: wrap; }
.activitati-compose__foot .ui-caption { flex: 1 1 180px; }

/* albums */
.activitati-album { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: var(--sp-4); box-shadow: var(--sh-1); display: grid; gap: var(--sp-3); }
.activitati-album + .activitati-album { margin-top: var(--sp-3); }
.activitati-album__head { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--sp-3); flex-wrap: wrap; }
.activitati-album__title { font-size: var(--fs-title); font-weight: var(--fw-semibold); letter-spacing: var(--ls-tight); }
.activitati-album__empty { padding: var(--sp-3) 0; }
.activitati-photos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; border-radius: var(--r-md); overflow: hidden; }
@media (min-width: 768px) { .activitati-photos { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.activitati-photos .ui-photo { border-radius: 0; cursor: pointer; }
.activitati-photos__more { display: grid; place-items: center; aspect-ratio: 1; background: var(--surface-3); color: var(--ink-2); font-weight: var(--fw-bold); text-decoration: none; }

/* side boxes */
.activitati-box { display: grid; gap: var(--sp-3); padding: var(--sp-4) var(--sp-5); min-width: 0; }
.activitati-box--flush { padding-inline: 0; padding-bottom: var(--sp-2); }
.activitati-box--flush > .activitati-box__head, .activitati-box--flush > .activitati-box__foot { padding-inline: var(--sp-5); }
.activitati-box--flush .ui-list--plain .ui-row { padding-inline: var(--sp-5); }
.activitati-box--flush .ui-list--plain .ui-row + .ui-row::before { left: calc(var(--sp-5) + 52px); }
.activitati-box__head { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); flex-wrap: wrap; min-height: 32px; }
.activitati-box__title { font-size: var(--fs-title); font-weight: var(--fw-semibold); letter-spacing: var(--ls-tight); }
.activitati-box__foot { display: flex; gap: 6px; align-items: flex-start; padding-bottom: var(--sp-2); }
.activitati-box__foot .ui-i { margin-top: 2px; }
.activitati-box .ui-kv__row { padding: 10px 0; }
.activitati-box .ui-kv__row dd { overflow-wrap: anywhere; }
.activitati-box__prov { border-top: 1px solid var(--line); padding-top: var(--sp-3); }
.activitati-bring { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--sp-3); }
.activitati-bring__it { padding: 8px 0; min-height: 40px; }
.activitati-bring__it input:checked + .ui-check__text { color: var(--muted); text-decoration: line-through; }
.activitati-cost__amt { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.activitati-cost__amt b { font-family: var(--font-display); font-size: var(--fs-display-s); font-weight: var(--fw-regular); }
.activitati-cost__amt span { color: var(--muted); font-size: var(--fs-body-s); }
.activitati-cost__list { list-style: none; margin: 0; padding: 0; display: grid; }
.activitati-cost__list li { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); padding: 8px 0; border-top: 1px solid var(--line); font-size: var(--fs-body-s); flex-wrap: wrap; }
.activitati-cost__list li:first-child { border-top: 0; }
.activitati-att__sum { font-size: var(--fs-body-s); color: var(--muted); }
.activitati-att__sum b { color: var(--ink); font-size: var(--fs-body); }
.activitati-att { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.activitati-att__it { display: grid; justify-items: center; gap: 4px; min-width: 52px; padding: 8px 6px; border-radius: 12px; background: var(--surface-2); border: 1px solid var(--line); }
.activitati-att__d { font-size: var(--fs-label-s); font-weight: var(--fw-semibold); color: var(--muted); white-space: nowrap; }
.activitati-att__v { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--surface-3); color: var(--muted); }
.activitati-att__it--prezent .activitati-att__v { background: var(--success-soft); color: var(--success-ink); }
.activitati-att__it--absent .activitati-att__v { background: var(--danger-soft); color: var(--danger-ink); }
.activitati-notes { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-2); }
.activitati-notes li { padding: 10px 12px; border-radius: var(--r-sm); background: var(--surface-2); border: 1px solid var(--line); display: grid; gap: 4px; font-size: var(--fs-body-s); }
.activitati-notes__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.activitati-notes__add { display: grid; gap: var(--sp-2); justify-items: start; }
.activitati-notes__add .ui-textarea { min-height: 72px; width: 100%; }

/* coach console */
.activitati-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin-top: var(--sp-2); border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--line); background: var(--line); }
.activitati-stats > div { background: var(--surface); padding: var(--sp-3) var(--sp-4); display: grid; gap: 2px; min-width: 0; align-content: start; }
.activitati-stats b { font-family: var(--font-display); font-weight: var(--fw-regular); font-size: var(--fs-display-s); line-height: 1.15; overflow-wrap: anywhere; }
.activitati-stats span { font-size: var(--fs-caption); color: var(--muted); }
@media (max-width: 767px) {
  .activitati-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .activitati-stats > div:first-child { grid-column: 1 / -1; }
}
@media (min-width: 768px) { .activitati-stats { grid-template-columns: 1.6fr repeat(3, minmax(0, 1fr)); } }
.activitati-roster__pick { display: block; font-size: var(--fs-body-s); color: var(--muted); line-height: 1.4; }

/* sheets */
.activitati-sheet { display: grid; gap: var(--sp-4); }
.activitati-sheet__hero { display: flex; align-items: center; gap: var(--sp-3); flex-wrap: wrap; padding: var(--sp-3); border-radius: var(--r-md); background: var(--_bg, var(--surface-2)); }
.activitati-sheet__hero > div { flex: 1; min-width: 0; }
.activitati-sheet__hero .activitati-card__icon { background: var(--surface); }
.activitati-sheet__when { font-weight: var(--fw-semibold); font-size: var(--fs-title); }
.activitati-drivers { display: grid; gap: 0; border: 0; margin: 0 0 var(--sp-3); padding: 0; min-width: 0; }
.activitati-sheet--driver { gap: 0; }
.activitati-drivers__opt { cursor: pointer; padding-inline: 0; }
.activitati-drivers__opt .ui-radio { padding: 0; min-height: 0; }
.activitati-drivers__q { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--surface-3); color: var(--muted); }
.activitati-upload { position: relative; aspect-ratio: 16 / 9; max-height: 240px; width: 100%; border-radius: var(--r-md); overflow: hidden; background: var(--surface-3); }
.activitati-upload .sh-art { position: absolute; inset: 0; width: 100%; height: 100%; }
.activitati-upload__lbl { position: absolute; left: 10px; bottom: 10px; display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: var(--r-pill); background: var(--scrim-media, rgba(0,0,0,.5)); color: #fff; font-size: var(--fs-label-s); font-weight: var(--fw-semibold); }
.activitati-upload__lbl .ui-i { width: 14px; height: 14px; }
.activitati-tag-kids { border: 0; margin: 0; padding: 0; display: grid; gap: 0; }
.activitati-tag-kids .ui-label { margin-bottom: 4px; padding: 0; }
.activitati-tag-kids__it { padding: 8px 0; }
.activitati-lightbox { border-radius: var(--r-md); overflow: hidden; }
.activitati-lightbox .ui-photo { aspect-ratio: 4 / 3; max-height: 56vh; width: 100%; }
.activitati-lightbox__side { display: grid; gap: var(--sp-3); align-content: start; min-width: 0; }
@media (min-width: 768px) {
  .activitati-sheet--photo { grid-template-columns: minmax(0, 1.5fr) minmax(240px, 1fr); align-items: start; }
}
.activitati-lightbox__meta { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); flex-wrap: wrap; }
.activitati-new__row { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: var(--sp-2); }
.activitati-new__row > * { min-width: 0; }
/* add / edit an activity or one session (one sheet) */
.activitati-form { gap: var(--sp-5); }
.activitati-fvis { display: grid; gap: var(--sp-2); justify-items: start; min-width: 0; }
.activitati-fvis [hidden] { display: none; }
.activitati-fvis .sh-vis .ui-i { flex-shrink: 0; color: var(--muted); }
.activitati-form__danger { border-top: 1px solid var(--line); padding-top: var(--sp-3); }
.activitati-form__del { color: var(--danger-ink); margin-left: -8px; }
/* the schedule box: the series in one sentence + the next sessions (each editable) */
.activitati-prog__sum { display: flex; align-items: flex-start; gap: 8px; padding-inline: var(--sp-5); font-size: var(--fs-body-s); color: var(--ink-2); line-height: 1.45; }
.activitati-prog__sum .ui-i { color: var(--_fg, var(--muted)); margin-top: 2px; flex-shrink: 0; }
.activitati-prog__list .ui-row { width: 100%; text-align: left; }
.activitati-prog__list .activitati-mini { width: 40px; height: 40px; border-radius: 12px; }
.activitati-prog__changed { color: var(--warning-ink); }
.activitati-prog .activitati-box__foot { padding-inline: var(--sp-5); }
@media (max-width: 400px) { .activitati-new__row { grid-template-columns: 1fr 1fr; } .activitati-new__row > :first-child { grid-column: 1 / -1; } }

.activitati-denied__go { margin-top: var(--sp-4); }

/* members & documents (side boxes) */
.activitati-member--shared .ui-i { display: inline-block; vertical-align: -2px; margin-right: 4px; color: var(--aud-shared-fg); }
.activitati-box .ui-row__sub { overflow-wrap: anywhere; }

/* "Tradu / Translate": AI translation of content (notes, coach posts), below the original, never instead of it */
.activitati-tr { display: grid; gap: 4px; justify-items: start; min-width: 0; }
.activitati-tr__btn { margin-left: -8px; min-height: 32px; padding-block: 2px; }
.activitati-tr__box { width: 100%; min-width: 0; display: grid; gap: 4px; padding: 8px 10px; border-radius: var(--r-sm);
  background: var(--ai-soft, var(--surface-2)); border-left: 3px solid var(--ai-ink, var(--primary)); }
.activitati-tr__note { font-size: var(--fs-caption); color: var(--muted); line-height: 1.35; }
.activitati-tr__text { white-space: pre-line; overflow-wrap: anywhere; font-size: var(--fs-body-s); color: var(--ink); line-height: 1.45; }
.activitati-tr__err { color: var(--danger-ink); }
.ui-tl__body > .activitati-tr { margin-top: 2px; }

/* Longer (English) text and QA stretch mode (?i18n=long): a long unbreakable word may break instead of
   widening its grid/flex parent past the screen (no horizontal page scroll at 320 px). */
.activitati, .activitati-sheet { overflow-wrap: anywhere; }
.activitati-box > *, .activitati-album > *, .activitati-sheet > *, .activitati-album__head > div:first-child { min-width: 0; }
