.course-reviews-trigger { display:inline-flex; align-items:center; flex-wrap:wrap; justify-content:flex-start; gap:7px; min-height:44px; max-width:100%; padding:6px 0; border:0; background:transparent; color:#325b7e; font:inherit; font-size:13px; line-height:1.5; text-align:left; cursor:pointer; }
.course-reviews-trigger strong { font-size:14px; font-weight:700; color:#173c5e; }
.course-reviews-trigger > span:last-child { font-size:13px; }
.course-reviews-trigger:hover > span:not([aria-hidden]) { text-decoration:underline; text-underline-offset:4px; }
.course-reviews-trigger:focus-visible, .course-reviews-dialog :focus-visible { outline:3px solid #6598cd; outline-offset:4px; }
.course-review-stars { display:inline-block; position:relative; color:#8996a4; font-size:15px; letter-spacing:1px; line-height:1.4; white-space:nowrap; }
.course-review-stars > span { position:absolute; inset:0 auto 0 0; overflow:hidden; width:var(--review-fill,0%); color:#92600c; white-space:nowrap; }
.course-review-outline { font-size:19px; line-height:1; }
.home-course-body > .course-reviews-trigger, .catalog-card-body > .course-reviews-trigger { margin-top:2px; }
.virtual-course-hero .course-reviews-trigger { margin:14px 0 2px; padding:8px 12px; border:1px solid #d9e4ef; border-radius:9px; background:#fff; color:#325b7e; }
.virtual-course-hero .course-reviews-trigger:hover { background:#eef5fc; }
.aula-course-body > .course-reviews-trigger { margin-top:4px; }
.virtual-course-page .course-access-headline { display:flex; flex-direction:column; align-items:flex-start; gap:5px; }
.virtual-course-page .course-access-headline > span { display:block; color:#536b80; font-size:13px; font-weight:600; letter-spacing:0; line-height:1.6; text-transform:none; }
.virtual-course-page .course-access-headline > strong { display:block; font-size:30px; line-height:1.25; }
.virtual-course-page .course-coupon-note.is-free { font-size:13px; line-height:1.7; }
.course-reviews-dialog{position:fixed;left:50vw;top:50svh;right:auto;bottom:auto;margin:0;transform:translate(-50%,-50%);box-sizing:border-box;width:min(820px,calc(100vw - 40px));max-width:none;max-height:calc(100svh - 40px);padding:0;overflow:hidden;border:1px solid #dce5ee;border-radius:18px;background:#f8fafc;color:#193850;font-family:var(--font-ui,system-ui,sans-serif);box-shadow:0 24px 90px #0a213b35}
.course-reviews-dialog[open]{display:flex;flex-direction:column}
.course-reviews-dialog *,.course-reviews-dialog *::before,.course-reviews-dialog *::after{box-sizing:border-box}
.course-reviews-dialog::backdrop{background:#122c468a;backdrop-filter:blur(5px)}
body:has(.course-reviews-dialog[open]){overflow:hidden}
.course-reviews-header{display:flex;flex:none;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 28px 20px;border-bottom:1px solid #e1e8ef;background:#fff}
.course-reviews-header>div{min-width:0}
.course-reviews-header h2{margin:0;color:#173651;font-size:24px;line-height:1.25;letter-spacing:-.6px;font-weight:700}
.course-reviews-header [data-review-course]{display:flex;align-items:baseline;gap:7px;margin:9px 0 0;color:#536b80;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.course-reviews-header [data-review-course]::before{content:"";flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:#6f92ae;align-self:center}
.course-reviews-header button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #dce5ee;border-radius:12px;color:#315a7c;background:#f8fafc;font:inherit;font-size:27px;line-height:1;cursor:pointer;transition:background .15s,border-color .15s}
.course-reviews-header button:hover{background:#eaf1f8;border-color:#b8cde0}
.course-reviews-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:22px 24px 24px}
.course-reviews-summary{display:grid;grid-template-columns:minmax(170px,1fr) minmax(0,1.25fr);align-items:center;gap:28px;padding:22px 24px;border:1px solid #dfe7ef;border-radius:12px;background:linear-gradient(115deg,#f1f6fb,#fff 65%)}
.course-reviews-summary:not(:has(.course-reviews-distribution)){grid-template-columns:minmax(0,1fr)}
.course-reviews-rating{min-width:0}
.course-reviews-rating .course-reviews-rating-label{margin:0 0 6px;color:#536b80;font-size:11px;line-height:1.4}
.course-reviews-rating>strong{display:block;color:#173b59;font-size:52px;line-height:1.1;letter-spacing:-1.7px;font-weight:700;font-variant-numeric:tabular-nums}
.course-reviews-rating>strong small{margin-left:4px;color:#536b80;font-size:17px;font-weight:400;letter-spacing:0}
.course-reviews-rating>div{margin-top:7px;line-height:1}
.course-reviews-rating .course-review-stars{font-size:17px;letter-spacing:2px}
.course-reviews-rating>p:last-child{margin:6px 0 0;color:#536b80;font-size:11px;line-height:1.5}
.course-reviews-distribution{display:grid;gap:7px;min-width:0}
.course-review-distribution-row{display:grid;grid-template-columns:27px minmax(0,1fr) 24px;gap:10px;align-items:center;font-size:11px;line-height:1.4;color:#536b80;font-variant-numeric:tabular-nums}
.course-review-distribution-row>span:first-child{white-space:nowrap}
.course-review-distribution-row i{font-size:10px;font-style:normal;color:#92600c}
.course-review-distribution-row>span:last-child{text-align:right}
.course-review-distribution-track{display:block;height:6px;overflow:hidden;border-radius:10px;background:#e8eef4}
.course-review-distribution-track>span{display:block;height:100%;border-radius:10px;background:#af8339}
.course-reviews-opinions{margin-top:24px}
.course-reviews-opinions>h3{margin:0 0 12px;color:#36546e;font-size:12px;line-height:1.5;font-weight:650}
.course-reviews-list{display:grid;gap:12px}
.course-review-item{min-width:0;padding:20px;border:1px solid #e0e8ef;border-radius:12px;background:#fff}
.course-review-item header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px}
.course-review-avatar{display:grid;place-items:center;width:42px;height:42px;border:1px solid #dde8f2;border-radius:50%;background:#edf3f9;color:#315b7d;font-size:12px;font-weight:700}
.course-review-person{min-width:0}
.course-review-item h4{margin:0;color:#244860;font-size:14px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}
.course-review-item time{display:block;margin-top:4px;color:#627487;font-size:11px;line-height:1.5}
.course-review-score{display:flex;flex-direction:column;align-items:flex-end;gap:3px;margin:0}
.course-review-score .course-review-stars{font-size:13px}
.course-review-rating-number{color:#627487;font-size:10px;line-height:1.4;font-variant-numeric:tabular-nums}
.course-review-comment,.course-review-reply p{margin:16px 0 0;color:#3b5267;font-size:14px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}
.course-review-reply{margin-top:18px;padding:16px 18px;border-left:2px solid #b6cbdc;border-radius:0 9px 9px 0;background:#f3f7fb}
.course-review-reply>span{display:block;margin-bottom:5px;color:#536b80;font-size:10px;line-height:1.5}
.course-review-reply strong{color:#31516b;font-size:12px;font-weight:650;overflow-wrap:anywhere}
.course-review-reply p{margin-top:7px;font-size:13px}
.course-reviews-empty{text-align:center;padding:30px 20px;border:1px solid #e0e8ef;border-radius:12px;background:#fff}
.course-reviews-empty>span{display:inline-grid;place-items:center;width:62px;height:62px;border:1px solid #dce7f1;border-radius:18px;background:#f2f6fa;color:#536f88;font-size:36px;line-height:1}
.course-reviews-empty h3{max-width:400px;margin:18px auto 10px;color:#244860;font-size:19px;line-height:1.4;font-weight:650;letter-spacing:-.3px}
.course-reviews-empty p{max-width:420px;margin:0 auto;color:#536b80;font-size:13px;line-height:1.7}
.course-reviews-empty button{margin-top:18px;min-height:44px;padding:10px 22px;border:1px solid #1d6093;border-radius:8px;background:#1d6093;color:#fff;font:inherit;font-size:12px;cursor:pointer}
.course-reviews-loading{padding:4px 0 8px}
.course-reviews-loading>p{margin:0 0 16px;color:#536b80;font-size:13px;line-height:1.5}
.course-reviews-skeleton{display:grid;gap:14px}
.course-reviews-skeleton>span{display:block;height:14px;max-width:100%;border-radius:8px;background:#e7eef5;animation:course-reviews-pulse 1.3s ease-in-out infinite alternate}
.course-reviews-skeleton>span:first-child{height:130px;border-radius:12px}
.course-reviews-skeleton>span:last-child{width:65%}
@keyframes course-reviews-pulse{to{opacity:.45}}
@media(max-width:600px){
 .course-reviews-dialog{width:calc(100vw - 24px);max-height:calc(100svh - 24px);border-radius:14px}
 .course-reviews-header{padding:18px;gap:14px}
 .course-reviews-header h2{font-size:21px;letter-spacing:-.4px}
 .course-reviews-header [data-review-course]{margin-top:7px;font-size:11px}
 .course-reviews-content{padding:16px}
 .course-reviews-summary{grid-template-columns:minmax(96px,1fr) minmax(0,1.2fr);gap:16px;padding:16px}
 .course-reviews-rating>strong{font-size:44px}
 .course-reviews-rating>strong small{font-size:15px}
 .course-reviews-rating .course-reviews-rating-label,.course-reviews-rating>p:last-child{font-size:10px}
 .course-reviews-rating .course-review-stars{font-size:14px;letter-spacing:1px}
 .course-review-distribution-row{grid-template-columns:24px minmax(0,1fr) 14px;gap:6px;font-size:10px}
 .course-reviews-opinions{margin-top:20px}
 .course-review-item{padding:16px}
 .course-review-item header{grid-template-columns:36px minmax(0,1fr) auto;gap:10px}
 .course-review-avatar{width:36px;height:36px;font-size:11px}
 .course-review-item h4{font-size:13px}
 .course-review-item time{font-size:10px}
 .course-review-comment{font-size:13px;margin-top:13px}
 .course-review-reply{padding:13px 14px}
 .course-reviews-empty{padding:26px 16px}
 .course-reviews-empty h3{font-size:18px}
}
@media(max-width:420px){
 .course-review-item header{grid-template-columns:36px minmax(0,1fr);gap:7px 10px}
 .course-review-score{grid-column:2;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:8px}
 .course-review-score .course-review-stars{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.course-reviews-dialog{scroll-behavior:auto}.course-reviews-skeleton>span{animation:none}.course-reviews-header button{transition:none}}

html:has(.course-reviews-dialog[open]){scrollbar-gutter:auto}
