/* Public pages only. Loaded last; admin and consent controls keep their own styles. */
.academka-public { --academka-canvas:#f5f6f8; --academka-surface:#fff; --academka-border:#e6e8ec; background:#f5f6f8; }
.academka-public :is(.wrapper,.d_section,.bg-grey,.bg-gray,.page-index,.page-index__categories,.page-index__courses,.page-category__content,.page-direction__content,.catalog-schools,.single-page,.page-courses__categories,.page-courses__categories-list,.d_course_reviews,.page-about,.page-about .cmp-breadcrumbs,.page-contact,.legal-document) { background-color:var(--academka-canvas); }
.academka-public :is(.header,.footer,.footer-wrap) { background-color:#fff; }
.academka-public :is(.page-index__categories-content,.page-index__hero-props,.page-courses__categories-item,.d_course_question__item,.d_course_reviews__item,.d_course_tile__item,.d_course_table__m-item,.catalog-card,.school-catalog__empty,.live-course-card,.live-school-card,.live-review,.page-index__schools-item,.catalog-schools__list-item,.page-about .page-about__hero,.page-about .page-about__statistic-item,.page-about .page-about__props-item,.page-about__note,.legal-document__body,.legal-document__nav,.legal-document__summary,.legal-document__resources,.legal-hub__card) { background-color:#fff; border-color:var(--academka-border); box-shadow:none; border-radius:22px; }
.academka-public :is(.d_course_table,.d_course_rating__table,.live-catalog-filter,.live-school-toolbar,.d_cat_filter2__but-filter,.d_cat_filter2__but-sorting,.d_cat_filter2__views,.d_cat_filter2__head .d_cat_filter2__head-center,.page-index__categories-specs-item-content) { background-color:#fff; }
.academka-public .d_course_reviews__item-wrap { background:transparent; border:0; }
.academka-public .page-index__hero-img { border-radius:28px; }
.academka-public :is(.page-course__info,.page-course__program,.page-course__sidebar,.page-school-course__hero-info,.page-contact__info,.page-contact__locate,.academka-map-link) { background-color:#fff; border-radius:22px; }
.academka-public .page-about__note { border:0; }
.academka-public .legal-document__body { padding:32px; width:auto; box-sizing:border-box; }
.academka-public .legal-document__nav { padding:24px; }
.academka-public :is(.page-single,.d_cat_page) { background-color:var(--academka-canvas); }
.academka-public :is(.page-courses__hero-section,.cmp-breadcrumbs) { background-color:var(--academka-canvas); }
.academka-public .live-school-card > a { border-radius:999px; min-height:46px; }
.academka-public .catalog-schools__hero-search-input { background-color:#fff; border-radius:999px; padding-left:18px; }
.academka-public .catalog-schools__hero-search-btn { border-radius:999px; }
.academka-public .page-contact__info { background:transparent; gap:24px; }
.academka-public .page-contact__info-item { background:#fff; border-radius:22px; padding:24px; }
.academka-public .single-page__header { background:transparent; padding:28px 0 0; }
.academka-public .single-page__top { background:var(--academka-canvas); }
.academka-public .single-page__header-content { height:auto; min-height:168px; }
.academka-public .single-page__header-stat-item-text { flex:0 0 180px; width:180px; align-items:center; white-space:nowrap; }
.academka-public .single-page__header-stat-item-text span:first-child { flex:0 0 24px; width:24px; }
.academka-public .single-page__header-stat-item-text img { width:22px; height:22px; max-width:none; flex-shrink:0; }
.academka-public .single-page__header-stat-item-text > div { flex:0 0 24px; width:24px; }
.academka-public .single-page__header-stat-scroll-wrap { flex:1; width:auto; min-width:0; }
.academka-public :is(.single-page__block,.rtrs-review-wrap) { background:transparent; border:0; box-shadow:none; border-radius:0; }
.academka-public .single-page__block:empty { display:none; }
.academka-public .single-page__header-top { align-items:center; gap:24px; margin-bottom:28px; }
.academka-public .single-page__header-title { font-size:clamp(28px,3vw,40px); line-height:1.2; letter-spacing:-.65px; }
.academka-public .single-page__header-content { background:#fff; border:0; border-radius:26px; padding:28px; gap:24px; align-items:center; box-sizing:border-box; }
.academka-public .single-page__header-item { border:0; padding:0; min-width:0; }
.academka-public .single-page__header-left { gap:28px; align-items:center; }
.academka-public .single-page__header-reviews-block { gap:24px; }
.academka-public .single-page__header-reviews { gap:14px; align-items:center; }
.academka-public .single-page__header-count { font-size:15px; }
.academka-public .single-page__header-stat-item { margin-bottom:12px; gap:16px; }
.academka-public .single-page__header-stat-item:last-child { margin-bottom:0; }
.academka-public .single-page__header-stat-scroll { border-radius:999px; background:#eef0f3; overflow:hidden; }
.academka-public .single-page__header-stat-scroll-act { border-radius:999px; }
.academka-public :is(.single-page__header-but-add,.single-page__review-btn-add,.single-page__header-but-link) { min-height:46px; border-radius:999px; background-color:#171717; color:#fff; padding-top:13px; padding-bottom:13px; box-sizing:border-box; }
.academka-public :is(.single-page__header-but-add,.single-page__review-btn-add) { border:0; }
.academka-public .single-page__header-nav { display:flex; justify-content:flex-start; gap:8px; padding:8px; margin:24px 0 32px; background:#fff; border:0; border-radius:999px; width:max-content; max-width:100%; }
.academka-public .single-page__header-nav-item { width:auto; flex:0 1 auto; padding:13px 24px; margin:0; border:0; border-radius:999px; font-size:15px; line-height:1.3; color:#565d67; }
.academka-public .single-page__header-nav-item::after { display:none; }
.academka-public .single-page__header-nav-item[data-active='1'] { background:#171717; color:#fff; }
.academka-public .single-page__container { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:28px; align-items:start; }
.academka-public .single-page__container { padding-top:0; }
.academka-public.single-school .single-page__content { width:100%; min-width:0; padding:0; }
.academka-public.single-school .single-page__sidebar { width:100%; min-width:0; padding:0; display:block; }
.academka-review-guide { background:#fff; border-radius:24px; padding:26px; margin-bottom:24px; color:#171717; }
.academka-review-guide h2 { font:22px/1.35 stem-medium,Arial,sans-serif; margin:0 0 14px; }
.academka-review-guide p { font:15px/1.65 stem-semilight,Arial,sans-serif; color:#656c76; margin:0 0 20px; }
.academka-review-guide a { display:block; font:14px/1.5 stem-medium,Arial,sans-serif; margin-top:14px; color:#353a42; text-decoration:underline; text-underline-offset:3px; }
.academka-review-guide .academka-review-guide__action { background:#171717; color:#fff; border-radius:999px; padding:14px 18px; text-align:center; text-decoration:none; }
.academka-review-empty,.academka-public.single-school .comments-closed { background:#fff; border-radius:24px; padding:28px; margin:0 0 24px; font:16px/1.65 stem-semilight,Arial,sans-serif; }
.academka-review-empty h2 { font:23px/1.35 stem-medium,Arial,sans-serif; margin:0 0 12px; }
.academka-review-empty p { margin:0 0 18px; color:#656c76; }
.academka-review-empty a { display:inline-block; padding:12px 20px; border-radius:999px; color:#fff; background:#171717; font-family:stem-medium; }
.academka-public :is(.single-page__review,.single-page__review-container,.rtrs-review-box,.rtrs-review-list,.rtrs-review-list > li,.single-page__review-list) { background:transparent; border:0; box-shadow:none; padding:0; margin:0; }
.academka-public .single-page__review-head { background:#fff; border:0; border-radius:22px; padding:20px 24px; margin-bottom:20px; gap:18px; flex-wrap:wrap; }
.academka-public .single-page__review-head { height:auto; min-height:80px; box-sizing:border-box; }
.academka-public .single-page__review-sorting { gap:10px; flex-wrap:wrap; }
.academka-public .single-page__review-sorting { height:auto; padding:0; margin:0; align-items:center; }
.academka-public .single-page__review-sorting-selected { border-radius:12px; padding:12px 16px; background:#f5f6f8; }
.academka-public .single-page__review-sorting-list { z-index:20; background:#fff; border-radius:16px; box-shadow:0 8px 24px #17171714; }
.academka-public :is(.single-page__review-item,.live-review-list .live-review) { background:#fff; border:0; border-radius:24px; padding:28px; margin:0 0 20px; box-shadow:none; }
.academka-public .single-page__review-item-top { background:transparent; padding:0 0 22px; margin:0 0 22px; border:0; border-bottom:1px solid #eef0f3; gap:18px; flex-wrap:wrap; align-items:center; }
.academka-public .single-page__review-item-avatar { width:44px; height:44px; margin-right:12px; }
.academka-public .single-page__review-item-avatar img { border-radius:50%; }
.academka-public .single-page__review-item-user { color:#171717; font-size:15px; line-height:1.5; }
.academka-public .single-page__review-item-date { color:#7b828c; font-size:12px; margin-top:4px; }
.academka-public .single-page__review-rating { gap:12px; }
.academka-public .single-page__review-rating-start-list { --academka-star-size:20px; }
.academka-public .single-page__review-item-title { padding:0; margin:0 0 16px; font-size:21px; line-height:1.4; color:#171717; }
.academka-public .single-page__review-item-desc { padding:0; margin:0; font-size:16px; line-height:1.75; color:#4f5660; }
.academka-public .single-page__review-item-desc p { font:inherit; margin:0 0 14px; }
.academka-public .single-page__review-item-btns { padding:20px 0 0; margin:0; gap:12px; }
.academka-public .single-page__review-item-like { background:#f5f6f8; border-radius:999px; padding:8px 14px; min-height:40px; gap:8px; }
.academka-public .single-page__review-item-like .btn { min-height:24px; }
.academka-public .single-page__info { padding:28px; border:0; border-radius:24px; background:#fff; }
.academka-public .single-page__block:has(.comment-respond) { padding:0; border:0; background:transparent; box-shadow:none; }
.academka-public .comment-respond { padding:32px; margin-top:28px; border:0; border-radius:24px; background:#fff; box-shadow:none; scroll-margin-top:100px; }
.academka-public .comment-reply-title { font-size:28px; line-height:1.3; margin:0 0 24px; }
.academka-public form[action='/api/reviews'] :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),textarea) { background-color:#f5f6f8; border:1px solid #e6e8ec; border-radius:14px; padding:14px 16px; box-sizing:border-box; font-size:16px; }
.academka-public form[action='/api/reviews'] textarea { line-height:1.6; }
.academka-public form[action='/api/reviews'] button[type=button] { border-radius:999px; }
@media(max-width:1050px) {
 .academka-public .single-page__container { grid-template-columns:minmax(0,1fr) 260px; gap:20px; }
 .academka-public .single-page__header-content { gap:20px; padding:24px; }
 .academka-public .single-page__header-left { gap:20px; }
}
@media(max-width:800px) {
 .academka-public .single-page__container { grid-template-columns:1fr; }
 .academka-public .single-page__sidebar { display:none; }
 .academka-public .single-page__header-content { flex-wrap:wrap; }
 .academka-public .single-page__header-left { width:100%; }
 .academka-public .single-page__header-stat { width:100%; }
}
@media(max-width:620px) {
 .academka-public .single-page__header { padding-top:16px; }
 .academka-public .single-page__header-top { margin-bottom:22px; }
 .academka-public .single-page__header-content { padding:22px 20px; border-radius:24px; gap:22px; }
 .academka-public .single-page__header-left { gap:16px; justify-content:space-between; }
 .academka-public .single-page__header-left > .single-page__header-item { flex:0 0 110px; width:110px; }
 .academka-public .single-page__header-logo { width:110px; height:70px; }
 .academka-public .single-page__header-logo img { width:100%; max-height:70px; object-fit:contain; }
 .academka-public .single-page__header-reviews-block { flex:1; min-width:0; }
 .academka-public .single-page__header-stat-item-text { flex:0 0 24px; width:24px; }
 .academka-public .single-page__header-stat-scroll-wrap { flex-direction:column; gap:8px; padding:0; align-items:stretch; }
 .academka-public .single-page__header-stat-scroll-wrap > span { width:100%; padding:0; white-space:nowrap; }
 .academka-public .single-page__header-stat-scroll { width:100%; }
 .academka-public .single-page__header-but-add { padding-left:32px; padding-right:12px; font-size:11px; }
 .academka-public .single-page__header-reviews-block { gap:10px; }
 .academka-public .single-page__header-reviews { gap:10px; }
 .academka-public .single-page__header-stat-item { gap:12px; }
 .academka-public .single-page__header-nav { width:100%; box-sizing:border-box; gap:4px; margin:20px 0 24px; }
 .academka-public .single-page__header-nav-item { flex:1; text-align:center; padding:12px 10px; font-size:14px; }
 .academka-public .single-page__review-head { padding:18px; }
 .academka-public .single-page__review-sorting { font-size:14px; }
 .academka-public .single-page__review-sorting { flex-direction:column; align-items:stretch; width:100%; }
 .academka-public .single-page__review-sorting-selected-wrap { width:100%; margin:0; }
 .academka-public .single-page__review-sorting-selected { width:100%; box-sizing:border-box; }
 .academka-public :is(.single-page__review-item,.live-review-list .live-review) { padding:22px 20px; border-radius:22px; }
 .academka-public .single-page__review-item-top { padding-bottom:18px; margin-bottom:18px; gap:16px; }
 .academka-public .single-page__review-item-info { min-width:0; }
 .academka-public .single-page__review-item-title { font-size:19px; }
 .academka-public .single-page__review-item-desc { font-size:15px; line-height:1.7; }
 .academka-public .comment-respond { padding:24px 20px; margin-top:24px; }
 .academka-public .comment-reply-title { font-size:24px; }
 .academka-public :is(.legal-document__body,.legal-document__nav) { padding:22px 20px; }
}
