/* FDTC Classes: sign-up, cart, packages and staff screens. Builds on fdtc-students' styles. */

.fdtc-cl-card,
.fdtc-cl-offer,
.fdtc-cl-simulate,
.fdtc-cl-login {
	margin: 0 0 1.5rem;
	padding: 1.25rem 1.5rem;
	border: 1px solid var(--st-line);
	border-radius: 8px;
	background: #fff;
}
.fdtc-cl-offer,
.fdtc-cl-simulate { background: var(--st-sand); }
.fdtc-cl-facts { display: grid; gap: .4rem; margin: 0 0 1rem; }
.fdtc-cl-facts > div { display: grid; grid-template-columns: 7rem 1fr; gap: .75rem; }
.fdtc-cl-facts dt { font-weight: 700; }
.fdtc-cl-facts dd { margin: 0; }
.fdtc-cl-spots { font-weight: 700; color: #1e7a3c; }
.fdtc-cl-spots.is-full { color: var(--st-red); }
.fdtc-cl-muted { color: var(--st-muted); font-size: .9em; }
.fdtc-cl-dogs { display: grid; gap: .5rem; }
.fdtc-cl-dog { display: flex; gap: .5rem; align-items: center; }
.fdtc-cl-dog input:disabled + * { opacity: .6; }

/* Cart */
.fdtc-cl-num { text-align: right !important; white-space: nowrap; }
.fdtc-cl-cart tr.has-error td { background: #fdecec; }
.fdtc-cl-error { margin: .4rem 0 0; color: var(--st-red); font-weight: 600; }
.fdtc-cl-cart select { width: auto; max-width: 100%; }
.fdtc-cl-totals { max-width: 22rem; margin: 0 0 .25rem auto; }
.fdtc-cl-totals > div { display: flex; justify-content: space-between; gap: 1rem; padding: .3rem 0; }
.fdtc-cl-totals dt, .fdtc-cl-totals dd { margin: 0; }
.fdtc-cl-totals .is-total { border-top: 2px solid var(--st-ink); font-weight: 700; font-size: 1.15em; }
.fdtc-cl-right { text-align: right; }
.fdtc-cl-checkout { max-width: none; margin-top: 1.5rem; }
.fdtc-cl-agree { margin: 0 0 1rem; }
.fdtc-cl-waiver { max-height: 14rem; overflow-y: auto; padding: .75rem 1rem; margin: 0 0 1rem; border: 1px solid currentColor; border-radius: 6px; font-size: .95em; }
.fdtc-cl-waiver p:last-child { margin-bottom: 0; }
#fdtc-cl-signed { max-width: 22rem; width: 100%; }
.fdtc-cl-agree input { margin-right: .5rem; vertical-align: -2px; }
.fdtc-cl-receipt { padding-left: 1.25rem; }
.fdtc-cl-receipt li { margin-bottom: .5rem; }

/* Packages */
.fdtc-cl-packages {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
	gap: 1.25rem;
}
.fdtc-cl-package {
	display: flex;
	flex-direction: column;
	padding: 1.25rem;
	border: 1px solid var(--st-line);
	border-radius: 8px;
	background: #fff;
}
.fdtc-cl-package form { margin-top: auto; }
.fdtc-cl-price { margin: 0 0 .5rem; font-size: 1.6rem; font-weight: 800; color: var(--st-blue); }

/* Account tabs */
.fdtc-cl-credits { padding-left: 1.25rem; }
.fdtc-cl-credits li { margin-bottom: .4rem; }
.fdtc-cl-past { padding-left: 1.25rem; color: var(--st-muted); }
.fdtc-cl-staffbox {
	margin: 1.5rem 0;
	padding: 1rem 1.25rem;
	border: 1px solid var(--st-line);
	border-radius: 8px;
	background: var(--st-sand);
}
.fdtc-cl-staffbox > summary { font-weight: 700; cursor: pointer; }
.fdtc-cl-inline-details { display: inline-block; vertical-align: top; }
.fdtc-cl-inline-details > summary { display: inline; list-style: none; cursor: pointer; }
.fdtc-cl-inline-details > summary::-webkit-details-marker { display: none; }
.fdtc-cl-inline-details[open] {
	display: block;
	margin: .5rem 0;
	padding: .75rem;
	border: 1px solid var(--st-line);
	border-radius: 6px;
	background: #fff;
	text-align: left;
	white-space: normal;
}
.fdtc-st-btn--danger { background: var(--st-red); border-color: var(--st-red); }
.fdtc-st-notice--warning { border-color: #b26200; background: #fff4e5; }

/* WP Admin */
.wp-admin .fdtc-cl-adminform { max-width: 60rem; }
.fdtc-cl-checks { display: grid; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); gap: .25rem 1rem; }
.fdtc-cl-filter { margin: .5rem 0 1rem; clear: both; }
.fdtc-cl-admintable .fdtc-cl-full { color: #b32d2e; font-weight: 600; }
.fdtc-cl-roster td { vertical-align: top; }
.fdtc-cl-roster .fdtc-st-row-actions,
.fdtc-cl-roster td:last-child { white-space: normal; }

/* [fdtc_class_list]: the classes of a Class Type on its page. */
.fdtc-cl-catalog { list-style: none; margin: 0 0 1.5rem; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); gap: 1rem; }
.fdtc-cl-catalog__item { margin: 0; padding: 1rem 1.1rem; border: 1px solid var(--wp--preset--color--line, #d9dcea); border-radius: 10px; background: var(--wp--preset--color--base, #fff); }
.fdtc-cl-catalog__name { margin: 0 0 .4rem; font-size: 1.1rem; }
.fdtc-cl-catalog__item p { margin: 0 0 .4rem; }
.fdtc-cl-catalog__meta { color: var(--wp--preset--color--muted, #4a4e6b); }
.fdtc-cl-catalog__next { font-size: .9rem; margin-bottom: 0 !important; }
.fdtc-cl-catalog__item > :first-child { margin-block-start: 0 !important; }

/* Class documents: the list under each class, and one document to read. */
.fdtc-cl-docs { margin: .4rem 0 0; padding-left: 1.1rem; font-size: .9rem; }
.fdtc-cl-docs li { margin: .15rem 0; }
.fdtc-st-table tr.has-docs td { border-bottom: 0; }
.fdtc-st-table .fdtc-cl-docs-row td { padding-top: 0; }
.fdtc-cl-docs-row .fdtc-cl-docs { margin-top: 0; }
@media (max-width: 700px) {
	.fdtc-st-table tr.has-docs { border-bottom: 0; padding-bottom: 0; }
}
.fdtc-cl-doc { max-width: 46rem; }
.fdtc-cl-doc h2, .fdtc-cl-doc h3 { margin: 1.4rem 0 .5rem; }
