@charset "UTF-8";
/* Toronto child care inspection results hub (/toronto-child-care-inspection-results/).
   Results are deliberately shown in ONE neutral style: no green/yellow/red per
   result, so nothing here imitates the City's colour-coded notices. */

.tcc-page { max-width: 1100px; margin: 0 auto; padding: 24px 16px 48px; color: var(--text); }
.tcc-page h1 { font-size: clamp(1.6rem, 4vw, 2.3rem); line-height: 1.2; color: var(--ink); margin: 8px 0 14px; }
.tcc-page h2 { font-size: clamp(1.25rem, 3vw, 1.6rem); color: var(--ink); margin: 34px 0 12px; }
.tcc-page h3 { font-size: 1.1rem; color: var(--ink); margin: 22px 0 8px; }
.tcc-page p, .tcc-page li { line-height: 1.7; }
.tcc-page a { color: var(--primary); }
.tcc-lead { font-size: 1.08rem; color: var(--muted); max-width: 780px; }

.tcc-crumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 0 0 6px; font-size: .9rem; color: var(--muted); }
.tcc-crumbs li + li::before { content: "\203A"; margin-right: 6px; }

.tcc-notice { background: var(--surface); border: 1px solid var(--border); border-left: 4px solid var(--primary); border-radius: 8px; padding: 14px 18px; margin: 18px 0; }
.tcc-notice p { margin: 0; }

.tcc-attribution { border-top: 1px solid var(--border); margin-top: 36px; padding-top: 16px; font-size: .92rem; color: var(--muted); }
.tcc-attribution p { margin: 4px 0; }

.tcc-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin: 18px 0; }
.tcc-stat { background: var(--surface); border: 1px solid var(--border); border-radius: 8px; padding: 14px 16px; }
.tcc-stat b { display: block; font-size: 1.5rem; color: var(--ink); }
.tcc-stat span { font-size: .9rem; color: var(--muted); }

.tcc-result { display: inline-block; padding: 2px 10px; border: 1px solid var(--border); border-radius: 999px; background: var(--white); color: var(--ink); font-size: .88rem; white-space: nowrap; }
.tcc-none { color: var(--muted); font-size: .88rem; }

.tcc-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--border); border-radius: 8px; margin: 14px 0; }
.tcc-table { width: 100%; border-collapse: collapse; font-size: .93rem; display: table; }
.tcc-table th, .tcc-table td { padding: 10px 12px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
.tcc-table thead th { background: var(--surface); color: var(--ink); position: sticky; top: 0; }
.tcc-table th button { all: unset; cursor: pointer; font-weight: 700; }
.tcc-table th button:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.tcc-table th[aria-sort="ascending"] button::after { content: " \25B2"; font-size: .75em; }
.tcc-table th[aria-sort="descending"] button::after { content: " \25BC"; font-size: .75em; }
.tcc-table td:nth-child(1) { min-width: 180px; }

.tcc-tools { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 12px 0; }
.tcc-tools input, .tcc-tools select { font: inherit; padding: 10px 12px; border: 1px solid var(--border); border-radius: 8px; min-height: 44px; }
.tcc-tools input { flex: 1 1 240px; }
.tcc-count { color: var(--muted); font-size: .92rem; }

.tcc-nav { display: block; background: var(--surface); border-radius: 8px; padding: 6px 20px 18px; margin-top: 36px; }
.tcc-nav ul { padding-left: 18px; }
.tcc-ward-links { column-width: 260px; column-gap: 24px; }
.tcc-ward-links li { break-inside: avoid; }

.tcc-cta { background: var(--brand); color: var(--on-dark); border-radius: 10px; padding: 22px 24px; margin: 30px 0; }
.tcc-cta h2, .tcc-cta p { color: var(--on-dark); margin-top: 0; }
.tcc-cta a.tcc-btn { display: inline-block; background: var(--brand-accent); color: var(--brand-accent-ink); padding: 12px 20px; border-radius: 8px; font-weight: 700; text-decoration: none; }

.tcc-form { display: grid; gap: 12px; max-width: 620px; }
.tcc-form label { font-weight: 600; }
.tcc-form input, .tcc-form select, .tcc-form textarea { font: inherit; width: 100%; padding: 10px 12px; border: 1px solid var(--border); border-radius: 8px; box-sizing: border-box; }
.tcc-form .tcc-check { font-weight: 400; display: flex; gap: 10px; align-items: flex-start; }
.tcc-form .tcc-check input { width: auto; margin-top: 5px; }
.tcc-form button { font: inherit; font-weight: 700; background: var(--brand); color: var(--on-dark); border: 0; border-radius: 8px; padding: 12px 20px; min-height: 44px; cursor: pointer; justify-self: start; }
.tcc-msg { min-height: 1.4em; }
.tcc-hp { position: absolute; left: -9999px; }

@media print {
  .tcc-tools, .tcc-nav, .tcc-cta { display: none; }
}
.tcc-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
