/* SchoolDay v270.44: Clubs. The Dashboard's two panels without frames; Club
   Meals' sub-tabs and its weekly summary in words; the Schedule window with
   room to breathe; a date's title and description; the public-page tick.
   No !important: every rule is #tab-clubs plus at least as many classes as
   the v270.43 rule it follows, and this file comes after it. */

/* ------------------------------------------------- Dashboard Functions / Set Dashboard Filters */
/* Not two framed boxes: no border, no accent bar on top, one thin pale grey
   line between them (down the middle side by side, across when stacked). */
#tab-clubs .clubs-grid-above-v27040.clubs-grid-panels-v27043 { gap: 0; }
#tab-clubs .clubs-grid-panels-v27043 > .clubs-grid-panel-v27043 {
  border: 0; border-radius: 0; background: transparent; padding: .2rem 1rem .45rem;
}
#tab-clubs .clubs-grid-panels-v27043 > .clubs-grid-panel-v27043.is-functions-v27043,
#tab-clubs .clubs-grid-panels-v27043 > .clubs-grid-panel-v27043.is-filters-v27043 { border-top: 0; }
#tab-clubs .clubs-grid-panels-v27043 > .clubs-grid-panel-v27043:first-child { padding-left: 0; }
#tab-clubs .clubs-grid-panels-v27043 > .clubs-grid-panel-v27043 + .clubs-grid-panel-v27043 { border-left: 1px solid #e5e7eb; }
@media (max-width: 900px) {
  #tab-clubs .clubs-grid-panels-v27043 > .clubs-grid-panel-v27043 { padding-left: 0; padding-right: 0; }
  #tab-clubs .clubs-grid-panels-v27043 > .clubs-grid-panel-v27043 + .clubs-grid-panel-v27043 { border-left: 0; border-top: 1px solid #e5e7eb; padding-top: .5rem; }
}

/* Under the table: Change weekly settings and Add Widgets stay side by side. */
#tab-clubs .clubs-grid-week-tools-v27016 > .clubs-grid-week-pair-v27044 { display: inline-flex; flex-wrap: nowrap; align-items: center; gap: .4rem .6rem; }

/* ------------------------------------------------- Club Meals */
/* The views are sub-tabs, top left under the Clubs tabs. They are drawn by
   admin-function-shell-v2365.css's folder-tab rules (.subtab-nav, with
   !important and the branding colours) like every other strip, so nothing
   here sizes or colours them. */
/* The weekly summary: the camp, then a line per requirement, every line at
   the left, no colour tiles. */
#tab-clubs .clubs-meals-summary-v27043 .clubs-meals-sumcell-v27043 { text-align: left; }
#tab-clubs .clubs-meals-sumcell-v27043 .clubs-meals-sumline-v27043 { display: block; text-align: left; line-height: 1.45; }

/* ------------------------------------------------- the Schedule window */
#tab-clubs .clubs-sched-form-v27043 fieldset { margin: .8rem 0; padding: .6rem .95rem .85rem; }
#tab-clubs .clubs-sched-form-v27043 legend { padding: 0 .4rem; }
/* To, Cc, Bcc, Subject, Body: the label over its box, a gap under each. */
#tab-clubs .clubs-sched-email-v27044 > .clubs-field-v2690 { gap: .35rem; margin: 0 0 .75rem; }
#tab-clubs .clubs-sched-email-v27044 > .clubs-field-v2690:last-child { margin-bottom: 0; }
#tab-clubs .clubs-sched-email-v27044 > p.muted { margin: -.4rem 0 .75rem; font-size: .85rem; }
#tab-clubs .clubs-sched-form-v27043 .clubs-field-v2690 > input[type="text"],
#tab-clubs .clubs-sched-form-v27043 .clubs-field-v2690 > textarea { padding: .5rem .6rem; }
/* A line of controls side by side: Repeat + Every; On + At; From + Until. */
#tab-clubs .clubs-sched-line-v27044 { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1.6rem; margin: .55rem 0; }
#tab-clubs .clubs-sched-line-v27044:empty { display: none; }
#tab-clubs .clubs-sched-line-v27044 > .clubs-field-v2690.is-inline { gap: .5rem; white-space: nowrap; }
#tab-clubs .clubs-sched-line-v27044 > .clubs-sched-days-v27043 { gap: .35rem .85rem; }
#tab-clubs .clubs-sched-on-v27044 { font-weight: 700; font-size: .9rem; }
#tab-clubs .clubs-sched-line-v27044 select { min-width: 7rem; }
#tab-clubs .clubs-sched-monthday-v27044 select { min-width: 8rem; }
#tab-clubs .clubs-sched-line-v27044 input[type="date"], #tab-clubs .clubs-sched-line-v27044 input[type="time"] { min-width: 9rem; padding: .35rem .5rem; }
#tab-clubs .clubs-sched-next-v27044 { margin: .7rem 0 0; padding: .45rem .65rem; border-radius: .45rem; background: #f8fafc; }
#tab-clubs .clubs-sched-form-v27043 fieldset > p.muted { margin: .45rem 0 0; }

/* ------------------------------------------------- a date's title and description */
#tab-clubs .clubs-date-title-v27044 { display: block; margin: .1rem 0 .15rem; font-weight: 700; color: #1e293b; text-align: left; }
#tab-clubs .clubs-date-title-v27044 p, #tab-clubs .clubs-date-description-v27044 p { margin: 0 0 .2rem; }
#tab-clubs .clubs-date-title-v27044 > :last-child, #tab-clubs .clubs-date-description-v27044 > :last-child { margin-bottom: 0; }
#tab-clubs .clubs-date-description-v27044 ul, #tab-clubs .clubs-date-description-v27044 ol { margin: .2rem 0; padding-left: 1.3rem; }
#tab-clubs .clubs-reg-title-v27044 { margin: .2rem 0 .7rem; padding: .5rem .75rem; border-left: 4px solid #cbd5e1; border-radius: .35rem; background: #f8fafc; }
#tab-clubs .clubs-reg-title-v27044 .clubs-date-title-v27044 { font-size: 1.05rem; }
#tab-clubs .clubs-date-texts-v27044 { display: grid; gap: .6rem; margin: .5rem 0; }
#tab-clubs .clubs-date-texts-v27044[hidden] { display: none; }
#tab-clubs .clubs-date-texts-v27044 .meal-rich-editor-v2678 { min-height: 2.2rem; }
#tab-clubs .clubs-public-tick-v27044 { margin-top: .7rem; }

/* ------------------------------------------------- v270.44, later: a club's list of dates */
/* Each date's box square, not rounded, and the date a little bigger. */
#tab-clubs .clubs-date-list-v2690 .clubs-date-row-v2690,
#tab-clubs .clubs-date-list-v2690 .clubs-date-open-v2690 { border-radius: 0; }
#tab-clubs .clubs-date-list-v2690 .clubs-date-when-v2690 > strong { font-size: 1.14rem; }

/* ------------------------------------------------- the register */
/* "Meal paid for" shows only when Yes, and green (not colour alone: it says Yes). */
#tab-clubs .clubs-req-chip-v2690.is-meal-v27044 { background: #dcfce7; color: #14532d; box-shadow: inset 0 0 0 1px #16a34a; font-weight: 700; }
/* Refresh, the first thing at the top left. */
#tab-clubs .clubs-reg-refresh-v27044 { flex: 0 0 auto; }
#tab-clubs .clubs-safeword-btn-v27044 { margin-left: .4rem; }

/* ------------------------------------------------- Food Planner */
/* The club's row counts each day's meals; under it, a row per dietary requirement. */
#tab-clubs .clubs-meals-clubhead-v27041 > td.clubs-meals-daymeals-v27044 { font-weight: 800; text-align: center; }
#tab-clubs .clubs-meals-clubcount-v27044 { font-weight: 400; font-size: .8rem; margin-left: .3rem; }
#tab-clubs .clubs-meals-dietrow-v27044 > th, #tab-clubs .clubs-meals-dietrow-v27044 > td { font-size: .8rem; color: #334155; background: #fcfcfd; text-align: center; }
#tab-clubs .clubs-meals-dietrow-v27044 > th.clubs-rota-name-v27013 { text-align: left; font-weight: 600; padding-left: 1.2rem; }
#tab-clubs .clubs-meals-dietkey-v27044 { display: inline-block; width: .8rem; height: .8rem; margin-right: .35rem; vertical-align: -.1rem; border: 1px solid #374151; background: var(--meal-fill, #475569); }
/* Dietary requirements: the button in the key, and its window. */
#tab-clubs .clubs-meals-dietbtn-v27044 { margin-right: .4rem; }
#tab-clubs .clubs-meals-dietopts-wrap-v27044 { max-height: 26rem; overflow: auto; }
#tab-clubs .clubs-meals-dietopts-v27044 { width: 100%; border-collapse: collapse; }
#tab-clubs .clubs-meals-dietopts-v27044 th, #tab-clubs .clubs-meals-dietopts-v27044 td { padding: .3rem .5rem; border-bottom: 1px solid #e5e7eb; text-align: left; vertical-align: middle; }
#tab-clubs .clubs-meals-dietopts-v27044 input[type="text"] { width: 100%; min-width: 10rem; box-sizing: border-box; }
#tab-clubs .clubs-meals-dietwin-v27044 #mealsDietOtherLabelV27044 { min-width: 12rem; }

/* ------------------------------------------------- Report on Pupils, Club Attendees */
#tab-clubs .clubs-report-note-v27044 { margin-left: .4rem; font-size: .8rem; font-weight: 400; }
#tab-clubs .clubs-report-match-v27044 { margin-bottom: .4rem; }
#tab-clubs .clubs-note-prefix-v27044 { font-size: .85rem; }
#tab-clubs .clubs-db-safeword-list-v27044 { display: grid; gap: .3rem; margin: .5rem 0; max-height: 22rem; overflow: auto; }
