.cf-phone-head > div { flex: 1; }
.cf-phone-head > div strong,
.cf-phone-head > div small { display: block; }
.cf-phone-head > div small { color: var(--cf-muted); font-size: .68rem; }
.cf-phone-head > b { color: var(--cf-muted); font-size: 1.2rem; }
.cf-child-row > div { flex: 1; }
.cf-child-row > em { color: var(--cf-muted); font-size: 1.2rem; font-style: normal; }

.cf-parent-summary { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; margin-bottom: .75rem; }
.cf-parent-summary > div { padding: .85rem; border: 1px solid var(--cf-line); border-radius: 12px; background: #fff; }
.cf-parent-summary small,
.cf-parent-summary strong,
.cf-parent-summary span { display: block; }
.cf-parent-summary small,
.cf-parent-summary span { color: var(--cf-muted); font-size: .61rem; }
.cf-parent-summary strong { color: var(--cf-navy); font-size: 1.05rem; }

.cf-parent-activity > div { display: flex; align-items: center; gap: .65rem; padding: .7rem 0; border-bottom: 1px solid var(--cf-line); }
.cf-parent-activity > div > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: #def7f5; color: var(--cf-cyan-dark); font-weight: 900; }
.cf-parent-activity > div > span.gold { background: #fff2d7; color: #a56e09; }
.cf-parent-activity p,
.cf-parent-invoice p { flex: 1; margin: 0; }
.cf-parent-activity strong,
.cf-parent-activity small,
.cf-parent-invoice strong,
.cf-parent-invoice small { display: block; }
.cf-parent-activity small,
.cf-parent-invoice small { color: var(--cf-muted); font-size: .61rem; }
.cf-parent-activity b { font-size: .68rem; }
.cf-parent-invoice { display: flex; align-items: center; gap: .65rem; margin-top: .8rem; padding: .8rem; border-radius: 12px; background: var(--cf-navy); color: #fff; }
.cf-parent-invoice:hover { color: #fff; }
.cf-parent-invoice > span,
.cf-parent-invoice > b { color: var(--cf-cyan); }
.cf-parent-invoice > b { font-size: .65rem; }
.cf-parent-tax-mini { display: flex; align-items: center; gap: .65rem; margin-bottom: .75rem; padding: .8rem; border: 1px solid rgba(183, 122, 8, .22); border-radius: 12px; background: #fff8e9; }
.cf-parent-tax-mini > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: var(--cf-gold); color: var(--cf-navy); font-size: .62rem; font-weight: 900; }
.cf-parent-tax-mini p { flex: 1; margin: 0; }
.cf-parent-tax-mini strong,
.cf-parent-tax-mini small { display: block; }
.cf-parent-tax-mini small { color: var(--cf-muted); font-size: .59rem; }
.cf-parent-tax-mini b { color: #9a6708; font-size: .62rem; }

.cf-parent-value .cf-section-heading { max-width: 790px; }
.cf-parent-value-card { height: 100%; padding: 1.65rem; border: 1px solid var(--cf-line); border-radius: 18px; background: #fff; }
.cf-parent-value-card > span { display: grid; place-items: center; width: 38px; height: 38px; margin-bottom: 1.2rem; border-radius: 11px; background: #def7f5; color: var(--cf-cyan-dark); font-size: .68rem; font-weight: 900; }
.cf-parent-value-card h3 { font-size: 1.2rem; }
.cf-parent-value-card p { margin: 0; color: var(--cf-muted); font-size: .9rem; }

.cf-parent-tax { position: relative; overflow: hidden; background: linear-gradient(135deg, #071b2f, #113b5d); color: #fff; }
.cf-parent-tax::after { content: ""; position: absolute; right: -150px; top: -190px; width: 460px; height: 460px; border: 85px solid rgba(36, 211, 197, .08); border-radius: 50%; }
.cf-parent-tax .container { position: relative; z-index: 1; }
.cf-parent-tax h2 { color: #fff; }
.cf-parent-tax p { color: #b4c7d4; }
.cf-parent-tax .cf-kicker { color: var(--cf-cyan); }
.cf-parent-tax__badge { display: inline-block; margin-bottom: 1rem; padding: .45rem .7rem; border: 1px solid rgba(241, 184, 75, .36); border-radius: 999px; background: rgba(241, 184, 75, .1); color: var(--cf-gold); font-size: .66rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.cf-parent-tax__steps { margin-top: 1.8rem; }
.cf-parent-tax__steps > div { display: flex; gap: .9rem; padding: .8rem 0; border-top: 1px solid rgba(255, 255, 255, .1); }
.cf-parent-tax__steps > div > span { flex: 0 0 30px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: rgba(36, 211, 197, .13); color: var(--cf-cyan); font-size: .63rem; font-weight: 900; }
.cf-parent-tax__steps p { margin: 0; }
.cf-parent-tax__steps strong,
.cf-parent-tax__steps small { display: block; }
.cf-parent-tax__steps small { color: #91a9b9; font-size: .72rem; }
.cf-tax-document { max-width: 520px; margin: 0 auto; overflow: hidden; border-radius: 20px; background: #fff; color: var(--cf-ink); box-shadow: 0 35px 90px rgba(0, 0, 0, .3); transform: rotate(1deg); }
.cf-tax-document__head { display: flex; align-items: center; gap: .8rem; padding: 1.1rem 1.25rem; border-bottom: 1px solid var(--cf-line); }
.cf-tax-document__head > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; background: var(--cf-navy); color: var(--cf-cyan); font-size: .7rem; font-weight: 900; }
.cf-tax-document__head > div { flex: 1; }
.cf-tax-document__head small,
.cf-tax-document__head strong { display: block; }
.cf-tax-document__head small { color: var(--cf-muted); font-size: .62rem; }
.cf-tax-document__head > b { padding: .45rem .6rem; border-radius: 8px; background: #fff2d7; color: #9a6708; font-size: .72rem; }
.cf-tax-document__body { padding: 1.25rem; }
.cf-tax-document__status { display: flex; align-items: center; gap: .7rem; margin-bottom: 1rem; padding: .8rem; border-radius: 11px; background: #e8f8f2; }
.cf-tax-document__status > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #239b75; color: #fff; font-weight: 900; }
.cf-tax-document__status p { margin: 0; }
.cf-tax-document__status strong,
.cf-tax-document__status small { display: block; }
.cf-tax-document__status small { color: var(--cf-muted); font-size: .64rem; }
.cf-tax-document dl { margin: 0; }
.cf-tax-document dl > div { display: flex; justify-content: space-between; gap: 1rem; padding: .7rem 0; border-bottom: 1px solid var(--cf-line); }
.cf-tax-document dt { color: var(--cf-muted); font-size: .75rem; font-weight: 500; }
.cf-tax-document dd { margin: 0; font-size: .78rem; font-weight: 800; text-align: right; }
.cf-tax-document button { width: 100%; margin-top: 1rem; padding: .75rem; border: 0; border-radius: 10px; background: var(--cf-navy); color: #fff; font-size: .72rem; font-weight: 900; }
.cf-tax-document button span { margin-right: .4rem; color: var(--cf-cyan); }
.cf-parent-tax .cf-visual-note { color: #8fa8b9; }

.cf-parent-capabilities { background: #fff; }
.cf-parent-capabilities h2 { max-width: 700px; }
.cf-parent-capability { display: flex; gap: 1rem; height: 100%; padding: 1.4rem; border: 1px solid var(--cf-line); border-radius: 18px; background: #fff; transition: transform .2s ease, box-shadow .2s ease; }
.cf-parent-capability:hover { transform: translateY(-3px); box-shadow: 0 16px 38px rgba(20, 50, 75, .09); }
.cf-parent-capability > span { flex: 0 0 44px; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: #def7f5; color: var(--cf-cyan-dark); font-size: 1rem; font-weight: 900; }
.cf-parent-capability > span.payment { background: #e8f8f2; color: #239b75; }
.cf-parent-capability > span.absence { background: #ffe9e7; color: #c75b55; }
.cf-parent-capability > span.order { background: #fff2d7; color: #a56e09; }
.cf-parent-capability > span.student { background: #e3f1ff; color: #3a78bd; }
.cf-parent-capability > span.contact { background: #eeebff; color: #7765e8; }
.cf-parent-capability h3 { margin: .1rem 0 .45rem; font-size: 1.08rem; }
.cf-parent-capability p { margin: 0; color: var(--cf-muted); font-size: .86rem; }

.cf-parent-product { background: var(--cf-bg); }
.cf-parent-dashboard { display: grid; grid-template-columns: 125px 1fr; min-height: 390px; overflow: hidden; border: 1px solid #dce7ec; border-radius: 20px; background: #fff; box-shadow: var(--cf-shadow); }
.cf-parent-dashboard aside { display: flex; flex-direction: column; gap: .3rem; padding: 1.2rem .75rem; background: var(--cf-navy); }
.cf-parent-dashboard aside a { padding: .65rem; border-radius: 8px; color: #91a8b9; font-size: .68rem; }
.cf-parent-dashboard aside a.active { background: rgba(36, 211, 197, .14); color: var(--cf-cyan); }
.cf-parent-dashboard__logo { display: grid; place-items: center; width: 34px; height: 34px; margin: 0 0 1rem .4rem; border-radius: 10px; background: var(--cf-cyan); color: var(--cf-navy); font-size: .7rem; font-weight: 900; }
.cf-parent-dashboard__main { min-width: 0; padding: 1.25rem; background: #f5f8fa; }
.cf-parent-dashboard__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; }
.cf-parent-dashboard__top small,
.cf-parent-dashboard__top strong { display: block; }
.cf-parent-dashboard__top small { color: var(--cf-muted); font-size: .62rem; }
.cf-parent-dashboard__top > span { padding: .45rem .65rem; border-radius: 8px; background: #fff; color: var(--cf-muted); font-size: .62rem; }
.cf-parent-panel { height: 100%; padding: 1rem; border: 1px solid #e5ecef; border-radius: 13px; background: #fff; }
.cf-parent-panel > small { display: block; margin-bottom: .7rem; color: var(--cf-muted); font-size: .62rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.cf-parent-event { display: flex; align-items: center; gap: .55rem; padding: .7rem 0; border-top: 1px solid #edf1f3; }
.cf-parent-event > i { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 8px; background: #def7f5; color: var(--cf-cyan-dark); font-style: normal; }
.cf-parent-event > i.gold { background: #fff2d7; color: #a56e09; }
.cf-parent-event > i.blue { background: #e3f1ff; color: #3a78bd; }
.cf-parent-event p { flex: 1; margin: 0; }
.cf-parent-event strong,
.cf-parent-event small { display: block; }
.cf-parent-event small { color: var(--cf-muted); font-size: .58rem; }
.cf-parent-event b { font-size: .64rem; }
.cf-parent-balance { padding: 1rem; border-radius: 12px; background: linear-gradient(135deg, #102d4c, #174566); color: #fff; }
.cf-parent-balance span,
.cf-parent-balance strong,
.cf-parent-balance em { display: block; }
.cf-parent-balance span,
.cf-parent-balance em { color: #a9becd; font-size: .61rem; }
.cf-parent-balance strong { font-size: 1.35rem; }
.cf-parent-balance em { font-style: normal; }
.cf-parent-balance button { width: 100%; margin-top: .8rem; padding: .5rem; border: 0; border-radius: 8px; background: var(--cf-cyan); color: var(--cf-navy); font-size: .63rem; font-weight: 900; }
.cf-parent-paid { display: flex; gap: .55rem; align-items: center; margin-top: .8rem; padding: .75rem; border-radius: 10px; background: #e8f8f2; }
.cf-parent-paid > span { color: #239b75; }
.cf-parent-paid p { margin: 0; }
.cf-parent-paid strong,
.cf-parent-paid small { display: block; }
.cf-parent-paid small { color: var(--cf-muted); font-size: .58rem; }
.cf-visual-note { margin: .75rem 0 0; color: var(--cf-muted); font-size: .7rem; text-align: center; }

.cf-parent-audiences { background: #fff; }
.cf-parent-audience-card { height: 100%; padding: 2rem; border-radius: 22px; }
.cf-parent-audience-card > span { display: inline-block; margin-bottom: 1rem; font-size: .7rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.cf-parent-audience-card h2 { font-size: 1.75rem; }
.cf-parent-audience-card ul { margin: 1.4rem 0 0; padding: 0; list-style: none; }
.cf-parent-audience-card li { position: relative; padding: .5rem 0 .5rem 1.6rem; }
.cf-parent-audience-card li::before { content: "✓"; position: absolute; left: 0; font-weight: 900; }
.cf-parent-audience-card.parent { background: #e9f9f7; }
.cf-parent-audience-card.parent > span,
.cf-parent-audience-card.parent li::before { color: var(--cf-cyan-dark); }
.cf-parent-audience-card.admin { background: var(--cf-navy); color: #fff; }
.cf-parent-audience-card.admin h2 { color: #fff; }
.cf-parent-audience-card.admin > span,
.cf-parent-audience-card.admin li::before { color: var(--cf-cyan); }

.cf-parent-boundary { background: #f7fafb; }
.cf-parent-boundary-list { padding: 1.25rem; border: 1px solid var(--cf-line); border-radius: 18px; background: #fff; }
.cf-parent-boundary-list > div { display: flex; align-items: center; gap: .75rem; padding: .8rem; border-bottom: 1px solid var(--cf-line); }
.cf-parent-boundary-list > div:last-child { border: 0; }
.cf-parent-boundary-list span { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 8px; background: #def7f5; color: var(--cf-cyan-dark); font-weight: 900; }
.cf-parent-boundary-list .muted { color: var(--cf-muted); }
.cf-parent-boundary-list .muted span { background: #edf1f3; color: #899aa6; }

@media (max-width: 767.98px) {
  .cf-parent-dashboard { grid-template-columns: 1fr; }
  .cf-parent-dashboard aside { display: none; }
  .cf-parent-dashboard__top { align-items: flex-start; gap: .75rem; }
  .cf-parent-dashboard__top > span { white-space: nowrap; }
  .cf-parent-summary { grid-template-columns: 1fr; }
  .cf-phone { width: min(350px, 100%); }
}
