.tc-check { display: flex; align-items: flex-start; gap: .65rem; }
.tc-check input { inline-size: 1.25rem; block-size: 1.25rem; margin-block-start: .15rem; }
.tc-check--optional { border: 1px solid color-mix(in srgb, var(--tc-gold, #b68a2d) 35%, var(--tc-line)); border-radius: 1rem; padding: 1rem; background: linear-gradient(135deg, #fff, #f7f3e4); }

#tc-login-form { display: grid; gap: 1rem; max-inline-size: 34rem; }
#tc-login-form p { margin: 0; }
#tc-login-form label { display: block; margin-block-end: .4rem; font-weight: 800; }
#tc-login-form input[type='text'],
#tc-login-form input[type='password'] { inline-size: 100%; min-block-size: 3rem; border: 1px solid var(--tc-line); border-radius: var(--tc-radius-sm); padding-inline: .85rem; }
#tc-login-form input[type='submit'] { min-block-size: 2.75rem; border: 0; border-radius: 999px; padding-inline: 1.25rem; background: var(--tc-deep); color: #fff; font-weight: 800; cursor: pointer; }
.tc-panel { margin-block-start: 1.5rem; border: 1px solid var(--tc-line); border-radius: var(--tc-radius); padding: 1rem; background: #fff; }
.tc-panel summary { min-block-size: 2.75rem; display: flex; align-items: center; font-weight: 800; cursor: pointer; }
.tc-panel[open] summary { margin-block-end: 1rem; }
.tc-dashboard__main section + section { margin-block-start: clamp(2rem, 5vw, 4rem); }
.tc-nav-account .wp-block-navigation-item__content { border: 1px solid currentColor; border-radius: 999px; padding: .55rem .9rem !important; background: linear-gradient(135deg, rgb(223 245 238 / .7), transparent); }
.tc-trap { position: absolute !important; inset-inline-start: -10000px !important; inline-size: 1px !important; block-size: 1px !important; overflow: hidden !important; }

.tc-account-controls { scroll-margin-block-start: 8rem; }
.tc-account-control-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 1.75rem); }
.tc-account-control-card { position: relative; overflow: hidden; min-inline-size: 0; border: 1px solid color-mix(in srgb, var(--tc-gold, #b68a2d) 32%, var(--tc-line)); border-radius: var(--tc-radius); padding: clamp(1.15rem, 3vw, 2rem); background: linear-gradient(145deg, #fff, color-mix(in srgb, var(--tc-mint, #e5f4ef) 54%, #fff)); box-shadow: 0 1.1rem 3rem rgb(5 33 34 / .08); }
.tc-account-control-card::after { content: ''; position: absolute; inset: auto -3rem -4rem auto; inline-size: 9rem; aspect-ratio: 1; border: 1px solid rgb(182 138 45 / .2); border-radius: 50%; box-shadow: 0 0 0 1.25rem rgb(182 138 45 / .05), 0 0 0 2.5rem rgb(182 138 45 / .035); pointer-events: none; }
.tc-account-control-card__mark { display: grid; place-items: center; inline-size: 2.25rem; block-size: 2.25rem; margin-block-end: 1rem; border: 1px solid rgb(182 138 45 / .45); border-radius: 50%; color: var(--tc-deep); font: 800 .78rem/1 system-ui, sans-serif; letter-spacing: .08em; }
.tc-account-control-card h3 { margin-block: 0 .55rem; }
.tc-account-action { display: grid; gap: .9rem; margin-block-start: 1.1rem; }
.tc-account-action .tc-button { justify-self: start; }
.tc-account-danger { margin-block-start: 1.25rem; border-color: rgb(145 41 41 / .28); background: linear-gradient(135deg, #fff, #fff8f7); }
.tc-account-danger summary { color: #752020; }
.tc-delete-student-list,
.tc-reset-student-list { display: grid; gap: 1rem; }
.tc-delete-student,
.tc-reset-student { display: grid; grid-template-columns: minmax(9rem, 1fr) repeat(2, minmax(11rem, 1fr)) auto; gap: .85rem; align-items: end; border-block-start: 1px solid rgb(145 41 41 / .16); padding-block-start: 1rem; }
.tc-reset-student { border-block-start-color: rgb(182 138 45 / .22); }
.tc-delete-student > div,
.tc-reset-student > div { align-self: center; }
.tc-delete-student small,
.tc-reset-student small { display: block; margin-block-start: .25rem; color: var(--tc-muted, #526565); }
.tc-delete-student label,
.tc-reset-student label { display: grid; gap: .35rem; font-weight: 700; }
.tc-delete-student input,
.tc-reset-student input { inline-size: 100%; min-block-size: 2.75rem; border: 1px solid var(--tc-line); border-radius: var(--tc-radius-sm); padding-inline: .75rem; background: #fff; }
.tc-button--danger { border-color: #8e2f2f !important; background: #8e2f2f !important; color: #fff !important; }
.tc-button--danger:is(:hover, :focus-visible) { background: #6f1f1f !important; }

.tc-notification-list { display: grid; gap: .85rem; }
.tc-notification { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 1rem; border: 1px solid var(--tc-line); border-radius: var(--tc-radius); padding: 1rem 1.15rem; background: #fff; }
.tc-notification.is-unread { border-inline-start: .35rem solid var(--tc-gold, #b68a2d); background: linear-gradient(110deg, color-mix(in srgb, var(--tc-mint, #e5f4ef) 58%, #fff), #fff); box-shadow: 0 .7rem 2rem rgb(5 33 34 / .07); }
.tc-notification h3 { margin-block: .15rem .3rem; }
.tc-notification p { margin-block: 0; }
.tc-notification__email { display:block; margin-block-start:.6rem; color:#526565; font-size:max(12px, .72rem); font-weight:750; }
.tc-notification .tc-actions { justify-content: flex-end; }
.tc-button--quiet { border: 0 !important; background: transparent !important; color: var(--tc-deep) !important; box-shadow: none !important; text-decoration: underline; text-underline-offset: .2em; }
.tc-assigned-card__deadline { margin-block: .7rem .15rem; color: var(--tc-deep); }
.tc-assigned-card__deadline.is-overdue { color: #8e2f2f; }
.tc-learning-groups { display:grid; gap:clamp(1.25rem,3vw,2.25rem); }
.tc-learning-group { display:grid; gap:1rem; min-inline-size:0; border:1px solid color-mix(in srgb,var(--tc-gold,#b68a2d) 24%,var(--tc-line)); border-radius:1.25rem; padding:clamp(1rem,2.5vw,1.5rem); background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--tc-mint,#e5f4ef) 28%,#fff)); box-shadow:0 1rem 2.8rem rgb(5 33 34 / .06); }
.tc-learning-group__head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.3rem 1rem; align-items:center; }
.tc-learning-group__head h3 { margin:0; color:var(--tc-deep,#123e37); font:700 clamp(1.25rem,2.5vw,1.65rem)/1.15 Georgia,serif; }
.tc-learning-group__head p { grid-column:1/-1; max-inline-size:70ch; margin:0; color:var(--tc-muted,#526565); font-size:.78rem; line-height:1.55; }
.tc-learning-group__count { display:grid; min-inline-size:2.45rem; min-block-size:2.45rem; place-items:center; border:1px solid rgb(182 138 45 / .35); border-radius:50%; background:#fff8e6; color:#6e4b10; font-weight:900; }
.tc-learning-group__empty { margin:0; border:1px dashed rgb(24 92 80 / .22); border-radius:.85rem; padding:1rem; color:var(--tc-muted,#526565); background:rgb(255 255 255 / .65); }
.tc-assigned-card__resume { display:grid; gap:.2rem; margin:0; border-inline-start:.2rem solid var(--tc-gold,#b68a2d); padding-inline-start:.7rem; color:var(--tc-muted,#526565); font-size:max(12px, .72rem); }
.tc-assigned-card__resume strong { color:var(--tc-deep,#123e37); }
.tc-status--failed { background: #fff0ef !important; color: #8e2f2f !important; }
.tc-assignment-dialog { inline-size:min(42rem,calc(100vw - 1.5rem)); max-inline-size:none; max-block-size:min(48rem,calc(100dvh - 1.5rem)); margin:auto; border:1px solid rgb(216 183 91 / .55); border-radius:1.4rem; padding:0; background:#f8fbf9; color:#102f2a; box-shadow:0 2.4rem 7rem rgb(0 0 0 / .45); }
.tc-assignment-dialog::backdrop { background:rgb(2 12 18 / .78); backdrop-filter:blur(7px); }
.tc-assignment-dialog__form { display:grid; gap:1.2rem; padding:clamp(1.15rem,4vw,2rem); }
.tc-assignment-dialog__head { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; border-block-end:1px solid rgb(24 92 80 / .18); padding-block-end:1rem; }
.tc-assignment-dialog__head h2 { margin:.2rem 0 0; color:#123e37; font:700 clamp(1.45rem,4vw,2rem)/1.15 Georgia,serif; }
.tc-dialog-close { display:grid; place-items:center; flex:none; inline-size:2.65rem; block-size:2.65rem; border:1px solid rgb(24 92 80 / .25); border-radius:50%; background:#fff; color:#123e37; font:400 1.7rem/1 system-ui,sans-serif; cursor:pointer; }
.tc-assignee-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; min-inline-size:0; margin:0; border:0; padding:0; }
.tc-assignee-choices legend { grid-column:1/-1; margin-block-end:.35rem; color:#725117; font-size:max(12px, .72rem); font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.tc-assignee-choices label { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.7rem; align-items:center; min-inline-size:0; border:1px solid rgb(24 92 80 / .2); border-radius:1rem; padding:.9rem; background:#fff; cursor:pointer; }
.tc-assignee-choices label:has(input:checked) { border-color:#b68a2d; background:#fff8e5; box-shadow:inset 0 0 0 1px #b68a2d; }
.tc-assignee-choices input { inline-size:1.2rem; block-size:1.2rem; accent-color:#185c50; }
.tc-assignee-choices span { display:grid; gap:.18rem; min-inline-size:0; }
.tc-assignee-choices small { color:#5b6d69; line-height:1.35; }
.tc-assignment-dialog .tc-field { display:grid; gap:.4rem; }
.tc-assignment-dialog .tc-field label { font-weight:850; }
.tc-assignment-dialog .tc-field input { inline-size:100%; min-block-size:3rem; border:1px solid rgb(24 92 80 / .25); border-radius:.75rem; padding-inline:.8rem; background:#fff; }
.tc-assignment-dialog .tc-field input:disabled { opacity:.55; cursor:not-allowed; }
.tc-mastery-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; margin:.15rem 0; }
.tc-mastery-stats div { min-inline-size:0; border:1px solid rgb(24 92 80 / .13); border-radius:.75rem; padding:.65rem; background:#f7faf8; }
.tc-mastery-stats dt { color:#657570; font-size:max(12px, .64rem); font-weight:850; letter-spacing:.055em; text-transform:uppercase; }
.tc-mastery-stats dd { overflow-wrap:anywhere; margin:.2rem 0 0; color:#123e37; font-weight:850; }
.tc-attempt-history,.tc-learning-reset { border-block-start:1px solid rgb(24 92 80 / .16); padding-block-start:.7rem; }
.tc-attempt-history summary,.tc-learning-reset summary { color:#173f38; font-size:.76rem; font-weight:850; cursor:pointer; }
.tc-table-scroll { overflow-x:auto; margin-block-start:.7rem; }
.tc-attempt-history table { inline-size:100%; min-inline-size:33rem; border-collapse:collapse; font-size:max(12px, .72rem); }
.tc-attempt-history :is(th,td) { border-block-end:1px solid rgb(24 92 80 / .13); padding:.55rem .45rem; text-align:start; white-space:nowrap; }
.tc-attempt-history th { color:#725117; font-size:max(12px, .62rem); letter-spacing:.05em; text-transform:uppercase; }
.tc-learning-reset form { display:grid; gap:.75rem; margin-block-start:.75rem; border:1px solid rgb(142 47 47 / .18); border-radius:.8rem; padding:.8rem; background:#fff8f7; }
.tc-learning-reset .tc-check { font-size:.76rem; line-height:1.45; }
.tc-learning-reset .tc-button { justify-self:start; }
.tc-dashboard__welcome .tc-stat-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.tc-reading-progress-meter { position:relative; overflow:hidden; display:grid; min-block-size:2.4rem; place-items:center; border:1px solid rgb(239 207 127 / .25); border-radius:999px; background:rgb(255 255 255 / .07); }
.tc-reading-progress-meter span { position:absolute; inset:0 auto 0 0; inline-size:var(--tc-reading-progress,0%); background:linear-gradient(90deg,rgb(30 111 93 / .75),rgb(210 169 64 / .7)); transition:inline-size .32s ease; }
.tc-reading-progress-meter strong { position:relative; z-index:1; color:#fff3c9; font-size:max(12px, .68rem); letter-spacing:.035em; }
.tc-reading-progress-meter.is-complete { border-color:rgb(239 207 127 / .6); box-shadow:0 0 1.4rem rgb(215 172 60 / .16); }
.tc-resource-actions__auto { color:rgb(255 255 255 / .66); font-size:max(12px, .72rem); line-height:1.5; }

.tc-donate { position: relative; inset-inline-start: 50%; transform: translateX(-50%); isolation: isolate; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(20rem, .85fr); inline-size: min(76rem, calc(100vw - 2rem)); max-inline-size: none; gap: clamp(1.5rem, 5vw, 5rem); align-items: center; min-block-size: min(48rem, calc(100vh - 10rem)); border-radius: clamp(1.25rem, 3vw, 2.5rem); padding: clamp(1.35rem, 6vw, 5rem); background: radial-gradient(circle at 22% 30%, rgb(211 180 84 / .18), transparent 35%), radial-gradient(circle at 80% 75%, rgb(63 157 139 / .18), transparent 31%), linear-gradient(145deg, #041018, #0b2029 60%, #061119); color: #eaf3f0; box-shadow: 0 2rem 6rem rgb(3 15 22 / .24); }
.tc-donate::before { content: ''; position: absolute; z-index: -1; inset: -30%; background-image: repeating-radial-gradient(circle at center, transparent 0 3.4rem, rgb(220 193 111 / .09) 3.45rem 3.5rem); animation: tc-donate-orbit 28s linear infinite; }
.tc-donate h2 { max-inline-size: 15ch; margin-block: .25rem 1rem; color: #fff7d4; font-family: Georgia, serif; font-size: clamp(2.2rem, 5vw, 5rem); line-height: 1.02; }
.tc-donate__intro > p:not(.tc-eyebrow) { max-inline-size: 60ch; color: #cedddb; font-size: clamp(1.05rem, 1.5vw, 1.25rem); line-height: 1.75; }
.tc-donate__principles { display: flex; flex-wrap: wrap; gap: .6rem; margin-block-start: 1.5rem; }
.tc-donate__principles span { border: 1px solid rgb(220 193 111 / .38); border-radius: 999px; padding: .6rem .9rem; color: #f5e9bc; background: rgb(3 14 21 / .45); }
.tc-donate__form { border: 1px solid rgb(220 193 111 / .38); border-radius: 1.5rem; padding: clamp(1.2rem, 3vw, 2rem); background: rgb(255 255 255 / .96); color: #102728; box-shadow: 0 1.5rem 4rem rgb(0 0 0 / .28); backdrop-filter: blur(12px); }
.tc-donate__form h3 { margin-block: .15rem .8rem; font-size: clamp(1.5rem, 3vw, 2.2rem); }
.tc-donate__form .tc-check { color: #213536; font-size: .95rem; line-height: 1.55; }
@keyframes tc-donate-orbit { to { transform: rotate(1turn); } }

/* Voluntary support and independently verified charity journeys. */
.tc-support,.tc-charity-directory,.tc-support-thanks { position:relative; inset-inline-start:50%; transform:translateX(-50%); inline-size:min(88rem,calc(100vw - 2rem)); max-inline-size:none; color:#102f2a; }
.tc-support-landing .tc-page-head { display:none; }
.tc-support { display:grid; gap:clamp(1.25rem,3vw,2.5rem); }
.tc-support__hero { position:relative; isolation:isolate; overflow:hidden; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(20rem,.82fr); gap:clamp(1.5rem,5vw,5rem); min-block-size:min(48rem,calc(100dvh - 9rem)); align-items:center; border:1px solid rgb(227 197 119 / .36); border-radius:clamp(1.25rem,3vw,2.5rem); padding:clamp(1.35rem,6vw,5rem); background:radial-gradient(circle at 13% 22%,rgb(214 175 76 / .2),transparent 28%),radial-gradient(circle at 88% 75%,rgb(44 136 117 / .2),transparent 27%),linear-gradient(145deg,#031219,#0a2928 56%,#05171d); color:#edf6f2; box-shadow:0 2rem 6rem rgb(3 24 24 / .25); }
.tc-support__hero::before { position:absolute; z-index:-1; inset:-25%; background-image:repeating-radial-gradient(circle at center,transparent 0 4.8rem,rgb(225 192 104 / .08) 4.84rem 4.9rem); content:""; animation:tc-support-orbit 40s linear infinite; }
.tc-support__hero h1 { max-inline-size:12ch; margin:.2rem 0 1.1rem; color:#fff2bd; font:700 clamp(2.6rem,6vw,5.8rem)/.98 Georgia,serif; letter-spacing:-.035em; text-wrap:balance; }
.tc-support__lead { max-inline-size:66ch; color:#d3e2de; font-size:clamp(1.02rem,1.5vw,1.25rem); line-height:1.75; }
.tc-support__hero .tc-sacred-name { color:#f5d778; text-shadow:0 0 1rem rgb(234 194 88 / .28); }
.tc-support__principle { display:grid; gap:.45rem; max-inline-size:47rem; margin-block-start:clamp(1.5rem,4vw,2.7rem); border-inline-start:.18rem solid #d8ae52; padding:clamp(1rem,2vw,1.35rem); background:rgb(255 255 255 / .055); }
.tc-support__ayah { color:#fff4c5; font-family:"TC Uthmanic Hafs","Noto Naskh Arabic",serif; font-size:clamp(2rem,4.5vw,3.6rem); line-height:1.85; text-align:center; }
.tc-support__transliteration { color:#f2d98f; font-weight:750; letter-spacing:.02em; text-align:center; }
.tc-support__principle blockquote { margin:.2rem 0; border:0; padding:0; color:#fff; font:700 clamp(1.05rem,2vw,1.3rem)/1.5 Georgia,serif; text-align:center; }
.tc-support__principle p { margin:0; color:#a9c1ba; font-size:.75rem; text-align:center; }
.tc-support__principle a { color:#f3d783; }
.tc-support__choice { display:grid; gap:1rem; border:1px solid rgb(231 204 135 / .4); border-radius:1.6rem; padding:clamp(1.25rem,3vw,2rem); background:rgb(255 255 255 / .96); color:#153d36; box-shadow:0 1.6rem 4.5rem rgb(0 0 0 / .34); }
.tc-support__choice h2 { margin:0; color:#123d36; font:700 clamp(1.75rem,3.5vw,2.6rem)/1.08 Georgia,serif; }
.tc-support__choice p { margin:0; color:#526b65; line-height:1.7; }
.tc-support__choice .tc-button { inline-size:100%; justify-content:center; min-block-size:3.25rem; }
.tc-button--dua { border-color:#b58a32 !important; background:linear-gradient(135deg,#ffeab0,#d6aa4d) !important; color:#3d2b0a !important; }
.tc-button--support { background:linear-gradient(135deg,#185f52,#0c3b35) !important; color:#fff5ce !important; }
.tc-support__disabled { display:grid; min-block-size:3.25rem; place-items:center; border:1px dashed rgb(24 92 80 / .38); border-radius:999px; padding:.7rem 1rem; background:#edf4f1; color:#365c54; font-weight:850; text-align:center; }
.tc-support__choice small { color:#667b76; line-height:1.55; }
.tc-support__charity-link { color:#285f55; font-weight:850; text-align:center; text-underline-offset:.2em; }
.tc-support__standards { display:grid; grid-template-columns:minmax(13rem,.8fr) minmax(20rem,1.2fr); gap:clamp(1rem,4vw,3rem); border:1px solid rgb(24 92 80 / .17); border-radius:1.4rem; padding:clamp(1.25rem,4vw,2.5rem); background:linear-gradient(135deg,#fff,#edf6f2); }
.tc-support__standards h2 { margin:.2rem 0; color:#123d36; font:700 clamp(1.8rem,4vw,3rem)/1.05 Georgia,serif; }
.tc-support__standards ul { display:grid; gap:.65rem; margin:0; padding-inline-start:1.2rem; line-height:1.55; }
.tc-support__standards > p { grid-column:1/-1; margin:0; border-block-start:1px solid rgb(24 92 80 / .15); padding-block-start:1rem; color:#526b65; }
.tc-supporters { display:grid; gap:clamp(1.25rem,3vw,2rem); border:1px solid rgb(24 92 80 / .16); border-radius:clamp(1.2rem,3vw,2rem); padding:clamp(1.25rem,4vw,3rem); background:radial-gradient(circle at 92% 5%,rgb(214 175 76 / .15),transparent 20rem),linear-gradient(145deg,#fdfbf4,#eaf3ef); box-shadow:0 1.5rem 4rem rgb(7 44 38 / .08); }
.tc-supporters__head { display:grid; grid-template-columns:minmax(22rem,1.05fr) minmax(20rem,.95fr); align-items:end; gap:clamp(1rem,4vw,3rem); }
.tc-supporters__head h2 { max-inline-size:18ch; margin:.25rem 0 0; color:#123d36; font:700 clamp(2rem,4.5vw,3.8rem)/1.02 Georgia,serif; letter-spacing:-.025em; overflow-wrap:normal; text-wrap:balance; }
.tc-supporters__head > p { margin:0; color:#526b65; line-height:1.75; }
.tc-supporters__list { display:grid; gap:1rem; }
.tc-supporter-card { display:grid; grid-template-columns:minmax(9rem,12rem) minmax(0,1fr); gap:clamp(1.1rem,3vw,2rem); align-items:center; border:1px solid rgb(24 92 80 / .14); border-radius:1.35rem; padding:clamp(1rem,2vw,1.5rem); background:rgb(255 255 255 / .88); box-shadow:0 .8rem 2.2rem rgb(8 54 46 / .07); }
.tc-supporter-card__logo { display:grid; place-items:center; align-self:start; min-block-size:10rem; border:1px solid rgb(184 140 45 / .22); border-radius:1.15rem; padding:.7rem; background:linear-gradient(145deg,#fff,#f5f1e5); }
.tc-supporter-card__logo img { display:block; inline-size:100%; block-size:auto; aspect-ratio:1; object-fit:contain; }
.tc-supporter-card__copy { display:grid; gap:.62rem; min-inline-size:0; }
.tc-supporter-card__copy > .tc-eyebrow { margin:0; }
.tc-supporter-card h3 { margin:0; color:#123d36; font:700 clamp(1.55rem,3vw,2.25rem)/1.08 Georgia,serif; }
.tc-supporter-card h3 a { color:inherit; text-decoration:none; }
.tc-supporter-card h3 a:is(:hover,:focus-visible) { color:#8a6417; text-decoration:underline; text-underline-offset:.15em; }
.tc-supporter-card__copy > p:not(.tc-eyebrow) { max-inline-size:72ch; margin:0; color:#526b65; line-height:1.72; }
.tc-supporter-card__visit { justify-self:start; color:#805c15; font-size:.78rem; font-weight:900; text-underline-offset:.18em; }
.tc-supporter-card__dua { margin-block-start:.2rem; border-inline-start:.2rem solid #d5aa4d; border-radius:.25rem .85rem .85rem .25rem; padding:.85rem 1rem; background:#fff8e5; }
.tc-supporter-card__dua > strong { color:#8a6417; font-size:max(12px, .68rem); letter-spacing:.08em; text-transform:uppercase; }
.tc-supporter-card__dua p { margin:.35rem 0 0; color:#294e46; font-family:Georgia,serif; font-size:.92rem; line-height:1.65; }
.tc-supporter-card__dua .tc-sacred-name,.tc-supporters__shared-dua .tc-sacred-name { color:#956c17; }
.tc-supporters__shared-dua { border:1px solid rgb(224 187 94 / .3); border-radius:1.2rem; padding:clamp(1.1rem,3vw,1.8rem); background:radial-gradient(circle at 90% 50%,rgb(213 172 72 / .18),transparent 18rem),#0c332e; }
.tc-supporters__shared-dua .tc-eyebrow { margin:0 0 .45rem; color:#e7c76f; }
.tc-supporters__shared-dua > p:last-child { max-inline-size:75ch; margin:0; color:#f0f6f3; font:700 clamp(1rem,2vw,1.22rem)/1.7 Georgia,serif; }
.tc-supporters__shared-dua .tc-sacred-name { color:#f5d778; text-shadow:0 0 1rem rgb(234 194 88 / .24); }
@keyframes tc-support-orbit { to { transform:rotate(1turn); } }

.tc-dua-dialog { inline-size:min(42rem,calc(100vw - 1.25rem)); max-inline-size:none; max-block-size:calc(100dvh - 1.25rem); overflow:auto; border:1px solid rgb(230 199 119 / .55); border-radius:1.5rem; padding:0; background:#f8fbf9; color:#123d36; box-shadow:0 2rem 7rem rgb(0 14 15 / .52); }
.tc-dua-dialog::backdrop { background:rgb(2 18 20 / .8); backdrop-filter:blur(6px); }
.tc-dua-dialog__panel { position:relative; display:grid; gap:1rem; min-block-size:27rem; align-content:center; padding:clamp(1.35rem,6vw,3rem); text-align:center; background:radial-gradient(circle at 50% 15%,rgb(215 175 85 / .16),transparent 12rem),linear-gradient(145deg,#fff,#edf5f2); }
.tc-dua-dialog__close { position:absolute; inset-block-start:.8rem; inset-inline-end:.8rem; display:grid; place-items:center; inline-size:2.65rem; block-size:2.65rem; border:1px solid rgb(24 92 80 / .22); border-radius:50%; background:#fff; color:#123d36; font-size:1.6rem; cursor:pointer; }
.tc-dua-dialog h2 { margin:.2rem auto .7rem; max-inline-size:17ch; color:#123d36; font:700 clamp(1.8rem,5vw,2.7rem)/1.08 Georgia,serif; }
.tc-dua-dialog h3 { color:#123d36; font:700 clamp(1.65rem,4vw,2.25rem)/1.1 Georgia,serif; }
.tc-dua-dialog p { max-inline-size:55ch; margin:.7rem auto; color:#516963; line-height:1.7; }
.tc-dua-dialog__boundary { border:1px solid rgb(182 138 45 / .25); border-radius:.85rem; padding:.75rem; background:#fff9e9; font-size:.78rem; }
.tc-dua-dialog__timer,.tc-dua-dialog__thanks { display:grid; justify-items:center; gap:.8rem; }
.tc-dua-dialog__count { color:#9c7117; font:700 clamp(4.5rem,16vw,8rem)/1 Georgia,serif; font-variant-numeric:tabular-nums; }
.tc-dua-dialog__progress { overflow:hidden; inline-size:min(22rem,100%); block-size:.5rem; border-radius:999px; background:#dce7e3; }
.tc-dua-dialog__progress i { display:block; inline-size:var(--tc-dua-progress,0%); block-size:100%; border-radius:inherit; background:linear-gradient(90deg,#1d6a5b,#d8ae52); transition:inline-size 1s linear; }
.tc-dua-dialog [disabled] { cursor:not-allowed; opacity:.5; }
.tc-dua-dialog [hidden] { display:none !important; }
.tc-dua-dialog:not([open]) { display:none; }

.tc-charity-directory { display:grid; gap:clamp(1.25rem,3vw,2.5rem); }
.tc-charity-directory__hero { overflow:hidden; border-radius:clamp(1.2rem,3vw,2.2rem); padding:clamp(1.5rem,7vw,5rem); background:radial-gradient(circle at 86% 15%,rgb(216 174 82 / .2),transparent 18rem),linear-gradient(135deg,#051b20,#10453d); color:#eaf5f0; }
.tc-charity-directory__hero h1 { max-inline-size:14ch; margin:.2rem 0 1rem; color:#fff1bb; font:700 clamp(2.7rem,6vw,5.5rem)/.98 Georgia,serif; letter-spacing:-.035em; }
.tc-charity-directory__hero > p:last-child { max-inline-size:62ch; color:#cfe0dc; font-size:clamp(1.05rem,1.6vw,1.25rem); line-height:1.7; }
.tc-charity-directory__notice,.tc-charity-directory__review { border:1px solid rgb(24 92 80 / .18); border-radius:1.25rem; padding:clamp(1.2rem,3vw,2rem); background:#f0f7f4; }
.tc-charity-directory__notice h2,.tc-charity-directory__review h2 { margin:0 0 .6rem; color:#123d36; font:700 clamp(1.5rem,3vw,2.1rem)/1.1 Georgia,serif; }
.tc-charity-directory__notice p,.tc-charity-directory__review p { max-inline-size:85ch; color:#526b65; line-height:1.65; }
.tc-charity-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(1rem,3vw,2rem); }
.tc-charity-card { display:grid; align-content:start; gap:.8rem; min-inline-size:0; border:1px solid rgb(182 138 45 / .27); border-radius:1.4rem; padding:clamp(1.2rem,3vw,2rem); background:linear-gradient(145deg,#fff,#fbf8ec); box-shadow:0 1rem 3rem rgb(5 33 34 / .08); }
.tc-charity-card__status { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem; color:#60716d; font-size:max(12px, .68rem); font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
.tc-charity-card__status span { border-radius:999px; padding:.35rem .55rem; background:#dff1ea; color:#195848; }
.tc-charity-card h2 { margin:.2rem 0 0; color:#123d36; font:700 clamp(1.55rem,3vw,2.2rem)/1.08 Georgia,serif; }
.tc-charity-card h3 { margin:.55rem 0 0; color:#735314; font-size:.82rem; letter-spacing:.035em; text-transform:uppercase; }
.tc-charity-card p { margin:0; color:#526761; line-height:1.65; }
.tc-charity-card__number { color:#86641e !important; font-weight:850; }
.tc-charity-card__checks { display:flex; flex-wrap:wrap; gap:.55rem 1rem; border-block-start:1px solid rgb(24 92 80 / .12); padding-block-start:.85rem; font-size:.78rem; font-weight:800; }
.tc-charity-card__checks a { color:#1c6154; text-underline-offset:.2em; }
.tc-charity-card > .tc-button { justify-self:start; margin-block-start:.4rem; }
.tc-support-thanks { border:1px solid rgb(24 92 80 / .18); border-radius:1.5rem; padding:clamp(1.5rem,7vw,5rem); background:linear-gradient(145deg,#fff,#ecf5f2); }
.tc-support-thanks h1 { max-inline-size:15ch; color:#123d36; font:700 clamp(2.4rem,6vw,5rem)/1 Georgia,serif; }
.tc-support-thanks > p:not(.tc-eyebrow) { max-inline-size:65ch; color:#526b65; font-size:1.05rem; line-height:1.7; }

@media (max-width: 800px) {
    .tc-account-control-grid { grid-template-columns: 1fr; }
    .tc-delete-student,
    .tc-reset-student { grid-template-columns: 1fr; }
    .tc-delete-student .tc-button,
    .tc-reset-student .tc-button { justify-self: start; }
    .tc-notification { grid-template-columns: 1fr; }
    .tc-notification .tc-actions { justify-content: flex-start; }
    .tc-donate { grid-template-columns: 1fr; min-block-size: 0; }
    .tc-support__hero,.tc-support__standards,.tc-supporters__head { grid-template-columns:1fr; min-block-size:0; }
    .tc-charity-grid { grid-template-columns:1fr; }
    .tc-dashboard__welcome .tc-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Public discovery, subject and audience hubs. */
.tc-site:has(.tc-discovery-hub) .tc-page-head{display:none}
.tc-site:has(.tc-discovery-hub) .wp-block-post-content{inline-size:100%!important;max-inline-size:none!important;padding-inline:0!important}
.tc-discovery-hub{--tc-hub-ink:#0b352d;--tc-hub-green:#0b4b3f;--tc-hub-gold:#d8a93f;--tc-hub-cream:#fffaf0;inline-size:100%!important;max-inline-size:none!important;color:#173b34;background:#fbfaf6}
.tc-discovery-directory{inline-size:min(calc(100% - clamp(2rem,5vw,5rem)),94rem);margin-inline:auto;padding-block:clamp(3rem,6vw,6rem)}
.tc-discovery-directory__head{max-inline-size:62rem}.tc-discovery-directory__head h2{margin:.2em 0 .35em;color:#103f35;font-size:clamp(2.1rem,4vw,4rem);line-height:1;letter-spacing:-.04em}.tc-discovery-directory__head>p:last-child{color:#62746f;line-height:1.7}
.tc-discovery-directory__groups{display:grid;gap:1.2rem;margin-block-start:2rem}.tc-discovery-directory__groups>section{display:grid;grid-template-columns:minmax(13rem,.35fr) minmax(0,1.65fr);gap:1.5rem;padding:1.4rem;border:1px solid #d7dfdb;border-radius:1.25rem;background:#fff}.tc-discovery-directory__groups h3{margin:0 0 .35rem;color:#123f35;font-size:1.35rem}.tc-discovery-directory__groups section>div p{margin:0;color:#64766f;font-size:.9rem;line-height:1.55}.tc-discovery-directory__groups nav{display:flex;flex-wrap:wrap;gap:.55rem}.tc-discovery-directory__groups nav a{display:inline-flex;align-items:center;gap:.55rem;min-block-size:2.8rem;padding:.58rem .8rem;border:1px solid #cbd8d3;border-radius:999px;background:#fbfdfb;color:#16483d;font-size:.78rem;font-weight:820;text-decoration:none}.tc-discovery-directory__groups nav a:hover,.tc-discovery-directory__groups nav a:focus-visible{border-color:#b8872e;background:#0e493e;color:#fff4cf}.tc-discovery-directory__groups nav a span{color:#bd8925}
.tc-discovery-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 80% 5%,rgb(222 183 84 / .22),transparent 31%),radial-gradient(circle at 12% 110%,rgb(33 117 96 / .35),transparent 44%),linear-gradient(130deg,#061d19,#0a3b32 62%,#082820);color:#f9f4e6}
.tc-discovery-hero::before,.tc-discovery-hero::after{content:"";position:absolute;z-index:-1;pointer-events:none}
.tc-discovery-hero::before{inline-size:42rem;aspect-ratio:1;inset:-18rem -8rem auto auto;border:1px solid rgb(235 197 102 / .25);border-radius:50%;box-shadow:0 0 0 5rem rgb(235 197 102 / .035),0 0 0 10rem rgb(235 197 102 / .025)}
.tc-discovery-hero::after{inset:0;background-image:radial-gradient(circle,#f6dd9c 0 1px,transparent 1.4px);background-size:78px 78px;opacity:.16}
.tc-discovery-hero__inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(17rem,.62fr);gap:clamp(2rem,6vw,6rem);align-items:end;padding-block:clamp(4.5rem,8vw,8rem)}
.tc-discovery-hero__copy{max-inline-size:64rem}
.tc-discovery-hero .tc-eyebrow{color:#efcf7b}
.tc-discovery-hero h1{max-inline-size:18ch;margin:.2em 0 .35em;color:#fffaf0;font-size:clamp(2.8rem,6vw,6.7rem);line-height:.91;letter-spacing:-.045em;text-wrap:balance}
.tc-discovery-hero__copy>p:not(.tc-eyebrow){max-inline-size:64ch;color:#dce9e5;font-size:clamp(1.05rem,1.55vw,1.35rem);line-height:1.75}
.tc-discovery-hero__trust{display:flex;flex-wrap:wrap;gap:.65rem;margin-block-start:1.8rem}
.tc-discovery-hero__trust span{padding:.55rem .8rem;border:1px solid rgb(238 205 116 / .35);border-radius:999px;color:#f5dda0;font-size:max(12px, .72rem);font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.tc-discovery-hero aside{padding:1.5rem;border:1px solid rgb(244 216 139 / .3);border-radius:1.5rem;background:linear-gradient(145deg,rgb(255 255 255 / .11),rgb(255 255 255 / .035));box-shadow:0 1.5rem 4rem rgb(0 0 0 / .18);backdrop-filter:blur(12px)}
.tc-discovery-hero aside>span{display:inline-grid;place-items:center;min-inline-size:4rem;min-block-size:4rem;margin-block-end:1.5rem;border-radius:1.1rem;background:linear-gradient(145deg,#f4d783,#c88b21);color:#0b3029;font-size:max(12px, .72rem);font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.tc-discovery-hero aside strong{display:block;color:#fff4cf;font-family:var(--wp--preset--font-family--display,Georgia,serif);font-size:1.55rem;line-height:1.12}
.tc-discovery-hero aside p{margin-block-end:0;color:#d9e6e2;font-size:.92rem;line-height:1.65}
.tc-discovery-breadcrumbs{display:flex;align-items:center;gap:.65rem;padding-block:1rem;color:#657d76;font-size:.82rem;overflow:hidden;white-space:nowrap}
.tc-discovery-breadcrumbs a{color:#315f55}.tc-discovery-breadcrumbs strong{overflow:hidden;text-overflow:ellipsis;color:#183e35}
.tc-discovery-focus{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,5rem);align-items:start;padding-block:clamp(3.5rem,6vw,6rem)}
.tc-discovery-focus h2,.tc-discovery-courses h2,.tc-discovery-events h2,.tc-discovery-search h2,.tc-discovery-related h2,.tc-discovery-account h2{margin:.18em 0 .45em;color:var(--tc-hub-ink);font-size:clamp(2rem,3.5vw,3.7rem);line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.tc-discovery-focus>div>p:last-child{max-inline-size:45ch;color:#5a716b;font-size:1.02rem;line-height:1.75}
.tc-discovery-focus ol{display:grid;gap:.8rem;margin:0;padding:0;list-style:none}
.tc-discovery-focus li{display:grid;grid-template-columns:3.1rem 1fr;gap:1rem;align-items:center;min-block-size:4.5rem;padding:.75rem 1rem;border:1px solid #d5dfda;border-radius:1.15rem;background:#fff;box-shadow:0 1rem 2.5rem rgb(6 48 40 / .06)}
.tc-discovery-focus li span{display:grid;place-items:center;aspect-ratio:1;border-radius:.8rem;background:#0d4d40;color:#f3d47e;font-size:.75rem;font-weight:900}
.tc-discovery-focus li strong{color:#153f35;font-size:1rem;line-height:1.35}
.tc-discovery-courses{padding-block:1rem clamp(5rem,8vw,8rem)}
.tc-discovery-courses .tc-section__head{max-inline-size:60rem}
.tc-discovery-courses__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem;margin-block-start:2.2rem}
.tc-discovery-course{display:flex;flex-direction:column;min-inline-size:0;min-block-size:23rem;padding:1.45rem;border:1px solid #d8ded9;border-radius:1.35rem;background:linear-gradient(145deg,#fff,#fbf7ea);box-shadow:0 1.25rem 3rem rgb(7 50 42 / .07);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.tc-discovery-course:hover{transform:translateY(-3px);border-color:rgb(184 135 46 / .55);box-shadow:0 1.5rem 3.5rem rgb(7 50 42 / .12)}
.tc-discovery-course__meta{display:flex;align-items:center;gap:.7rem;margin-block-end:1rem;color:#6c7d77;font-size:max(12px, .72rem);font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.tc-discovery-course__meta span{display:grid;place-items:center;inline-size:2.4rem;aspect-ratio:1;border-radius:.7rem;background:#0c483c;color:#f1cf73}.tc-discovery-course__meta p{margin:0}
.tc-discovery-course h3{margin:.1rem 0 .75rem;font-size:clamp(1.3rem,1.8vw,1.75rem);line-height:1.12}.tc-discovery-course h3 a{color:#103f34;text-decoration:none}.tc-discovery-course>p{margin:0;color:#5d716b;line-height:1.68}
.tc-discovery-course__link{display:flex;justify-content:space-between;gap:1rem;margin-block-start:auto;padding-block-start:1.15rem;border-block-start:1px solid #e3e5df;color:#0a6f5a;font-weight:850;text-decoration:none}
.tc-discovery-method{padding-block:clamp(4rem,7vw,7rem);background:radial-gradient(circle at 10% 10%,rgb(218 176 76 / .13),transparent 28%),#092f28;color:#e8f0ed}
.tc-discovery-method>.tc-shell>div:first-child{display:grid;grid-template-columns:.65fr 1.35fr;gap:2rem;align-items:end}.tc-discovery-method .tc-eyebrow{color:#e3bd5a}.tc-discovery-method h2{max-inline-size:18ch;margin:0;color:#fff5d5;font-size:clamp(2.2rem,4vw,4.5rem);line-height:.98;letter-spacing:-.04em}
.tc-discovery-method__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-block:2.4rem 1.7rem}
.tc-discovery-method__grid article{padding:1.5rem;border:1px solid rgb(238 209 132 / .19);border-radius:1.25rem;background:rgb(255 255 255 / .055)}
.tc-discovery-method__grid span{display:grid;place-items:center;inline-size:2.8rem;aspect-ratio:1;border-radius:.8rem;background:#d9a83c;color:#0c3029;font-weight:950}.tc-discovery-method__grid h3{margin:.9rem 0 .5rem;color:#fff4cf;font-size:1.25rem}.tc-discovery-method__grid p{margin:0;color:#c9d8d3;line-height:1.65}.tc-discovery-method>.tc-shell>a{color:#f0cd72;font-weight:850}
.tc-discovery-related{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:3rem;padding-block:clamp(4rem,7vw,7rem)}
.tc-discovery-related nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.tc-discovery-related nav a{display:flex;flex-direction:column;justify-content:space-between;gap:1.2rem;min-block-size:8.5rem;padding:1.15rem;border:1px solid #d5dfda;border-radius:1rem;background:#fff;color:#16493e;font-weight:850;text-decoration:none}.tc-discovery-related nav a span{align-self:flex-end;color:#b27e20;font-size:1.4rem}
.tc-discovery-account{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;margin-block-end:clamp(4rem,7vw,7rem);padding:clamp(1.6rem,3.5vw,3rem);border:1px solid rgb(184 135 46 / .28);border-radius:1.5rem;background:radial-gradient(circle at 100% 0%,rgb(218 177 80 / .18),transparent 35%),#f2f7f3;box-shadow:0 1.25rem 3.5rem rgb(8 51 43 / .07)}
.tc-discovery-account h2{font-size:clamp(1.8rem,3vw,3.2rem)}.tc-discovery-account p{max-inline-size:68ch;color:#5d716b;line-height:1.7}.tc-discovery-account .tc-actions{justify-content:flex-end}
.tc-discovery-events,.tc-discovery-search{padding-block:1rem clamp(5rem,8vw,8rem)}
.tc-discovery-events__state{max-inline-size:64rem}.tc-discovery-events__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-block:2rem}.tc-discovery-events__grid article{padding:1.5rem;border:1px solid #d6dfda;border-radius:1.2rem;background:#fff}.tc-discovery-events__grid span{color:#a8781d;font-size:.75rem;font-weight:900}.tc-discovery-events__grid h3{margin:.7rem 0 .4rem;color:#123e34}.tc-discovery-events__grid p{margin:0;color:#5d716b;line-height:1.65}.tc-discovery-events .tc-notice{border-radius:1.2rem}
.tc-discovery-search>div:first-child{max-inline-size:58rem}.tc-discovery-search form{margin-block:2rem;padding:1.25rem;border:1px solid #d5dfda;border-radius:1.25rem;background:#fff;box-shadow:0 1rem 3rem rgb(7 50 42 / .07)}.tc-discovery-search form label{display:block;margin-block-end:.55rem;color:#254b42;font-size:.76rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.tc-discovery-search form>div{display:grid;grid-template-columns:1fr auto;gap:.65rem}.tc-discovery-search input{min-inline-size:0;block-size:3.4rem;padding-inline:1rem;border:1px solid #bacbc5;border-radius:.85rem;background:#fbfdfb;color:#153e35;font:inherit}.tc-discovery-search button{padding-inline:1.6rem;border:0;border-radius:.85rem;background:#0b725d;color:#fff7e4;font-weight:900;cursor:pointer}
.tc-discovery-search__suggestions{margin-block-start:2rem}.tc-discovery-search__suggestions h2{font-size:1.8rem}.tc-discovery-search__suggestions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.tc-discovery-search__suggestions a{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid #d5dfda;border-radius:.9rem;background:#fff;color:#16483d;font-weight:800;text-decoration:none}.tc-discovery-search__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.tc-discovery-search__grid article{display:flex;flex-direction:column;padding:1.3rem;border:1px solid #d7dfdb;border-radius:1.15rem;background:#fff}.tc-discovery-search__grid h3{margin:.25rem 0 .65rem;color:#123e34;font-size:1.35rem}.tc-discovery-search__grid h3 a{color:inherit;text-decoration:none}.tc-discovery-search__grid article>p:not(.tc-eyebrow){color:#60736d;line-height:1.6}.tc-discovery-search__grid article>a{margin-block-start:auto;color:#0a6d59;font-weight:850}
@media(max-width:68rem){.tc-discovery-hero__inner{grid-template-columns:1fr}.tc-discovery-hero aside{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;align-items:center;max-inline-size:45rem}.tc-discovery-hero aside>span{grid-row:1/3;margin:0}.tc-discovery-hero aside p{grid-column:2}.tc-discovery-courses__grid,.tc-discovery-search__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tc-discovery-related{grid-template-columns:1fr}.tc-discovery-related nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:50rem){.tc-discovery-focus,.tc-discovery-method>.tc-shell>div:first-child,.tc-discovery-account{grid-template-columns:1fr}.tc-discovery-method__grid,.tc-discovery-events__grid,.tc-discovery-related nav,.tc-discovery-search__suggestions>div{grid-template-columns:1fr}.tc-discovery-account .tc-actions{justify-content:flex-start}.tc-discovery-hero h1{font-size:clamp(2.6rem,13vw,4.8rem)}}
@media(max-width:50rem){.tc-discovery-directory__groups>section{grid-template-columns:1fr}.tc-discovery-directory__groups nav{display:grid;grid-template-columns:1fr 1fr}.tc-discovery-directory__groups nav a{border-radius:.85rem}}
@media(max-width:38rem){.tc-discovery-hero__inner{padding-block:3.7rem}.tc-discovery-hero aside{display:block}.tc-discovery-hero aside>span{margin-block-end:1rem}.tc-discovery-courses__grid,.tc-discovery-search__grid{grid-template-columns:1fr}.tc-discovery-course{min-block-size:0}.tc-discovery-search form>div{grid-template-columns:1fr}.tc-discovery-search button{block-size:3.2rem}.tc-discovery-breadcrumbs{font-size:max(12px, .74rem)}.tc-discovery-account .tc-actions{display:grid;grid-template-columns:1fr}.tc-discovery-account .tc-button{text-align:center}}
@media(max-width:38rem){.tc-discovery-directory__groups nav{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tc-discovery-course{transition:none}.tc-discovery-course:hover{transform:none}}

@media (max-width: 520px) {
    .tc-assignee-choices { grid-template-columns:1fr; }
    .tc-assignment-dialog { inline-size:calc(100vw - 1rem); max-block-size:calc(100dvh - 1rem); }
    .tc-assignment-dialog__form { padding:1rem; }
    .tc-assignment-dialog .tc-actions { display:grid; }
    .tc-assignment-dialog .tc-button { inline-size:100%; }
    .tc-mastery-stats { grid-template-columns:1fr 1fr; }
    .tc-learning-group { border-radius:1rem; padding:.85rem; }
    .tc-learning-group__head { grid-template-columns:minmax(0,1fr) auto; }
}

@media (max-width: 520px) {
    .tc-support,.tc-charity-directory,.tc-support-thanks { inline-size:calc(100vw - 1rem); }
    .tc-support__hero { padding:1.15rem; }
    .tc-support__hero h1,.tc-charity-directory__hero h1 { font-size:clamp(2.25rem,12vw,3.4rem); }
    .tc-support__ayah { font-size:clamp(1.8rem,9vw,2.7rem); }
    .tc-support__choice,.tc-support__standards,.tc-charity-card { border-radius:1rem; padding:1rem; }
    .tc-supporters { border-radius:1rem; padding:.85rem; }
    .tc-supporter-card { grid-template-columns:1fr; border-radius:1rem; padding:.85rem; }
    .tc-supporter-card__logo { inline-size:min(12rem,70%); min-block-size:0; justify-self:center; }
}

@media (prefers-reduced-motion: reduce) { .tc-donate::before,.tc-support__hero::before { animation: none; } .tc-dua-dialog__progress i { transition:none; } }

@font-face {
  font-family:"TC Uthmanic Hafs";
  src:url("https://verses.quran.foundation/fonts/quran/hafs/uthmanic_hafs/UthmanicHafs1Ver18.woff2") format("woff2");
  font-display:swap;
  font-style:normal;
  font-weight:400;
}

/* Qur'an study system: source layers remain visually and semantically distinct. */
.tc-ayah-study { --ayah-ink:#0a2825; --ayah-deep:#0c302a; --ayah-green:#185c50; --ayah-gold:#d8ae52; position:relative; isolation:isolate; overflow:hidden; margin-block:clamp(1.4rem,4vw,3rem); border:1px solid rgb(177 129 35 / .38); border-radius:clamp(1rem,2.2vw,1.7rem); background:linear-gradient(150deg,#fffdf8,#f3efe3); color:var(--ayah-ink); box-shadow:0 1.5rem 4rem rgb(6 36 32 / .12); }
.tc-ayah-study::before { position:absolute; z-index:-1; inset:-13rem -10rem auto auto; inline-size:27rem; aspect-ratio:1; border:1px solid rgb(216 174 82 / .17); border-radius:50%; box-shadow:0 0 0 2rem rgb(216 174 82 / .045),0 0 0 4rem rgb(216 174 82 / .035); content:""; }
.tc-ayah-study__header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:clamp(1.1rem,3vw,1.65rem); border-block-end:1px solid rgb(177 129 35 / .25); background:linear-gradient(105deg,#092d28,#154b42); color:#fff; }
.tc-content .tc-ayah-study__header h3 { margin:0; color:#fff5d3; font-size:clamp(1.35rem,2.6vw,2rem); }
.tc-ayah-study__header .tc-eyebrow { margin:0 0 .22rem; color:#e8ca82; }
.tc-ayah-study__verified { display:inline-flex; align-items:center; gap:.45rem; flex:none; border:1px solid rgb(235 207 139 / .4); border-radius:999px; padding:.48rem .72rem; color:#f6e8b9; background:rgb(0 0 0 / .15); font-size:.78rem; font-weight:800; }
.tc-ayah-print-note { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:1rem; padding:1rem clamp(1rem,3vw,1.6rem); border-block-end:1px solid rgb(135 83 22 / .22); background:linear-gradient(90deg,#fff7dc,#fffdf5); }
.tc-ayah-print-note div { display:grid; gap:.2rem; }
.tc-ayah-print-note strong { color:#704b13; }
.tc-ayah-print-note span { color:#5b5140; font-size:.88rem; line-height:1.5; }
.tc-ayah-print { display:inline-flex; align-items:center; justify-content:center; gap:.5rem; min-block-size:2.75rem; border:1px solid #8f651d; border-radius:999px; padding:.55rem .85rem; background:#fff; color:#59400f; font:800 .82rem/1.2 system-ui,sans-serif; cursor:pointer; }
.tc-ayah-print:is(:hover,:focus-visible) { background:#173f38; color:#fff; }
.tc-ayah-print svg,.tc-ayah-audio svg,.tc-word svg { inline-size:1.15rem; block-size:1.15rem; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.tc-ayah-study__arabic { padding:clamp(1.5rem,5vw,3.2rem) clamp(1rem,5vw,3rem); background:radial-gradient(circle at 50% 40%,rgb(223 183 90 / .14),transparent 42%),linear-gradient(145deg,#071f20,#0e3a34); color:#fff3c5; font-family:"TC Uthmanic Hafs","Noto Naskh Arabic","Amiri",serif; font-size:clamp(2.25rem,7vw,4.75rem); font-synthesis:none; font-weight:400; line-height:1.9; text-align:center; }
.tc-ayah-audio { display:grid; grid-template-columns:minmax(12rem,.8fr) minmax(12rem,1.2fr); align-items:center; gap:.8rem 1rem; padding:1rem clamp(1rem,3vw,1.6rem); border-block-end:1px solid rgb(24 92 80 / .18); background:#eaf3ef; }
.tc-ayah-audio__identity { display:flex; align-items:center; gap:.72rem; }
.tc-ayah-audio__identity > svg { flex:none; inline-size:1.5rem; block-size:1.5rem; color:var(--ayah-green); }
.tc-ayah-audio__identity span { display:grid; }
.tc-ayah-audio__identity small { color:#49645f; }
.tc-ayah-audio audio { inline-size:100%; block-size:2.5rem; }
.tc-ayah-audio__options { grid-column:1/-1; display:flex; justify-content:flex-end; gap:.35rem; }
.tc-ayah-audio__options button { display:inline-flex; align-items:center; gap:.3rem; min-block-size:2.75rem; border:1px solid rgb(24 92 80 / .3); border-radius:.7rem; padding:.45rem .75rem; background:#fff; color:var(--ayah-deep); font-weight:800; white-space:nowrap; cursor:pointer; }
.tc-ayah-audio__options button[aria-pressed="true"] { border-color:var(--ayah-gold); background:var(--ayah-deep); color:#fff; }
.tc-ayah-study__reading,.tc-word-study,.tc-translation-study,.tc-tafsir-study { margin:clamp(1rem,3vw,1.6rem); }
.tc-ayah-study__reading { border-inline-start:.3rem solid var(--ayah-gold); padding:.2rem 0 .2rem 1rem; }
.tc-ayah-study__label { display:block; color:#795512; font-size:max(12px, .72rem); font-weight:900; letter-spacing:.075em; text-transform:uppercase; }
.tc-ayah-study__reading p { margin:.35rem 0; color:#173f38; font:700 clamp(1.06rem,2vw,1.32rem)/1.55 Georgia,serif; }
.tc-ayah-study__reading small { display:block; max-inline-size:72ch; color:#52625f; line-height:1.5; }
.tc-word-study { border-block:1px solid rgb(24 92 80 / .2); padding-block:clamp(1rem,3vw,1.5rem); }
.tc-word-study__heading { display:flex; justify-content:space-between; align-items:end; gap:1rem; margin-block-end:1rem; }
.tc-word-study__heading p { margin:.2rem 0 0; }
.tc-word-study__key { display:inline-flex; align-items:center; gap:.45rem; color:#52625f; font-size:.77rem; }
.tc-word-study__key i { inline-size:.65rem; aspect-ratio:1; border-radius:50%; background:var(--ayah-gold); }
.tc-interlinear-key { display:grid; grid-template-columns:repeat(3,1fr); gap:.35rem; max-inline-size:35rem; margin:0 auto .65rem; color:#61736f; font-size:max(12px, .62rem); font-weight:900; letter-spacing:.065em; text-align:center; text-transform:uppercase; }
.tc-word-study__grid { display:flex; flex-wrap:wrap; gap:.65rem; justify-content:center; }
.tc-word { position:relative; display:grid; min-inline-size:7.2rem; flex:1 1 7.2rem; max-inline-size:12rem; gap:.16rem; border:1px solid rgb(24 92 80 / .2); border-radius:1rem; padding:.8rem .7rem; background:#fff; color:var(--ayah-ink); box-shadow:0 .55rem 1.4rem rgb(10 40 36 / .055); }
.tc-word__number { position:absolute; inset:.42rem .5rem auto auto; display:grid; place-items:center; inline-size:1.3rem; block-size:1.3rem; border:1px solid rgb(182 138 45 / .3); border-radius:50%; background:#fff9e8; color:#715018!important; font-size:max(12px, .63rem); }
.tc-word b { color:#103e36; font-family:"TC Uthmanic Hafs","Noto Naskh Arabic","Amiri",serif; font-size:clamp(1.55rem,3vw,2.1rem); font-synthesis:none; font-weight:400; line-height:1.55; }
.tc-word span { color:#7b571a; font-weight:850; }
.tc-word > span[dir="ltr"]:not(.tc-word__number) { overflow-wrap:normal; word-break:normal; hyphens:none; white-space:nowrap; font-size:max(12px, clamp(.72rem,1.1vw,.86rem)); }
.tc-word small { color:#52625f; line-height:1.3; }
.tc-word__play { position:absolute; inset:.38rem auto auto .38rem; display:grid; place-items:center; inline-size:2.75rem; block-size:2.75rem; border:0; border-radius:50%; background:transparent; color:#48746c; cursor:pointer; }
.tc-word__play:is(:hover,:focus-visible,.is-playing) { outline:2px solid var(--ayah-gold); outline-offset:1px; background:#fff4ce; color:#173f38; }
.tc-word:has(.tc-word__play:is(:hover,:focus-visible,.is-playing)) { border-color:var(--ayah-gold); background:#fff9e8; }
.tc-ayah-study__reading-held { max-inline-size:72ch; color:#4a5e59!important; font-family:system-ui,sans-serif!important; font-size:.95rem!important; font-weight:650!important; }
.tc-translation-study__intro { margin-block-end:1rem; }
.tc-translation-study__intro p { max-inline-size:74ch; margin:.25rem 0 0; }
.tc-translation-study__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.85rem; }
.tc-translation { min-inline-size:0; border:1px solid rgb(24 92 80 / .18); border-radius:1rem; padding:1rem; background:#fff; }
.tc-translation--primary { border-color:rgb(177 129 35 / .48); background:linear-gradient(145deg,#fffdf4,#f8f0d9); box-shadow:inset 0 .25rem 0 var(--ayah-gold); }
.tc-translation > span { color:#765317; font-size:max(12px, .72rem); font-weight:900; letter-spacing:.045em; text-transform:uppercase; }
.tc-translation p { margin:.55rem 0 0; color:#173a34; font:700 1rem/1.62 Georgia,serif; }
.tc-translation small { display:block; margin-block-start:.7rem; border-block-start:1px solid rgb(177 129 35 / .25); padding-block-start:.65rem; color:#5b5448; line-height:1.45; }
.tc-tafsir-study { display:grid; grid-template-columns:auto minmax(0,1fr); gap:1rem; border:1px solid rgb(80 100 96 / .24); border-radius:1rem; padding:1rem; background:#edf2f0; }
.tc-tafsir-study__mark { display:grid; place-items:center; inline-size:2.4rem; block-size:2.4rem; border-radius:.7rem; background:var(--ayah-deep); color:#f8e6ad; font:900 1rem Georgia,serif; }
.tc-tafsir-study p { margin:.35rem 0; line-height:1.65; }
.tc-tafsir-study strong { color:#5b4c2c; font-size:.82rem; }
.tc-ayah-study__source { display:flex; justify-content:space-between; gap:1rem; padding:.9rem clamp(1rem,3vw,1.6rem); background:#082622; color:#cbdcd7; font-size:.76rem; }
.tc-ayah-study__source a { color:#f3d98d; font-weight:800; }
.tc-source-ledger { margin:clamp(1rem,3vw,1.6rem); border:1px solid rgb(24 92 80 / .25); border-radius:1rem; background:#f6faf8; }
.tc-source-ledger summary { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.05rem .7rem; align-items:center; padding:.85rem 1rem; color:#123e37; cursor:pointer; }
.tc-source-ledger summary > span { grid-row:1/3; display:grid; place-items:center; inline-size:2.2rem; block-size:2.2rem; border-radius:.65rem; background:#123e37; color:#f5dc96; }
.tc-source-ledger summary svg { inline-size:1.15rem; block-size:1.15rem; fill:none; stroke:currentColor; stroke-width:1.8; }
.tc-source-ledger summary small { color:#61736f; }
.tc-source-ledger__body { border-block-start:1px solid rgb(24 92 80 / .16); padding:1rem; }
.tc-source-ledger__body dl { display:grid; grid-template-columns:minmax(9rem,.32fr) minmax(0,.68fr); margin:0; }
.tc-source-ledger__body :is(dt,dd) { margin:0; border-block-end:1px solid rgb(24 92 80 / .12); padding:.72rem; }
.tc-source-ledger__body dt { color:#173f38; font-weight:850; }
.tc-source-ledger__body dd { color:#4e625e; }
.tc-source-ledger__body p { margin:1rem 0 0; }

.tc-quiz-visual { overflow:hidden; margin:1rem 0 1.2rem; border:1px solid rgb(182 138 45 / .3); border-radius:1rem; background:radial-gradient(circle at 50% 45%,rgb(216 174 82 / .12),transparent 42%),linear-gradient(145deg,#f8fbfa,#eaf2ef); }
.tc-quiz-visual svg { display:block; inline-size:100%; block-size:auto; max-block-size:17rem; }
.tc-quiz-visual figcaption { border-block-start:1px solid rgb(24 92 80 / .16); padding:.55rem .85rem; color:#4d635e; font-size:.78rem; font-weight:800; text-align:center; }
.tc-quiz-question__source { display:flex; flex-wrap:wrap; gap:.3rem .55rem; align-items:center; margin:.75rem 0 1rem; border-inline-start:.2rem solid #b68a2d; padding:.5rem .75rem; background:#f7f4e9; color:#455c57; font-size:.78rem; }
.tc-quiz-question__source strong { color:#725117; letter-spacing:.035em; text-transform:uppercase; }
.tc-quiz-feedback { display:grid; gap:1rem; margin:clamp(1rem,3vw,2rem); padding:clamp(1rem,3vw,2rem); border:1px solid rgb(24 92 80 / .22); border-radius:1.25rem; background:linear-gradient(145deg,#fbfaf4,#eef8f4); box-shadow:0 1rem 3rem rgb(9 47 40 / .08); }
.tc-quiz-feedback.needs-rework { border-color:rgb(182 138 45 / .45); background:linear-gradient(145deg,#fffaf0,#f7f1df); }
.tc-quiz-feedback header h2 { margin:.25rem 0 .5rem; color:#123e36; font-family:Georgia,serif; font-size:clamp(1.55rem,4vw,2.5rem); }
.tc-quiz-feedback__list { display:grid; gap:.85rem; margin:0; padding:0; list-style:none; }
.tc-quiz-feedback__list > li { display:grid; gap:.45rem; padding:1rem; border:1px solid rgb(24 92 80 / .16); border-inline-start:.35rem solid #1c7a68; border-radius:.85rem; background:#fff; }
.tc-quiz-feedback__list > li.is-incorrect { border-inline-start-color:#b68a2d; }
.tc-quiz-feedback__list h3,.tc-quiz-feedback__list p { margin:0; }
.tc-quiz-feedback__status { display:flex; gap:.55rem; align-items:center; color:#175f52; font-size:.78rem; letter-spacing:.035em; text-transform:uppercase; }
.tc-quiz-feedback__status span { display:grid; inline-size:1.75rem; aspect-ratio:1; place-items:center; border-radius:50%; background:#175f52; color:#fff; }
.is-incorrect .tc-quiz-feedback__status { color:#785615; }
.is-incorrect .tc-quiz-feedback__status span { background:#b68a2d; }
.tc-quiz-feedback__teaching { padding:.7rem .8rem; border-radius:.6rem; background:#f4f7f4; color:#274a44; }
.tc-quiz-feedback__source { color:#5b6f6b; font-size:.82rem; }
@media (max-width:600px) { .tc-quiz-feedback { margin:1rem 0; border-radius:1rem; } }
.tc-lesson-orientation { position:relative; overflow:hidden; border:1px solid rgb(182 138 45 / .32); border-radius:1.3rem; padding:clamp(1.2rem,4vw,2.2rem); background:radial-gradient(circle at 90% 10%,rgb(216 174 82 / .16),transparent 30%),linear-gradient(145deg,#fffdf7,#edf5f1); }
.tc-lesson-orientation h2 { margin-block:.2rem .7rem; }
.tc-lesson-map { position:sticky; z-index:5; inset-block-start:6.5rem; display:flex; gap:.4rem; overflow-x:auto; margin-block:1.2rem 2rem; border:1px solid rgb(24 92 80 / .2); border-radius:999px; padding:.38rem; background:rgb(255 255 255 / .94); box-shadow:0 .7rem 1.8rem rgb(6 36 32 / .08); scrollbar-width:none; backdrop-filter:blur(10px); }
.tc-lesson-map a { flex:1 0 auto; border-radius:999px; padding:.58rem .8rem; color:#16483f; font-size:.78rem; font-weight:850; text-align:center; text-decoration:none; }
.tc-lesson-map a:is(:hover,:focus-visible) { background:#123e37; color:#fff; }
.tc-learning-callout,.tc-lesson-pronunciation,.tc-source-boundary,.tc-quiz-readiness { margin-block:1.5rem; border:1px solid rgb(182 138 45 / .32); border-radius:1.15rem; padding:clamp(1rem,3vw,1.6rem); background:linear-gradient(145deg,#fffaf0,#f3f7f4); box-shadow:0 .8rem 2.2rem rgb(7 38 33 / .06); }
.tc-learning-callout h3,.tc-lesson-pronunciation h2,.tc-source-boundary h2 { margin-block-start:0; }
.tc-lesson-pronunciation { border-color:rgb(24 92 80 / .28); background:radial-gradient(circle at 100% 0%,rgb(216 174 82 / .15),transparent 33%),linear-gradient(145deg,#eaf4ef,#fff); }
.tc-misconceptions { display:grid; grid-template-columns:minmax(11rem,.36fr) minmax(0,.64fr); gap:0; overflow:hidden; border:1px solid rgb(24 92 80 / .2); border-radius:1rem; }
.tc-misconceptions dt,.tc-misconceptions dd { margin:0; border-block-end:1px solid rgb(24 92 80 / .14); padding:1rem; }
.tc-misconceptions dt { background:#123e37; color:#fff1c6; font-weight:850; }
.tc-misconceptions dd { background:#fff; }
.tc-misconceptions > :nth-last-child(-n+2) { border-block-end:0; }
.tc-source-boundary { background:#f0f2f1; color:#334e49; font-size:.92rem; }
.tc-quiz-readiness strong { color:#6f4b12; font-size:1.08rem; }
.tc-parent-guide { overflow:hidden; margin-block:clamp(2rem,6vw,4rem); border:1px solid rgb(182 138 45 / .35); border-radius:1.5rem; background:#f8fbf9; box-shadow:0 1.4rem 3.5rem rgb(7 38 33 / .09); }
.tc-parent-guide__hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(16rem,.55fr); gap:clamp(1.2rem,4vw,2.5rem); padding:clamp(1.4rem,5vw,3rem); background-color:#0c3531; background-image:radial-gradient(circle at 90% 5%,rgb(216 174 82 / .2),transparent 30%),linear-gradient(135deg,#061f1d,#12483f); color:#e7f0ed; }
.tc-content .tc-parent-guide__hero h2 { margin:.25rem 0 .8rem; color:#fff1c0!important; font-size:clamp(1.7rem,4vw,2.7rem); text-shadow:0 .08rem .8rem rgb(0 0 0 / .28); }
.tc-parent-guide__hero p { margin:0; line-height:1.7; }
.tc-parent-guide__hero aside { align-self:start; display:grid; gap:.45rem; border:1px solid rgb(239 211 139 / .32); border-radius:1rem; padding:1rem; background:#0b3430; }
.tc-parent-guide__hero aside strong { color:#f3d98d; background:#0b3430; font-size:.77rem; letter-spacing:.06em; text-transform:uppercase; }
.tc-parent-guide__hero aside span { background:#0b3430; line-height:1.55; }
.tc-parent-guide__principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:rgb(24 92 80 / .18); }
.tc-parent-guide__principles article { padding:1rem; background:#fffdf6; }
.tc-parent-guide__principles strong { color:#694b14; }
.tc-parent-guide__principles p { margin:.35rem 0 0; color:#4b605b; font-size:.9rem; line-height:1.55; }
.tc-parent-guide__section { margin:1rem clamp(1rem,4vw,2rem); border:1px solid rgb(24 92 80 / .2); border-radius:1rem; background:#fff; }
.tc-parent-guide__section summary { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:.75rem; padding:1rem; color:#123e37; cursor:pointer; }
.tc-parent-guide__section summary span { display:grid; place-items:center; inline-size:2.15rem; block-size:2.15rem; border-radius:.65rem; background:#123e37; color:#f2d889; font-size:max(12px, .72rem); font-weight:900; }
.tc-parent-guide__section summary strong { font-size:1.03rem; }
.tc-parent-guide__section > div { border-block-start:1px solid rgb(24 92 80 / .14); padding:clamp(1rem,3vw,1.5rem); }
.tc-parent-guide__section :is(li,p,dd) { line-height:1.65; }
.tc-parent-guide__script { border-inline-start:.3rem solid #b68a2d; padding:.85rem 1rem; background:#fff9e8; color:#3f514d; }
.tc-session-plan li { margin-block-end:.7rem; }
.tc-age-grid,.tc-followup-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.tc-age-grid article,.tc-followup-grid article { border:1px solid rgb(24 92 80 / .16); border-radius:.85rem; padding:1rem; background:linear-gradient(145deg,#f8fbfa,#fff); }
.tc-age-grid h3,.tc-followup-grid h3 { margin-block-start:0; color:#765317; }
.tc-parent-guide__troubleshooting { display:grid; grid-template-columns:minmax(10rem,.35fr) minmax(0,.65fr); margin:0; }
.tc-parent-guide__troubleshooting :is(dt,dd) { margin:0; border-block-end:1px solid rgb(24 92 80 / .14); padding:.8rem; }
.tc-parent-guide__troubleshooting dt { color:#173f38; font-weight:850; }
.tc-parent-guide__evidence { margin:1.5rem 0 0; padding:clamp(1.2rem,4vw,2rem); background:#0a302b; color:#dce9e5; }
.tc-content .tc-parent-guide__evidence h3 { margin-block-start:0; color:#f3d98d!important; }
.tc-parent-guide__evidence a { color:#f7dfa0; }

/* Names, routed learning and progressive reading share one restrained study system. */
.tc-names-hub { --name-deep:#061d20; --name-green:#123f38; --name-gold:#d7af55; overflow:hidden; padding-block:clamp(3rem,8vw,7rem); background:radial-gradient(circle at 15% 8%,rgb(215 175 85 / .13),transparent 28rem),radial-gradient(circle at 88% 22%,rgb(67 151 132 / .12),transparent 26rem),linear-gradient(155deg,#04161c,#0b2a2b 50%,#061c22); color:#eaf4f0; }
.tc-names-hub__intro { max-inline-size:80rem; text-align:center; }
.tc-names-hub__intro h1 { margin:.35rem auto 1rem; color:#fff2bf; font:700 clamp(2.7rem,7vw,6.3rem)/.98 Georgia,serif; letter-spacing:-.035em; }
.tc-names-hub__intro .tc-lead { max-inline-size:76ch; margin-inline:auto; color:#e4eee9; font-size:clamp(1.05rem,2vw,1.3rem); line-height:1.75; }
.tc-names-hub__intro > p:last-child { color:#b9cbc5; }
.tc-names-hub__controls { display:grid; grid-template-columns:minmax(15rem,1.2fr) minmax(18rem,1fr) auto auto; gap:.8rem; align-items:end; margin-block:clamp(2rem,5vw,3.5rem) 1.25rem; border:1px solid rgb(229 200 126 / .26); border-radius:1.4rem; padding:clamp(1rem,2.5vw,1.5rem); background:rgb(3 18 22 / .72); box-shadow:0 1.5rem 4rem rgb(0 0 0 / .2); }
.tc-names-hub__search,.tc-names-hub__sort { display:grid; gap:.42rem; color:#f5e5ad; font-size:.75rem; font-weight:850; letter-spacing:.035em; }
.tc-names-hub__search input,.tc-names-hub__sort select { inline-size:100%; min-block-size:3rem; border:1px solid rgb(229 200 126 / .38); border-radius:.8rem; padding-inline:.85rem; background:#f8fbf9; color:#0e312c; font:700 1rem/1.2 system-ui,sans-serif; }
.tc-names-hub__filters { display:flex; flex-wrap:wrap; gap:.4rem; }
.tc-names-hub__filters button { min-block-size:3rem; border:1px solid rgb(229 200 126 / .35); border-radius:999px; padding:.55rem .8rem; background:transparent; color:#dbe9e4; font-weight:800; cursor:pointer; }
.tc-names-hub__filters button[aria-pressed="true"] { border-color:#e4c878; background:#f6e9ba; color:#153a34; }
.tc-names-hub__controls .tc-button { min-block-size:3rem; color:#f8e8b5; }
.tc-names-hub__status { grid-column:1/-1; margin:0; color:#c2d3ce; font-size:.84rem; }
.tc-names-hub__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(.8rem,2vw,1.2rem); }
.tc-name-hub-card { position:relative; min-inline-size:0; overflow:hidden; border:1px solid rgb(224 194 116 / .24); border-radius:1.2rem; background:linear-gradient(150deg,rgb(255 255 255 / .095),rgb(255 255 255 / .035)); box-shadow:0 1.1rem 2.8rem rgb(0 0 0 / .15); }
.tc-name-hub-card[hidden] { display:none; }
.tc-name-hub-card > a { display:grid; min-block-size:14rem; align-content:center; gap:.3rem; padding:1.35rem; color:inherit; text-align:center; text-decoration:none; }
.tc-name-hub-card > a:is(:hover,:focus-visible) { background:rgb(234 209 139 / .1); outline:2px solid #e9cf89; outline-offset:-.35rem; }
.tc-name-hub-card__arabic { color:#ffe9a7; font-family:"TC Uthmanic Hafs","Noto Naskh Arabic","Amiri",serif; font-size:clamp(2.2rem,4vw,3.2rem); font-synthesis:none; font-weight:400; line-height:1.65; }
.tc-name-hub-card__latin { color:#fff; font:700 1.1rem/1.3 Georgia,serif; }
.tc-name-hub-card small { color:#bfcfca; line-height:1.45; }
.tc-name-hub-card__state { display:grid; grid-template-columns:1fr; gap:.2rem; border-block-start:1px solid rgb(224 194 116 / .16); padding:.75rem 1rem; background:rgb(0 0 0 / .14); color:#b8cac4; font-size:max(12px, .7rem); }
.tc-name-hub-card__state span:first-child { color:#efd58e; font-weight:850; }
.tc-names-hub .tc-empty { border-color:rgb(224 194 116 / .3); background:rgb(0 0 0 / .16); color:#fff; }

.tc-name-study-page__head { overflow:hidden; padding-block:clamp(2.6rem,7vw,6rem); background:radial-gradient(circle at 50% 30%,rgb(216 174 82 / .18),transparent 22rem),linear-gradient(145deg,#04151c,#0b302c); color:#e8f2ef; }
.tc-name-study-header { max-inline-size:75rem; margin-inline:auto; text-align:center; }
.tc-name-study-header h1 { display:grid; gap:.15rem; margin:.3rem 0 1rem; }
.tc-name-study-header h1 span[lang="ar"] { color:#ffe9a5; font-family:"TC Uthmanic Hafs","Noto Naskh Arabic","Amiri",serif; font-size:clamp(4rem,11vw,8.5rem); font-synthesis:none; font-weight:400; line-height:1.45; }
.tc-name-study-header h1 span:not([lang]) { color:#fff; font:700 clamp(2rem,5vw,4rem)/1 Georgia,serif; }
.tc-name-study-header__gloss { max-inline-size:65ch; margin-inline:auto; color:#c8d8d3; line-height:1.7; }
.tc-name-study-header .tc-notice { max-inline-size:54rem; margin:1.3rem auto 0; border-color:rgb(228 198 116 / .35); background:rgb(0 0 0 / .2); color:#f3e8c2; text-align:start; }
.tc-name-connections { margin-block:clamp(2rem,6vw,5rem); border:1px solid rgb(182 138 45 / .3); border-radius:1.4rem; padding:clamp(1.2rem,4vw,2.2rem); background:linear-gradient(145deg,#fffaf0,#edf5f1); }
.tc-name-connections ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; margin:1.2rem 0 0; padding:0; list-style:none; }
.tc-name-connections a { display:grid; gap:.3rem; block-size:100%; border:1px solid rgb(24 92 80 / .18); border-radius:1rem; padding:1rem; background:#fff; color:#143f38; text-decoration:none; }
.tc-name-connections a span { color:#52635f; }
.tc-name-research { display:grid; gap:clamp(1.4rem,4vw,2.8rem); margin-block:clamp(2.5rem,7vw,5.5rem); border-block-start:1px solid rgb(182 138 45 / .28); padding-block-start:clamp(2rem,6vw,4rem); }
.tc-name-research__intro { max-inline-size:72ch; }
.tc-name-research__intro h2,.tc-name-research h3 { color:#0b4038; }
.tc-name-count-grid,.tc-name-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(.7rem,2vw,1rem); }
.tc-name-count-grid article,.tc-name-facts article { display:grid; align-content:start; gap:.45rem; min-inline-size:0; border:1px solid rgb(182 138 45 / .26); border-radius:1.15rem; padding:clamp(1rem,3vw,1.45rem); background:linear-gradient(150deg,#fffaf0,#f1f7f4); box-shadow:0 1rem 2.4rem rgb(12 51 44 / .06); }
.tc-name-count-grid span,.tc-name-facts span { color:#745714; font-size:.76rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.tc-name-count-grid strong { color:#0a463b; font:700 clamp(2rem,5vw,3.3rem)/1 Georgia,serif; }
.tc-name-count-grid p,.tc-name-facts p { margin:0; color:#52635f; font-size:.92rem; line-height:1.55; }
.tc-name-facts strong { overflow-wrap:anywhere; color:#133f38; font:700 1.2rem/1.25 Georgia,serif; }
.tc-name-research__finding { border-inline-start:.35rem solid #1a8e78; border-radius:.6rem; padding:1rem 1.1rem; background:#edf8f4; color:#254b44; line-height:1.65; }
.tc-name-research__finding--held { border-color:#b78722; background:#fff6df; }
.tc-name-renderings,.tc-name-source-verses,.tc-name-pairings { display:grid; gap:1rem; }
.tc-name-renderings__grid,.tc-name-pairings__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; }
.tc-name-renderings__grid article { display:grid; gap:.25rem; border:1px solid rgb(25 105 91 / .17); border-radius:.9rem; padding:1rem; background:#fff; }
.tc-name-renderings__grid strong { color:#0b4d41; font-size:1.05rem; }
.tc-name-renderings__grid span,.tc-name-research__source-note { color:#63716e; font-size:.86rem; }
.tc-name-source-verse { overflow:hidden; border:1px solid rgb(182 138 45 / .26); border-radius:1.25rem; background:#fff; box-shadow:0 1rem 2.6rem rgb(12 51 44 / .07); }
.tc-name-source-verse>header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.8rem 1rem; background:#073c34; color:#fff5ce; }
.tc-name-source-verse>header a { color:#fff5ce; font-size:.86rem; }
.tc-name-source-verse__arabic { margin:0; padding:clamp(1.3rem,4vw,2rem); background:radial-gradient(circle at 50% 50%,#fffdf4,#f4f8f5); color:#113d36; font-family:"TC Uthmanic Hafs","Noto Naskh Arabic","Amiri",serif; font-size:clamp(1.8rem,4vw,2.7rem); font-synthesis:none; line-height:2.2; text-align:center; }
.tc-name-source-verse__translations { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block-start:1px solid rgb(25 105 91 / .13); }
.tc-name-source-verse blockquote { margin:0; border-inline-start:0; padding:1rem; color:#344e49; }
.tc-name-source-verse blockquote+blockquote { border-inline-start:1px solid rgb(25 105 91 / .13); }
.tc-name-source-verse blockquote span { display:block; margin-block-end:.4rem; color:#8a681b; font-size:.76rem; font-weight:800; text-transform:uppercase; }
.tc-name-source-verse blockquote p { margin:0; font-size:.92rem; line-height:1.6; }
.tc-name-pairings__grid article { display:grid; gap:.3rem; border:1px solid rgb(182 138 45 / .22); border-radius:1rem; padding:1rem; background:linear-gradient(145deg,#fffdf7,#edf6f2); }
.tc-name-pairings__grid article>span { color:#796020; font-size:max(12px, .74rem); font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.tc-name-pairings__grid h4 { margin:0; font-size:1.15rem; }
.tc-name-pairings__grid small { color:#66736f; }
.tc-name-research__method { margin-block-start:.5rem; }

.entry-content.tc-reading:has(> .tc-start-here) { inline-size:min(calc(100% - clamp(2rem,6vw,5rem)),88rem); max-inline-size:none!important; }
.entry-content.tc-reading > .tc-start-here { inline-size:100%; max-inline-size:none!important; }
.tc-start-here { margin-block:clamp(2rem,6vw,5rem); }
.tc-start-here > .tc-lead { max-inline-size:68ch; margin-inline:auto; text-align:center; }
.tc-start-here__grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr)); gap:clamp(1rem,1.6vw,1.5rem); align-items:stretch; margin-block:clamp(2rem,4vw,3rem); }
.tc-start-route { position:relative; overflow:hidden; border:1px solid rgb(182 138 45 / .3); border-radius:1.3rem; padding:clamp(1.15rem,3vw,1.8rem); background:radial-gradient(circle at 100% 0%,rgb(216 174 82 / .13),transparent 12rem),linear-gradient(145deg,#fffdf6,#edf5f1); box-shadow:0 1rem 2.8rem rgb(6 36 32 / .07); }
.tc-start-route { display:flex; min-inline-size:0; flex-direction:column; }
.tc-start-route h2 { margin:.25rem 0 .7rem; color:#113f37; font:700 clamp(1.35rem,1.4vw,1.75rem)/1.18 Georgia,serif; text-wrap:balance; }
.tc-start-route ol { display:grid; gap:.55rem; margin:1rem 0; padding-inline-start:1.4rem; }
.tc-start-route li { padding-inline-start:.35rem; }
.tc-start-route li a { color:#135246; font-weight:850; }
.tc-start-route li small { display:block; color:#63736f; }
.tc-start-route__time { margin:auto 0 0; border-block-start:1px solid rgb(24 92 80 / .12); padding-block-start:.85rem; color:#715218; font-size:.78rem; font-weight:850; }

.tc-reading-pacer { margin-block:1.2rem; border:1px solid rgb(182 138 45 / .28); border-radius:1rem; padding:.9rem; background:linear-gradient(145deg,#fffdf5,#edf5f1); }
.tc-reading-pacer[hidden] { display:none; }
.tc-reading-pacer > strong { display:block; margin-block-end:.65rem; color:#123f38; }
.tc-reading-pacer ol { display:grid; gap:.25rem; margin:0; padding:0; list-style:none; }
.tc-reading-pacer a { display:flex; align-items:center; min-block-size:2.75rem; border-radius:.65rem; padding:.45rem .65rem; color:#24554d; font-size:.78rem; font-weight:800; line-height:1.35; text-decoration:none; }
.tc-reading-pacer a:is(:hover,:focus-visible),.tc-reading-pacer a[aria-current="location"] { background:#123f38; color:#fff; }
.tc-reading-pacer [data-tc-pacer-resume] { margin-block-start:.6rem; border:1px solid rgb(182 138 45 / .38); background:#fff8df; color:#64470f; }
.tc-resource-stage :is(h2,h3) { scroll-margin-block-start:11rem; }

/* Public article hub and long-form editorial reading. */
.tc-articles-hub { --articles-ink:#082d29; --articles-gold:#d9b45e; }
body.tc-articles-landing .tc-page-head { display:none; }
.tc-articles-landing .wp-block-post-content.tc-reading,
.tc-article-public .wp-block-post-content.tc-reading { inline-size:100%; max-inline-size:none!important; padding-inline:0; }
.tc-articles-landing .wp-block-post-content > .tc-articles-hub,
.tc-article-public .wp-block-post-content > .tc-article-layout { inline-size:min(100%,100rem); max-inline-size:100rem!important; margin-inline:auto!important; }
.tc-articles-hero { overflow:hidden; padding-block:clamp(3.2rem,8vw,7rem); background:radial-gradient(circle at 86% 15%,rgb(222 184 94 / .2),transparent 25rem),radial-gradient(circle at 12% 100%,rgb(43 126 108 / .22),transparent 30rem),linear-gradient(145deg,#03191c,#0a332f 58%,#082321); color:#edf7f3; }
.tc-articles-hero { inline-size:100vw; margin-inline:calc(50% - 50vw); }
.tc-articles-hero__inner { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(17rem,.48fr); gap:clamp(1.5rem,6vw,5rem); align-items:center; padding-inline:clamp(var(--tc-gutter,1.5rem),4vw,4rem); }
.tc-articles-hero h1 { max-inline-size:14ch; margin:.35rem 0 1.1rem; color:#fff0b8; font:700 clamp(2.6rem,6vw,5.5rem)/.98 Georgia,serif; letter-spacing:-.035em; }
.tc-articles-hero p { max-inline-size:66ch; color:#d4e5df; font-size:clamp(1rem,1.8vw,1.2rem); line-height:1.75; }
.tc-articles-hero__trust { display:flex; flex-wrap:wrap; gap:.55rem; margin-block-start:1.3rem; }
.tc-articles-hero__trust span { border:1px solid rgb(234 208 138 / .35); border-radius:999px; padding:.52rem .78rem; color:#f7e4a9; font-size:.75rem; font-weight:850; }
.tc-articles-hero aside { display:grid; gap:.4rem; border:1px solid rgb(235 208 137 / .32); border-radius:1.4rem; padding:clamp(1.2rem,4vw,2rem); background:rgb(0 0 0 / .18); box-shadow:0 1.5rem 4rem rgb(0 0 0 / .2); }
.tc-articles-hero aside strong { color:#ffe9a8; font:700 clamp(3rem,7vw,5.6rem)/1 Georgia,serif; }
.tc-articles-hero aside span { color:#fff; font-weight:850; }
.tc-articles-hero aside p { margin:.45rem 0 0; color:#bcd0ca; font-size:.88rem; }
.tc-articles-browser { padding-block:clamp(2.5rem,7vw,6rem); }
.tc-articles-desktop-layout,.tc-article-layout { display:grid; grid-template-columns:minmax(12.5rem,13.5rem) minmax(0,1fr) minmax(12.5rem,13.5rem); gap:clamp(1rem,1.4vw,1.4rem); align-items:start; }
.tc-articles-browser__main,.tc-article-layout__body { min-inline-size:0; }
.tc-article-layout { inline-size:min(100%,100rem); margin-inline:auto; padding:clamp(2rem,5vw,4.5rem) clamp(1rem,.6rem + 2vw,2rem); }
.tc-article-layout__body { inline-size:100%; max-inline-size:58rem; margin-inline:auto; }
.tc-article-rail { min-inline-size:0; }
.tc-article-rail__sticky { display:grid; gap:1.1rem; padding:.05rem .05rem 1rem; }
.tc-article-rail--left { position:sticky; inset-block-start:10rem; align-self:start; }
.tc-article-rail--left .tc-article-rail__sticky { max-block-size:calc(100vh - 11rem); overflow:hidden auto; scrollbar-width:thin; scrollbar-color:transparent transparent; scrollbar-gutter:stable; transition:scrollbar-color .2s; }
.tc-article-rail--left .tc-article-rail__sticky:is(:hover,:focus-within) { scrollbar-color:rgb(194 154 66 / .45) transparent; }
.tc-article-rail--right .tc-article-rail__sticky { max-block-size:none; overflow:visible; padding-block-end:3rem; }
.tc-rail-panel { overflow:hidden; border:1px solid rgb(24 92 80 / .16); border-radius:1.15rem; padding:1.15rem; background:radial-gradient(circle at 100% 0%,rgb(216 174 82 / .12),transparent 9rem),linear-gradient(150deg,#fffdf7,#f0f7f4); box-shadow:0 .8rem 2.3rem rgb(6 36 32 / .075); }
.tc-rail-panel .tc-eyebrow { margin:0 0 .45rem; color:#8b681f; font-size:max(12px, .66rem); }
.tc-rail-panel :is(h2,.tc-rail-title) { margin:.2rem 0 .55rem; color:#103e37; font:700 1.22rem/1.14 Georgia,serif; }
.tc-rail-panel p { margin:.4rem 0; color:#536762; font-size:.82rem; line-height:1.58; }
.tc-rail-panel .tc-button { display:grid; inline-size:100%; min-block-size:2.75rem; place-items:center; margin-block-start:.8rem; border:1px solid #0a6b59; padding:.55rem .7rem; background:linear-gradient(135deg,#0b806a,#095447); color:#fff; box-shadow:0 .55rem 1.35rem rgb(7 72 61 / .16); font-size:.76rem; text-align:center; text-decoration:none; }
.tc-rail-panel .tc-button:is(:hover,:focus-visible) { border-color:#9f741e; background:linear-gradient(135deg,#126d5e,#103f38); color:#fff4c8; outline:2px solid #d7b45e; outline-offset:2px; }
.tc-rail-account__avatar { display:grid; inline-size:2.6rem; block-size:2.6rem; place-items:center; margin:.45rem 0 .7rem; border:1px solid rgb(218 178 86 / .45); border-radius:.82rem; background:#123f38; color:#ffe9a7; font:800 1rem/1 Georgia,serif; box-shadow:0 .55rem 1.5rem rgb(5 39 34 / .15); }
.tc-rail-actions { display:grid; gap:.65rem; }
.tc-rail-actions > a:last-child { color:#245b51; font-size:max(12px, .7rem); font-weight:850; text-align:center; text-decoration-thickness:.08em; text-underline-offset:.18em; }
.tc-rail-actions > a:last-child:is(:hover,:focus-visible) { color:#704f14; }
.tc-rail-nav ul,.tc-rail-related ul,.tc-rail-trust ul { display:grid; gap:.38rem; margin:.75rem 0 0; padding:0; list-style:none; }
.tc-rail-nav a { display:grid; gap:.15rem; border:1px solid transparent; border-radius:.72rem; padding:.62rem .68rem; color:#16473f; text-decoration:none; }
.tc-rail-nav a span { color:#6a7b77; font-size:max(12px, .65rem); line-height:1.3; }
.tc-rail-nav a:is(:hover,:focus-visible),.tc-rail-nav a[aria-current="page"] { border-color:rgb(182 138 45 / .3); background:#123f38; color:#fff1bd; outline:0; }
.tc-rail-nav a:is(:hover,:focus-visible) span,.tc-rail-nav a[aria-current="page"] span { color:#cfe0db; }
.tc-rail-path ol { display:grid; gap:.65rem; margin:.8rem 0 0; padding:0; list-style:none; }
.tc-rail-path li { display:grid; grid-template-columns:auto minmax(0,1fr); gap:.55rem; align-items:start; }
.tc-rail-path li > span { display:grid; inline-size:1.75rem; block-size:1.75rem; place-items:center; border-radius:.52rem; background:#123f38; color:#f4d98b; font-size:max(12px, .55rem); font-weight:900; }
.tc-rail-path a { display:grid; gap:.15rem; color:#174c43; text-decoration:none; }
.tc-rail-path a strong { font-size:.78rem; line-height:1.3; }
.tc-rail-path a small { color:#6d7d79; font-size:max(12px, .68rem); line-height:1.4; }
.tc-rail-related li { border-block-end:1px solid rgb(24 92 80 / .12); padding-block-end:.45rem; }
.tc-rail-related li:last-child { border:0; }
.tc-rail-related li a { display:flex; justify-content:space-between; gap:.5rem; color:#184f45; font-size:.76rem; font-weight:800; line-height:1.45; text-decoration:none; }
.tc-rail-related li a span { flex:0 0 auto; color:#99701c; }
.tc-rail-related__all,.tc-rail-trust > a { display:inline-block; margin-block-start:.75rem; color:#13594c; font-size:max(12px, .7rem); font-weight:900; }
.tc-rail-trust li { position:relative; padding-inline-start:1rem; color:#536863; font-size:max(12px, .74rem); line-height:1.45; }
.tc-rail-trust li::before { content:'✓'; position:absolute; inset-inline-start:0; color:#966e1e; font-weight:900; }
.tc-article-rail .tc-reading-pacer { margin:0; background:linear-gradient(145deg,#082f2a,#123f38); color:#fff; }
.tc-article-rail .tc-reading-pacer > strong { color:#ffe5a0; }
.tc-article-rail .tc-reading-pacer a { color:#dcebe6; }
.tc-article-rail .tc-reading-pacer a:is(:hover,:focus-visible),.tc-article-rail .tc-reading-pacer a[aria-current="location"] { background:#fff3c9; color:#153f38; }
.tc-article-rail .tc-reading-pacer [data-tc-pacer-resume] { border-color:#d8b45e; background:linear-gradient(135deg,#ffeab0,#e7c56f); color:#183f38; box-shadow:0 .45rem 1.1rem rgb(0 0 0 / .13); }
.tc-article-rail .tc-reading-pacer [data-tc-pacer-resume]:is(:hover,:focus-visible) { background:#fff3c9; color:#0b352f; outline:2px solid #d8b45e; outline-offset:2px; }
.tc-rail-related li a:is(:hover,:focus-visible),.tc-rail-related__all:is(:hover,:focus-visible),.tc-rail-trust > a:is(:hover,:focus-visible) { color:#765317; text-decoration:underline; text-decoration-thickness:.08em; text-underline-offset:.18em; }
.tc-rail-path a { border-radius:.65rem; padding:.35rem; margin:-.35rem; }
.tc-rail-path a:is(:hover,:focus-visible) { background:#fff5d4; color:#704f14; outline:2px solid rgb(182 138 45 / .38); outline-offset:1px; }

@media (min-width:85rem) {
  .tc-articles-desktop-layout,.tc-article-layout {
    grid-template-columns:minmax(14rem,15rem) minmax(0,1fr) minmax(14rem,15rem);
    gap:clamp(1.25rem,1.8vw,1.8rem);
  }
}
.tc-articles-controls { display:grid; grid-template-columns:minmax(0,1fr); gap:1rem; align-items:start; margin-block-end:clamp(2.2rem,5vw,4rem); border:1px solid rgb(24 92 80 / .18); border-radius:1.25rem; padding:clamp(1rem,3vw,1.5rem); background:linear-gradient(145deg,#f7fbf9,#fffaf0); box-shadow:0 1rem 3rem rgb(6 36 32 / .07); }
.tc-articles-controls label { display:grid; gap:.42rem; color:#234f48; font-size:.75rem; font-weight:900; }
.tc-articles-controls > label { inline-size:min(100%,34rem); }
.tc-articles-controls input { min-block-size:3.1rem; border:1px solid rgb(24 92 80 / .25); border-radius:.8rem; padding:.65rem .8rem; background:#fff; color:#153e37; font:700 1rem/1.2 system-ui,sans-serif; }
.tc-articles-filters { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; inline-size:100%; border-block-start:1px solid rgb(24 92 80 / .1); padding-block-start:1rem; }
.tc-articles-filters button { flex:0 0 auto; min-block-size:2.75rem; border:1px solid rgb(24 92 80 / .23); border-radius:999px; padding:.55rem .88rem; background:#fff; color:#315b53; font-size:.86rem; font-weight:800; line-height:1.2; white-space:nowrap; cursor:pointer; }
.tc-articles-filters button[aria-pressed="true"] { border-color:#a97c21; background:#113f38; color:#ffe9a7; }
.tc-articles-controls > p { grid-column:1/-1; margin:0; color:#60716d; font-size:.8rem; font-weight:800; }
.tc-articles-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr)); gap:clamp(.85rem,2vw,1.2rem); }
.tc-article-card { display:flex; min-inline-size:0; flex-direction:column; overflow:hidden; border:1px solid rgb(24 92 80 / .17); border-radius:1.25rem; padding:clamp(1.15rem,3vw,1.55rem); background:radial-gradient(circle at 100% 0%,rgb(215 175 85 / .13),transparent 12rem),#fff; box-shadow:0 1rem 3rem rgb(7 44 38 / .08); }
.tc-article-card[hidden] { display:none; }
.tc-article-card h2 { margin:.35rem 0 .75rem; color:#103f37; font:700 clamp(1.35rem,2.3vw,1.75rem)/1.17 Georgia,serif; }
.tc-article-card h2 a { color:inherit; text-decoration:none; }
.tc-article-card h2 a:is(:hover,:focus-visible) { color:#765317; text-decoration:underline; text-decoration-thickness:.1em; }
.tc-article-card > p:not(.tc-eyebrow) { flex:1; color:#526661; line-height:1.65; }
.tc-article-card footer { display:grid; gap:.7rem; margin-block-start:1rem; border-block-start:1px solid rgb(24 92 80 / .12); padding-block-start:.9rem; }
.tc-article-card footer span { color:#6b7a77; font-size:max(12px, .72rem); }
.tc-article-card footer a { display:inline-flex; min-block-size:2.75rem; align-items:center; justify-content:space-between; gap:.65rem; border:1px solid rgb(18 92 78 / .18); border-radius:.72rem; padding:.58rem .72rem; background:#f0f7f3; color:#125c4e; font-weight:900; text-decoration:none; }
.tc-article-card footer a:is(:hover,:focus-visible) { border-color:#b68a2d; background:#fff7dc; color:#6f5015; }
.tc-article-card footer a span { color:inherit; }
.tc-article-public .tc-article { padding-block:clamp(2.5rem,4vw,4rem); }
.tc-article-public .tc-article > :where(.tc-eyebrow,h2,h3,h4,p,ul,ol,blockquote) { inline-size:min(44rem,calc(100% - clamp(2rem,6vw,4rem))); max-inline-size:44rem; margin-inline:auto; }
.tc-article-public .tc-article > :where(p,li) { line-height:1.75; }
.tc-article-public .tc-article > :where(p:empty,br) { display:none; }
.tc-article-public .tc-article > section:not(.tc-article-answer,.tc-source-boundary) {
  position:relative;
  margin:clamp(1.25rem,3vw,2rem) clamp(.75rem,2vw,1.5rem);
  border:1px solid rgb(24 92 80 / .14);
  border-radius:1.2rem;
  padding:clamp(1.25rem,3vw,2rem);
  background:
    radial-gradient(circle at 100% 0%,rgb(215 175 85 / .09),transparent 16rem),
    linear-gradient(150deg,#fffefb,#f7fbf9);
  box-shadow:0 .8rem 2.4rem rgb(7 44 38 / .055);
}
.tc-article-public .tc-article > section:not(.tc-article-answer,.tc-source-boundary) > :where(h2,h3,h4,p,ul,ol,blockquote) {
  inline-size:min(100%,44rem);
  max-inline-size:44rem;
  margin-inline:auto;
}
.tc-article-public .tc-article > section:not(.tc-article-answer,.tc-source-boundary) > h2:first-child { margin-block-start:0; }
.tc-article-public .tc-article > section:not(.tc-article-answer,.tc-source-boundary) > :last-child { margin-block-end:0; }
.tc-article-public .tc-article-answer > :where(h2,h3,h4,p,ul,ol),
.tc-article-public .tc-source-boundary > :where(h2,h3,h4,p,ul,ol) { max-inline-size:44rem; margin-inline:auto; }
.tc-article-intro { margin-block:1.5rem 2.5rem; border-inline-start:.35rem solid #d3aa4c; padding:1rem 1.2rem; background:#fff9e8; color:#354e49; font-size:1.08rem; line-height:1.75; }
.tc-article-answer { margin-block:2rem; border:1px solid rgb(182 138 45 / .3); border-radius:1.2rem; padding:clamp(1.2rem,4vw,2rem); background:radial-gradient(circle at 100% 0%,rgb(214 174 81 / .14),transparent 14rem),linear-gradient(145deg,#fffdf5,#edf5f1); }
.tc-article-answer h2 { margin-block-start:0; }
.tc-article-pathway { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; margin-block:2rem; }
.tc-article-pathway a { display:grid; gap:.35rem; border:1px solid rgb(24 92 80 / .17); border-radius:1rem; padding:1rem; background:#fff; color:#164d43; text-decoration:none; }
.tc-article-pathway a strong { color:#704f14; }
.tc-pronunciation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; inline-size:min(44rem,calc(100% - clamp(2rem,6vw,4rem))); max-inline-size:44rem; margin:1.4rem auto 1.8rem; }
.tc-pronunciation-grid > div { display:grid; align-content:start; gap:.5rem; min-block-size:7.5rem; border:1px solid rgb(24 92 80 / .2); border-radius:1rem; padding:1rem 1.1rem; background:linear-gradient(145deg,#fffdf6,#edf6f2); box-shadow:0 .7rem 1.5rem rgb(8 47 42 / .06); }
.tc-pronunciation-grid strong { color:#704f14; font-size:1.08rem; line-height:1.4; }
.tc-pronunciation-grid span { color:#405c56; line-height:1.55; }

@media (max-width:900px) {
  .tc-articles-hero__inner { grid-template-columns:1fr; }
  .tc-articles-hero aside { max-inline-size:32rem; }
  .tc-articles-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tc-article-pathway { grid-template-columns:1fr; }
}
@media (max-width:600px) {
  .tc-resource-stage :is(h2,h3) { scroll-margin-block-start:8.5rem; }
}
@media (max-width:1180px) {
  .tc-articles-desktop-layout,.tc-article-layout { grid-template-columns:minmax(0,1fr); }
  .tc-article-rail { display:none; }
  .tc-article-layout__body { max-inline-size:52rem; }
}
@media (max-width:600px) {
  .tc-articles-controls,.tc-articles-grid { grid-template-columns:1fr; }
  .tc-pronunciation-grid { grid-template-columns:1fr; inline-size:calc(100% - 2rem); }
  .tc-pronunciation-grid > div { min-block-size:0; }
  .tc-articles-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tc-articles-filters button { inline-size:100%; }
}

/* First-party sharing: no social scripts or trackers are loaded until a visitor chooses a service. */
.tc-share-dock { --share-ink:#0c332e; --share-gold:#d7af55; position:relative; z-index:80; }
.tc-share-launcher { position:fixed; z-index:80; inset-inline-end:clamp(.85rem,2vw,1.5rem); inset-block-end:clamp(.85rem,2vw,1.5rem); display:flex; align-items:center; gap:.48rem; min-block-size:2.9rem; border:1px solid rgb(232 205 132 / .55); border-radius:999px; padding:.58rem .85rem; background:linear-gradient(145deg,#0b332e,#061d1b); color:#fff1bf; box-shadow:0 .8rem 2.4rem rgb(0 23 20 / .24); font:800 .78rem/1 system-ui,sans-serif; letter-spacing:.025em; cursor:pointer; transition:transform .18s ease,box-shadow .18s ease,background .18s ease; }
.tc-share-launcher svg,.tc-share-section svg { inline-size:1.1rem; block-size:1.1rem; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.tc-share-launcher:is(:hover,:focus-visible) { transform:translateY(-2px); background:#164a41; box-shadow:0 1rem 2.8rem rgb(0 23 20 / .3); outline:2px solid #f0d78e; outline-offset:2px; }
.tc-quiz-visual--exclusive-worship svg > g[fill="#173d36"] text:last-child { font-size:12px; }
.tc-share-dialog { inline-size:min(44rem,calc(100% - 1.4rem)); max-inline-size:none; max-block-size:min(90dvh,48rem); overflow:auto; border:1px solid rgb(229 199 119 / .48); border-radius:1.4rem; padding:0; background:#f8fbf9; color:#173f38; box-shadow:0 2rem 7rem rgb(0 18 17 / .48); }
.tc-share-dialog::backdrop { background:rgb(2 19 18 / .74); backdrop-filter:blur(5px); }
.tc-share-dialog__panel { overflow:hidden; border-radius:inherit; }
.tc-share-dialog header { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; padding:clamp(1.15rem,4vw,1.8rem); background:radial-gradient(circle at 86% 0%,rgb(215 175 85 / .2),transparent 14rem),linear-gradient(145deg,#061f1d,#12443c); color:#eef7f3; }
.tc-share-dialog header p { margin:0 0 .3rem; color:#e8ce86; font-size:max(12px, .7rem); font-weight:900; letter-spacing:.075em; text-transform:uppercase; }
.tc-share-dialog header h2 { margin:0; color:#fff4c9; font:700 clamp(1.45rem,4vw,2rem)/1.12 Georgia,serif; }
.tc-share-close { display:grid; flex:0 0 auto; place-items:center; inline-size:2.75rem; block-size:2.75rem; border:1px solid rgb(235 210 146 / .42); border-radius:50%; padding:0; background:rgb(255 255 255 / .06); color:#fff; font-size:1.6rem; line-height:1; cursor:pointer; }
.tc-share-close:is(:hover,:focus-visible) { background:#f4df9e; color:#133a34; outline:2px solid #fff; outline-offset:2px; }
.tc-share-dialog__context { margin:0; border-block-end:1px solid rgb(24 92 80 / .14); padding:.85rem clamp(1.15rem,4vw,1.8rem); color:#526661; font-weight:750; line-height:1.45; }
.tc-share-dialog__channels { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; padding:clamp(1rem,4vw,1.5rem); }
.tc-share-channel { display:grid; min-inline-size:0; min-block-size:5.4rem; place-items:center; align-content:center; gap:.4rem; border:1px solid rgb(24 92 80 / .18); border-radius:.9rem; padding:.65rem .35rem; background:#fff; color:#173f38; font:inherit; text-align:center; text-decoration:none; cursor:pointer; }
.tc-share-channel span { display:grid; place-items:center; inline-size:2rem; block-size:2rem; border-radius:.62rem; background:#123f38; color:#f6dda0; font-size:max(12px, .72rem); font-weight:900; }
.tc-share-channel strong { overflow:hidden; max-inline-size:100%; font-size:.75rem; text-overflow:ellipsis; }
.tc-share-channel:is(:hover,:focus-visible) { border-color:#b68a2d; background:#fff9e7; color:#563f12; outline:2px solid #d8b45e; outline-offset:1px; }
.tc-share-dialog__link { padding:0 clamp(1rem,4vw,1.5rem) 1rem; }
.tc-share-dialog__link label { display:block; margin-block-end:.4rem; color:#34544e; font-size:max(12px, .72rem); font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.tc-share-dialog__link > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.5rem; }
.tc-share-dialog__link input { min-inline-size:0; min-block-size:3rem; border:1px solid rgb(24 92 80 / .28); border-radius:.72rem; padding:.55rem .7rem; background:#fff; color:#31514b; font-size:.8rem; }
.tc-share-dialog__link button { min-block-size:3rem; border:0; border-radius:.72rem; padding:.65rem 1rem; background:#123f38; color:#fff1c3; font-weight:850; cursor:pointer; }
.tc-share-dialog__link button:is(:hover,:focus-visible) { background:#1c584d; outline:2px solid #b68a2d; outline-offset:2px; }
.tc-share-dialog__status { min-block-size:1.3rem; margin:0; padding:0 clamp(1rem,4vw,1.5rem); color:#176b59; font-size:.8rem; font-weight:850; }
.tc-share-dialog__privacy { margin:.7rem 0 0; padding:.8rem clamp(1rem,4vw,1.5rem) 1rem; background:#eaf2ef; color:#5a6d69; font-size:max(12px, .72rem); line-height:1.45; }
.tc-share-section { display:inline-grid; place-items:center; inline-size:2.75rem; block-size:2.75rem; margin:.05rem 0 .05rem .45rem; border:1px solid rgb(24 92 80 / .2); border-radius:50%; padding:0; background:#f7faf8; color:#315b53; vertical-align:middle; cursor:pointer; opacity:.58; }
.tc-share-section:is(:hover,:focus-visible) { border-color:#b68a2d; background:#fff7de; color:#795716; opacity:1; outline:2px solid #d8b45e; outline-offset:2px; }
.tc-panel > .tc-share-section,details > .tc-share-section { display:grid; margin:.3rem .45rem .7rem auto; }
.tc-share-dialog:not([open]) { display:none; }

@media (max-width:1050px) {
  .tc-names-hub__controls { grid-template-columns:1fr 1fr; }
  .tc-names-hub__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:900px) {
  .tc-ayah-audio { grid-template-columns:1fr; }
  .tc-ayah-audio__options { grid-column:auto; justify-content:flex-start; flex-wrap:wrap; }
  .tc-translation-study__grid { grid-template-columns:1fr; }
  .tc-parent-guide__hero { grid-template-columns:1fr; }
  .tc-names-hub__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tc-name-connections ul { grid-template-columns:1fr; }
  .tc-name-count-grid,.tc-name-facts,.tc-name-renderings__grid,.tc-name-pairings__grid,.tc-name-source-verse__translations { grid-template-columns:1fr; }
  .tc-name-source-verse blockquote+blockquote { border-inline-start:0; border-block-start:1px solid rgb(25 105 91 / .13); }
}
@media (max-width:600px) {
  .tc-ayah-study__header,.tc-ayah-print-note,.tc-word-study__heading,.tc-ayah-study__source { align-items:flex-start; flex-direction:column; }
  .tc-ayah-study__header { display:flex; }
  .tc-ayah-print-note { display:flex; }
  .tc-ayah-study__verified { align-self:flex-start; }
  .tc-ayah-print { inline-size:100%; }
  .tc-ayah-study__arabic { font-size:clamp(2rem,11vw,3.1rem); }
  .tc-word { min-inline-size:calc(50% - .4rem); max-inline-size:none; }
  .tc-ayah-study__source { display:flex; }
  .tc-lesson-map { inset-block-start:5.5rem; border-radius:1rem; }
  .tc-misconceptions { grid-template-columns:1fr; }
  .tc-misconceptions dt,.tc-misconceptions dd { border-block-end:0; }
  .tc-misconceptions dd { border-block-end:1px solid rgb(24 92 80 / .14); }
  .tc-interlinear-key { display:none; }
  .tc-source-ledger__body dl,.tc-parent-guide__troubleshooting { grid-template-columns:1fr; }
  .tc-source-ledger__body dt,.tc-parent-guide__troubleshooting dt { padding-block-end:.2rem; border-block-end:0; }
  .tc-source-ledger__body dd,.tc-parent-guide__troubleshooting dd { padding-block-start:.2rem; }
  .tc-parent-guide__principles,.tc-age-grid,.tc-followup-grid { grid-template-columns:1fr; }
  .tc-names-hub { padding-block:2.6rem; }
  .tc-names-hub__controls,.tc-start-here__grid { grid-template-columns:1fr; }
  .tc-names-hub__filters { display:grid; grid-template-columns:1fr; }
  .tc-names-hub__grid { grid-template-columns:1fr; }
  .tc-name-hub-card > a { min-block-size:11.5rem; }
  .tc-name-study-header h1 span[lang="ar"] { font-size:clamp(3.6rem,21vw,6.2rem); }
  .tc-share-launcher { display:none; }
  .tc-share-dialog { inline-size:calc(100% - .8rem); max-block-size:calc(100dvh - 1rem); border-radius:1.1rem; }
  .tc-share-dialog__channels { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tc-share-dialog__link > div { grid-template-columns:1fr; }
}

@media (max-width:430px) {
  .tc-word { min-inline-size:100%; flex-basis:100%; }
}

@media (prefers-reduced-motion:reduce) {
  .tc-share-launcher { transition:none; }
}

@media print {
  .tc-share-dock,.tc-share-section { display:none !important; }
  body.tc-printing-ayah > *:not(#tc-print-portal) { display:none !important; }
  #tc-print-portal { display:block !important; color:#000; background:#fff; }
  #tc-print-portal .tc-ayah-study { margin:0; border:2px solid #8f651d; box-shadow:none; }
  #tc-print-portal .tc-ayah-print,#tc-print-portal audio,#tc-print-portal .tc-ayah-audio__options,#tc-print-portal .tc-word__play { display:none !important; }
  #tc-print-portal .tc-ayah-study__arabic { color:#000; background:#fff; text-shadow:none; }
  #tc-print-portal .tc-word-study__grid { display:grid; grid-template-columns:repeat(4,1fr); }
  #tc-print-portal .tc-word { min-inline-size:0; break-inside:avoid; box-shadow:none; }
  #tc-print-portal .tc-translation-study__grid { grid-template-columns:1fr; }
  #tc-print-portal a { color:#000; text-decoration:none; }
}
/* Mobile interaction targets: keep learning, source and footer links comfortably tappable. */
@media (max-width: 760px) {
  .tc-footer__grid nav a,
  .tc-ayah-study__source a,
  .tc-source-ledger__body p > a,
  .tc-name-source-verse > header a,
  .tc-name-pairings__grid a {
    display: inline-flex;
    align-items: center;
    min-block-size: 2.75rem;
    padding-block: .45rem;
  }

  .tc-footer__grid nav a {
    inline-size: 100%;
  }
}

/* Table of contents (SEO audit 2026-10-03) */
.tc-toc { margin:1.5rem 0 2rem; }
.tc-toc__details { border:1px solid rgb(24 92 80 / .18); border-radius:1rem; background:linear-gradient(150deg,#fffdf7,#f0f7f4); box-shadow:0 .6rem 1.8rem rgb(6 36 32 / .06); }
.tc-toc__summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-block-size:3rem; padding:.75rem 1.1rem; cursor:pointer; list-style:none; color:#103e37; font:700 1.05rem/1.2 Georgia,serif; }
.tc-toc__summary::-webkit-details-marker { display:none; }
.tc-toc__summary small { color:#8b681f; font:850 max(12px, .66rem)/1 system-ui,sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.tc-toc__summary::after { content:'+'; margin-inline-start:.5rem; color:#8b681f; font:700 1.2rem/1 Georgia,serif; }
.tc-toc__details[open] .tc-toc__summary::after { content:'−'; }
.tc-toc__list { display:grid; gap:.1rem; margin:0; padding:.25rem 1.1rem 1rem 2.2rem; }
.tc-toc__list li { padding:.15rem 0; color:#536762; font-size:.9rem; line-height:1.45; }
.tc-toc__list a { color:#16473f; text-decoration:none; }
.tc-toc__list a:is(:hover,:focus-visible) { color:#704f14; text-decoration:underline; text-underline-offset:.18em; }
@media (min-width:60rem) { .tc-toc__list { grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:1.5rem; } }
.tc-content h2[id],.wp-block-post-content h2[id] { scroll-margin-block-start:7.5rem; }

/* Visible breadcrumbs (SEO audit 2026-10-03) */
.tc-breadcrumbs { margin:0 0 .75rem; font-size:.78rem; line-height:1.4; }
.tc-breadcrumbs ol { display:flex; flex-wrap:wrap; align-items:center; gap:.25rem .4rem; margin:0; padding:0; list-style:none; }
.tc-breadcrumbs li { display:inline-flex; align-items:center; gap:.4rem; min-block-size:1.75rem; color:rgb(255 240 189 / .72); }
.tc-breadcrumbs li + li::before { content:'/'; color:rgb(255 240 189 / .4); }
.tc-breadcrumbs a { color:#f3dc9c; text-decoration:none; text-underline-offset:.18em; }
.tc-breadcrumbs a:is(:hover,:focus-visible) { color:#fff; text-decoration:underline; }
.tc-breadcrumbs [aria-current] { overflow:hidden; max-inline-size:28ch; text-overflow:ellipsis; white-space:nowrap; color:#fff0bd; font-weight:700; }
.tc-page-head .tc-breadcrumbs li, .tc-page-head .tc-breadcrumbs [aria-current] { color:#2b544b; }
.tc-page-head .tc-breadcrumbs li + li::before { color:#9bb3ab; }
.tc-page-head .tc-breadcrumbs a { color:#0b715e; }
.tc-page-head .tc-breadcrumbs a:is(:hover,:focus-visible) { color:#704f14; }

/* Related du'as block (internal linking, 2026-10-04) */
.tc-related--duas { margin-block-end: clamp(1.5rem,4vw,3rem); }
.tc-related--duas article > p:first-child span { background: linear-gradient(135deg,#eed58b,#c9962f); color:#1b1304; }

/* Long-form sections (courses/lessons): renderer skips off-screen sections; nothing is hidden from readers or crawlers */
.tc-content > .tc-learning-section{content-visibility:auto;contain-intrinsic-size:auto 60rem;}
.tc-learning-section > h2{scroll-margin-top:clamp(4.5rem,12vw,6rem);}
.tc-section__up{margin:clamp(1rem,3vw,1.5rem) 0 0;font-size:.875rem;}
.tc-section__up a{display:inline-flex;align-items:center;gap:.375rem;min-height:3rem;color:#536762;text-decoration:none;border-bottom:1px solid rgb(24 92 80 / .35);}
.tc-section__up a:is(:hover,:focus-visible){color:#704f14;border-color:currentColor;}
@media print{.tc-learning-section{content-visibility:visible;}.tc-section__up{display:none;}}
