@import url('/css/design-system.css');
/* The five public pages share these tokens; campaign imagery stays content. */
body.upskill-page {--primary-color:var(--up-brand);--primary-dark:var(--up-brand-hover);--primary-light:var(--up-brand);--text-dark:var(--up-ink);--text-light:var(--up-text);--text-muted:var(--up-muted);--bg-light:var(--up-field);--bg-white:var(--up-canvas);--border-light:var(--up-line);--gradient-primary:var(--up-brand);--gradient-light:var(--up-canvas);--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--shadow-xl:none;background:var(--up-canvas)!important;color:var(--up-ink);font-family:var(--up-font-body)!important;line-height:1.65;letter-spacing:-.025em;padding-bottom:calc(84px + env(safe-area-inset-bottom))}
.upskill-page :where(div,p,a,button,input,textarea,select,label,small,strong,b,li,td,th,span:not(.fas):not(.far):not(.fab):not(.fa)) {font-family:inherit!important}
.upskill-page :where(h1,h2,h3,h4,h5,h6) {font-family:var(--up-font-body);color:var(--up-ink);line-height:1.45}
.upskill-page :where(h1,h2,.site-page-heading h1,.home-section-title,.schedule-header .schedule-title,.section-title,.teacher-title,.youtube-title,.open-notice-header h4,.premium-lecture-header h4,.popular-lecture-header h4,.best-class-header h4) {font-family:var(--up-font-headline)!important;font-weight:400!important;letter-spacing:-.025em}
.upskill-page .content-container {max-width:1200px!important;padding-inline:24px}
.upskill-page .site-page-heading {padding:32px 0 12px}.upskill-page .site-page-heading h1 {font-size:30px;margin:0}
.upskill-page .text-muted {color:var(--up-muted)!important}.upskill-page .text-primary {color:var(--up-brand)!important}
.upskill-page :where(button,a,input,textarea,select):focus-visible {outline:2px solid var(--up-brand);outline-offset:3px}
.upskill-page :where(.product-title,.open-notice-title,.premium-lecture-title,.popular-lecture-title,.best-class-title) {font-family:var(--up-font-body)!important;font-size:16px!important;font-weight:600!important;line-height:1.6!important;color:var(--up-ink)!important;letter-spacing:-.035em}
.upskill-page :where(.product-card,.open-notice-card,.premium-lecture-card,.popular-lecture-card,.best-class-card,.youtube-card,.teacher-card,.review-card) {background:#fff!important;border:1px solid var(--up-line)!important;box-shadow:none!important;border-radius:18px!important;overflow:hidden}
.upskill-page :where(.product-card,.open-notice-card,.premium-lecture-card,.popular-lecture-card,.best-class-card,.youtube-card,.teacher-card):hover {box-shadow:0 6px 20px #191f2808!important;border-color:#e5c3cd!important}
.upskill-page :where(.product-content,.open-notice-content,.premium-lecture-content,.popular-lecture-content,.best-class-content) {padding:18px!important}
.upskill-page :where(.countdown-badge,.lecture-type-pill,.open-notice-countdown-badge,.premium-lecture-badge,.popular-lecture-badge,.best-class-badge,.always-open-type-badge) {background:var(--up-brand-soft)!important;color:var(--up-brand)!important;box-shadow:none!important;border:0!important;border-radius:8px!important;font-size:12px!important;line-height:1.5}
.upskill-page .countdown-label {background:transparent!important;color:var(--up-brand)!important}.upskill-page .countdown-text {font-family:var(--up-font-body)!important;font-weight:600!important;text-shadow:none!important}
.upskill-page :where(.price-badge,.product-price) {background:var(--up-field)!important;color:var(--up-ink)!important;border-radius:8px!important;box-shadow:none!important}
.upskill-page :where(.schedule-button,.page-btn.active,.filter-btn.active) {background:var(--up-brand)!important;color:#fff!important;border-color:var(--up-brand)!important;box-shadow:none!important;border-radius:var(--up-radius-control)!important}
.upskill-page :where(.schedule-button,.filter-btn,.page-btn) {min-height:44px;font-size:14px;font-weight:600;box-shadow:none!important;border-radius:var(--up-radius-control)!important}
.upskill-page .filter-btn:not(.active) {background:var(--up-field)!important;color:var(--up-text)!important;border:1px solid transparent!important}.upskill-page .filter-btn::before,.upskill-page .category-badge::before {display:none!important}
.upskill-page .filter-btn:hover {transform:none;background:var(--up-brand-soft)!important;color:var(--up-brand)!important}.upskill-page .filter-btn.active:hover,.upskill-page .schedule-button:hover {background:var(--up-brand-hover)!important;color:#fff!important}
.upskill-page .category-section {background:#fff!important;border:0!important;border-bottom:1px solid var(--up-line)!important;box-shadow:none!important;border-radius:0!important;padding:18px 0!important;margin-bottom:16px}
.upskill-page .category-title {font-size:13px!important;color:var(--up-muted)!important}.upskill-page .category-badge {background:var(--up-field)!important;color:var(--up-text)!important;border:1px solid transparent!important;border-radius:10px!important;box-shadow:none!important;font-size:13px!important;padding:9px 14px!important;transform:none!important}
.upskill-page .category-badge.active,.upskill-page .category-badge:hover {background:var(--up-brand-soft)!important;color:var(--up-brand)!important;border-color:#f2c5d2!important}
.upskill-page :where(.empty-state,.open-notice-empty-state,.premium-lecture-empty-state,.popular-lecture-empty-state,.best-class-empty-state,.empty-review-card,.no-schedule-message) {background:var(--up-field)!important;border:0!important;border-radius:18px!important;box-shadow:none!important;color:var(--up-text)!important;padding:32px 24px!important}
.upskill-page :where(.empty-state-title,.open-notice-empty-state-title,.premium-lecture-empty-state-title,.popular-lecture-empty-state-title,.best-class-empty-state-title) {color:var(--up-ink)!important;font-size:17px!important;font-weight:600!important}
.upskill-page :where(.empty-state-icon,.open-notice-empty-state-icon,.premium-lecture-empty-state-icon,.popular-lecture-empty-state-icon,.best-class-empty-state-icon,.no-schedule-message i) {color:var(--up-brand)!important}
/* Home section typography, media cards and neutral supporting surfaces. */
.page-home>section:not(.learning-intro-section) {background:#fff!important;padding-block:28px!important;opacity:1!important;transform:none!important}
.page-home>section:first-of-type {padding-block:0!important}
.page-home .home-section-title {font-size:25px;margin:4px 0 20px}.page-home .home-section-title i {font-size:20px!important;color:var(--up-brand)!important}
.page-home .home-premium-heading {background:#fff!important;gap:14px!important;padding:16px 0!important}.page-home .home-premium-heading h5:first-child {font-size:12px;color:var(--up-muted)}.page-home .home-premium-heading h5:last-child {font-family:var(--up-font-headline)!important;font-weight:400!important;font-size:25px!important}.page-home .home-premium-heading img {width:54px!important}
.page-home :where(.review-section,.always-open-header) {background:#fff!important;box-shadow:none!important;border:0!important}
.page-home :where(.review-title,.teacher-title,.youtube-title,.open-notice-header h4,.premium-lecture-header h4,.popular-lecture-header h4,.best-class-header h4) {font-size:25px!important;color:var(--up-ink)!important}
.page-home :where(.review-title,.teacher-title,.youtube-title) i {color:var(--up-brand)!important}
.page-home :where(.review-subtitle,.teacher-subtitle,.youtube-subtitle) {font-size:14px!important;color:var(--up-muted)!important;line-height:1.7}
.page-home .review-user-avatar {background:var(--up-brand-soft)!important;color:var(--up-brand)!important}.page-home .review-course {background:var(--up-field)!important;color:var(--up-text)!important}
.page-home .youtube-section .btn {background:var(--up-brand)!important;border:0!important;border-radius:14px!important;min-height:48px;box-shadow:none!important}
.page-home .home-social-tile {background:var(--up-field)!important;border:1px solid var(--up-line)!important;box-shadow:none!important;border-radius:16px!important}.page-home .home-social-tile i,.page-home .home-social-tile div {color:var(--up-text)!important}.page-home .home-social-tile:hover {border-color:var(--up-brand)!important}
/* Schedule retains month navigation, date filtering and past/upcoming lists. */
.page-schedule .schedule-header {background:#fff!important;padding:32px 0 20px!important;gap:16px}.page-schedule .schedule-header .schedule-title {font-size:30px!important;color:var(--up-ink)!important}.page-schedule .schedule-subtitle {font-size:14px;color:var(--up-muted)}.page-schedule .schedule-icon {width:64px;height:64px;filter:none}
.page-schedule>.content-container,.page-schedule>div>.container {max-width:1200px!important;padding-inline:24px}
.upskill-page .calendar-container {background:#fff!important;border:1px solid var(--up-line);border-radius:20px;padding:8px}.upskill-page .calendar-header {padding:16px!important}.upskill-page .calendar-header .btn {width:40px;min-height:40px;border-radius:12px;background:var(--up-field)}.upskill-page .calendar-title {font-family:var(--up-font-body)!important;font-size:18px!important;font-weight:700!important;color:var(--up-ink)!important}
.upskill-page .calendar-day {border-radius:10px;font-size:14px;min-height:40px;color:var(--up-text)}.upskill-page .calendar-day.has-schedule {background:var(--up-brand)!important;color:white!important}.upskill-page .calendar-day:hover {background:var(--up-brand-soft);color:var(--up-brand)}
.upskill-page .schedule-list {padding:0 0 0 12px!important}.upskill-page .schedule-section-title {font-size:16px;font-weight:600;color:var(--up-ink);padding-bottom:12px}.upskill-page #upcomingSchedules,.upskill-page #pastSchedules {background:#fff!important;border:1px solid var(--up-line)!important;border-radius:16px;scrollbar-color:var(--up-brand) var(--up-field)}
.upskill-page .schedule-item {background:var(--up-field)!important;border-radius:12px!important;box-shadow:none!important;border:0!important;padding:12px!important}.upskill-page .schedule-item .schedule-title {font-family:var(--up-font-body)!important;font-size:15px!important;font-weight:600!important;color:var(--up-ink)!important}.upskill-page .schedule-day {color:var(--up-brand)!important}.upskill-page .schedule-date,.upskill-page .schedule-info,.upskill-page .schedule-time {color:var(--up-text)!important;font-size:12px!important}
.page-schedule .current-date-container {background:var(--up-field)!important;border:0!important;border-radius:14px!important;box-shadow:none!important;padding:14px 18px!important;margin-bottom:24px}.page-schedule .current-date {font-size:15px;color:var(--up-text)}.page-schedule .current-time {color:var(--up-muted);font-size:13px}
/* Community: readable announcements and an honest upcoming state. */
.page-community .content-container {max-width:960px!important}.page-community .content-container>.p-4 {padding:24px 0!important}.page-community .section-title {border:0;font-size:24px;padding:0;margin-bottom:20px}.page-community .list-group-item {border:1px solid var(--up-line)!important;border-radius:16px!important;box-shadow:none!important;margin-bottom:12px;padding:24px;transform:none!important}.page-community .list-group-item h6 {font-size:16px;color:var(--up-ink);font-weight:600;line-height:1.65}.page-community .list-group-item h6 i {color:var(--up-brand)}.page-community .list-group-item p {font-size:14px;color:var(--up-text);line-height:1.85;white-space:pre-line;margin-top:14px}.page-community .notice-date {color:var(--up-muted);white-space:nowrap;font-size:12px;margin-left:16px}.page-community .list-group>.text-center {background:var(--up-field);border-radius:18px;padding:36px 24px!important}.page-community .list-group>.text-center i {color:var(--up-brand)!important;font-size:24px}
@media(max-width:600px){body.upskill-page {font-size:14px}.upskill-page .content-container {padding-inline:16px!important}.upskill-page .site-page-heading {padding-top:24px}.upskill-page .site-page-heading h1,.page-schedule .schedule-header .schedule-title {font-size:26px!important}.page-home>section:not(.learning-intro-section) {padding-block:20px!important}.page-home :where(.home-section-title,.review-title,.teacher-title,.youtube-title,.open-notice-header h4,.premium-lecture-header h4,.popular-lecture-header h4,.best-class-header h4) {font-size:23px!important}.page-home .home-premium-heading h5:last-child {font-size:23px!important}.upskill-page .schedule-list {padding-left:0!important}.page-schedule>.content-container,.page-schedule>div>.container {padding-inline:16px!important}.upskill-page .product-title {font-size:15px!important}.upskill-page .product-content {padding:14px!important}.page-community .list-group-item {padding:20px}.page-community .list-group-item .d-flex {flex-direction:column;gap:6px}.page-community .notice-date {margin-left:0}}
@media(prefers-reduced-motion:reduce){.upskill-page * {scroll-behavior:auto!important;transition:none!important;animation:none!important}.page-home>section {opacity:1!important;transform:none!important}}
/* Learning intro section wrapper */
.page-home .learning-intro-section {opacity:1!important;transform:none!important;padding:40px 24px!important;background:#fff!important}
/* Learning intro banner — 리뉴얼 톤: 연핑크 플랫 카드 + 흐르는 분야 칩/아이콘 */
.learning-banner {position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:32px;width:100%;max-width:1072px;margin:0 auto;padding:48px 0 48px 52px;background:#fff0f4;border-radius:24px;overflow:hidden;color:var(--up-ink);text-align:left;font-family:var(--up-font-body)}
.learning-banner .lb-copy {position:relative;z-index:1;min-width:0}
.learning-banner .learning-eyebrow {display:inline-block;margin:0 0 16px;padding:6px 12px;border-radius:999px;background:#fff;color:var(--up-brand);font-size:11px;font-weight:700;letter-spacing:.12em}
.learning-banner h2 {margin:0 0 12px;font-family:var(--up-font-headline)!important;font-weight:400!important;font-size:34px;line-height:1.35;letter-spacing:-.03em;color:var(--up-ink)!important}
.learning-banner .learning-description {margin:0 0 28px;color:#4e5968;font-size:15px;line-height:1.75}
.learning-banner .lb-cta {display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 22px;border-radius:12px;background:var(--up-brand);color:#fff;font-size:15px;font-weight:700;text-decoration:none;transition:background .2s,transform .35s cubic-bezier(.34,1.56,.64,1)}
.learning-banner .lb-cta i {font-size:12px;transition:transform .3s}
.learning-banner .lb-cta:hover {background:var(--up-brand-hover,#c81e4c);transform:translateY(-2px)}
.learning-banner .lb-cta:hover i {transform:translateX(3px)}
.learning-banner .lb-stage {display:flex;flex-direction:column;gap:14px;min-width:0;transform:rotate(-6deg);margin:-30px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 88%,transparent)}
.learning-banner .lb-row {overflow:hidden;padding:6px 0}
.learning-banner .lb-track, .learning-banner .lb-dup {display:flex;align-items:center;width:max-content}
.learning-banner .lb-track {animation:lb-marquee 32s linear infinite}
.learning-banner .lb-row-2 .lb-track {animation-duration:38s;animation-direction:reverse}
.learning-banner .lb-row-3 .lb-track {animation-duration:28s}
.learning-banner .lb-stage:hover .lb-track {animation-play-state:paused}
.learning-banner :is(.lb-chip,.lb-tile) {flex:none;margin-right:12px}
.learning-banner .lb-chip {display:inline-flex;align-items:center;gap:8px;height:52px;padding:0 22px;border-radius:16px;background:#fff;color:var(--up-ink);font-size:16px;font-weight:700;letter-spacing:-.03em;white-space:nowrap}
.learning-banner .lb-chip::before {content:"";width:7px;height:7px;border-radius:50%;background:#ffc2d1}
.learning-banner .lb-chip.is-accent {background:var(--up-brand);color:#fff}
.learning-banner .lb-chip.is-accent::before {background:#fff}
.learning-banner .lb-tile {display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;background:#fff}
.learning-banner .lb-tile .si {display:block;width:46px;height:46px;overflow:visible}
.learning-banner .si :is(g,path,circle,rect) {transform-box:fill-box;transform-origin:center}
.learning-banner .si :is(.si-bg,.si-glow) {display:none}
.learning-banner .si-youtube .si-clapper {transform-box:view-box;transform-origin:18px 27px}
.learning-banner .si-agent .si-wave {transform-box:view-box;transform-origin:32px 14px;opacity:0}
@keyframes lb-marquee {from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:900px){.learning-banner {grid-template-columns:1fr;gap:28px;padding:40px 0 36px}.learning-banner .lb-copy {padding:0 28px;text-align:center}.learning-banner .lb-stage {transform:rotate(-4deg);margin:0}}
@media(max-width:600px){.learning-banner {border-radius:20px;padding:32px 0 28px}.learning-banner .lb-copy {padding:0 20px}.learning-banner h2 {font-size:25px}.learning-banner .learning-description {font-size:14px;margin-bottom:22px}.learning-banner .lb-stage {gap:10px}.learning-banner .lb-chip {height:44px;padding:0 16px;font-size:14px;border-radius:14px}.learning-banner .lb-tile {width:44px;height:44px;border-radius:14px}.learning-banner .lb-tile .si {width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.learning-banner .lb-track {animation:none}}
@media(max-width:600px){.page-home .learning-intro-section {padding:24px 16px!important}}

.page-support .content-container,.page-reviews .content-container {max-width:960px!important;margin:auto}
.page-support .hero-section {background:white!important;color:var(--up-ink)!important;border-radius:0;padding:40px 0 24px!important;text-align:left!important}
.page-support .hero-title {color:var(--up-ink)!important;font-size:30px!important}
.page-support .hero-subtitle {color:var(--up-text)!important;font-size:16px!important}
.page-support .form-container {box-shadow:none!important;border:0!important;padding:24px 0!important;background:white!important}
.page-support .form-title {color:var(--up-ink)!important;text-align:left!important;font-size:25px!important}
.page-support .form-description {background:var(--up-field)!important;padding:24px!important;border-radius:14px!important;color:var(--up-text)}
.page-support .form-control {background:var(--up-field)!important;border:1px solid transparent!important;border-radius:14px!important;padding:14px 16px!important;color:var(--up-ink)!important;box-shadow:none!important}
.page-support .form-control:focus {border-color:var(--up-brand)!important;background:white!important}
.page-support .submit-btn {background:var(--up-brand)!important;color:white!important;box-shadow:none!important;border:0!important;border-radius:14px!important;transform:none!important}
.page-support .submit-btn:disabled {opacity:.5;cursor:wait}
.page-support .required,.page-support .radio-item input {color:var(--up-brand);accent-color:var(--up-brand)}
.support-trap {position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.captcha-group {margin-top:32px}.captcha-group p {font-size:13px;color:var(--up-muted)}.captcha-image-row {display:flex;align-items:center;gap:16px;margin-bottom:12px}.captcha-image-row button {background:var(--up-brand-soft);color:var(--up-brand);border:0;border-radius:10px;padding:10px 14px;font-size:13px}.captcha-group .form-control {max-width:320px}
.page-reviews .main-content,.page-reviews .feature-card {background:white!important;box-shadow:none!important;border:1px solid var(--up-line)!important;border-radius:18px!important}
.page-reviews .info-section {background:var(--up-field)!important;border-radius:14px!important;color:var(--up-text)!important}.page-reviews .info-text {font-family:var(--up-font-headline)!important;color:var(--up-ink)!important;font-size:28px!important}.page-reviews .feature-icon {background:var(--up-brand-soft)!important;color:var(--up-brand)!important}.page-reviews .info-description {color:var(--up-text)!important}
.page-ebooks .ebook-container {background:white!important;box-shadow:none!important;border:0!important}.page-ebooks .ebook-card {border:1px solid var(--up-line)!important;border-radius:18px!important;box-shadow:none!important;transform:none!important}.page-ebooks .ebook-title {font-family:var(--up-font-body)!important;font-size:18px!important;font-weight:600!important;color:var(--up-ink)!important}.page-ebooks .ebook-badge {background:var(--up-brand-soft)!important;color:var(--up-brand)!important}.page-ebooks .ebook-price {color:var(--up-ink)!important}.page-ebooks .ebook-thumbnail-placeholder {background:var(--up-field)!important;color:var(--up-brand)!important}
@media(max-width:600px){.page-support .hero-title,.page-reviews .info-text {font-size:25px!important}.page-support .hero-section {padding-top:24px!important}.page-support .content-container,.page-reviews .content-container {padding-inline:16px!important}}
.page-support .hero-section {margin-bottom:8px!important}.page-support .hero-subtitle {margin-bottom:0!important}.page-support .contact-info {background:var(--up-field)!important;color:var(--up-text)!important}
.page-ebooks .content-container-main {max-width:1200px;margin:auto;padding:32px 24px!important}.page-ebooks .ebook-container {padding:0!important}.page-ebooks .nav-link {background:var(--up-field)!important;color:var(--up-text)!important;border:1px solid var(--up-line)!important;border-radius:10px!important}.page-ebooks .ebook-container,.page-ebooks .ebook-card {opacity:1!important;animation:none!important}
@media(max-width:600px){.page-ebooks .content-container-main {padding:24px 16px!important}}
.page-ebooks section {opacity:1!important;transform:none!important;transition:none!important}
.page-reviews .reviews-list-page {max-width:1200px!important;padding-top:16px;padding-bottom:40px}
.page-reviews .site-page-heading p {color:var(--up-text);margin:14px 0}.review-total {display:inline-block;font-size:13px;color:var(--up-brand);background:var(--up-brand-soft);padding:5px 12px;border-radius:8px}
.page-reviews .review-section {padding:16px 0}.page-reviews .review-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:20px}.page-reviews .review-card {min-width:0;max-width:none;width:100%;display:flex;flex-direction:column;padding:24px}.page-reviews .review-content {white-space:pre-wrap;overflow-wrap:anywhere}.page-reviews .review-course {margin-top:auto}
.upskill-page .review-course {display:block;text-decoration:none;color:var(--up-text);background:var(--up-field);border-radius:10px}.upskill-page .review-course:hover {color:var(--up-brand);background:var(--up-brand-soft)}
.review-view-all {position:absolute;right:0;top:8px;font-size:13px;font-weight:600;color:var(--up-brand);text-decoration:none}.upskill-page .review-grid {scrollbar-color:var(--up-brand) var(--up-field)}.upskill-page .review-grid::-webkit-scrollbar-thumb {background:var(--up-brand)!important}
.review-pagination {display:flex;justify-content:center;align-items:center;gap:24px;margin-top:32px;font-size:14px}.review-pagination a {color:var(--up-brand);background:var(--up-brand-soft);border-radius:10px;padding:10px 20px;text-decoration:none}
@media(max-width:900px){.page-reviews .review-grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.page-reviews .review-grid {grid-template-columns:1fr}.review-view-all {position:static;display:inline-block;margin-top:8px}.page-reviews .review-card {padding:20px}}
.page-community .community-hub {max-width:1040px!important;padding-bottom:48px}
.community-hub .site-page-heading {padding:32px 0 28px}.community-hub .site-page-heading p {color:var(--up-text);font-size:15px;margin:12px 0 0}
.community-connect {display:flex;align-items:center;gap:20px;padding:28px;background:var(--up-field);border-radius:18px;margin-bottom:40px}
.community-chat-symbol {width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:var(--up-brand-soft);flex-shrink:0}.community-chat-symbol svg {width:32px;height:32px;fill:var(--up-brand)}.community-chat-symbol circle {fill:white}
.community-connect-copy {flex:1}.community-connect-copy h2 {font-family:var(--up-font-body)!important;font-size:20px;font-weight:700!important;margin:0 0 6px}.community-connect-copy p {font-size:14px;color:var(--up-text);margin:0}
.community-kakao-link {display:flex;align-items:center;gap:12px;justify-content:center;text-decoration:none;background:#fee500;color:#191919;padding:13px 18px;border-radius:12px;font-size:14px;font-weight:600;white-space:nowrap}.community-kakao-link:hover {background:#f2d900;color:#191919}
.community-notices-heading {display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.community-notices-heading h2 {font-family:var(--up-font-body)!important;font-weight:700!important;font-size:21px;margin:0}.community-notices-heading>span {color:var(--up-muted);font-size:13px}
.community-notice {border-top:1px solid var(--up-line)}.community-notice:last-child {border-bottom:1px solid var(--up-line)}.community-notice summary {display:flex;align-items:center;gap:14px;padding:22px 0;cursor:pointer;list-style:none}.community-notice summary::-webkit-details-marker {display:none}.notice-label {font-size:11px;font-weight:600;color:var(--up-brand);background:var(--up-brand-soft);border-radius:6px;padding:4px 8px;flex-shrink:0}.notice-summary-title {font-size:15px;font-weight:600;flex:1;color:var(--up-ink)}.community-notice .notice-date {color:var(--up-muted);font-size:12px;white-space:nowrap}.notice-chevron {width:18px;height:18px;fill:none;stroke:var(--up-muted);stroke-width:1.7;flex-shrink:0}.community-notice[open] .notice-chevron {transform:rotate(180deg)}.community-notice-content {padding:0 48px 24px;white-space:pre-line;overflow-wrap:anywhere;color:var(--up-text);font-size:14px;line-height:1.85}.community-no-notices {color:var(--up-muted);padding:24px 0}
@media(max-width:600px){.community-connect {flex-wrap:wrap;padding:20px;gap:14px;margin-bottom:32px}.community-connect-copy {flex-basis:calc(100% - 70px)}.community-connect-copy h2 {font-size:18px}.community-connect-copy p {font-size:13px}.community-kakao-link {width:100%;margin-top:4px}.community-notice summary {flex-wrap:wrap;gap:10px;padding:18px 0}.notice-summary-title {flex-basis:calc(100% - 62px)}.community-notice .notice-date {margin-left:48px}.notice-chevron {margin-left:auto}.community-notice-content {padding:0 0 20px}.community-hub .site-page-heading p {font-size:14px}}
.page-courses .course-browser {padding:28px 0 0;margin-bottom:24px}
.page-courses .course-toolbar {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.course-toolbar h1 {font-size:28px;margin:0}
.page-courses .filter-group {margin:0!important;padding:0!important;gap:8px;justify-content:flex-start}.page-courses .filter-btn {min-height:38px!important;padding:9px 14px!important;font-size:13px!important;border-radius:10px!important}
.page-courses .category-section {padding:0 0 16px!important;margin:0!important}.page-courses .category-title {font-size:12px;margin-bottom:10px}.page-courses .category-badge {padding:8px 12px!important;min-height:34px!important;font-size:12px!important;border-radius:9px!important}.page-courses .course-browser>.category-section+.category-section {padding-top:12px!important}
.page-courses .product-grid.is-empty {display:block!important}.page-courses .empty-state {width:100%;padding:40px 24px!important;margin:0!important;border-radius:16px!important;min-height:0!important}.course-empty-symbol {width:36px;height:36px;fill:none;stroke:var(--up-brand);stroke-width:1.7;margin-bottom:16px}.page-courses .empty-state-title {font-size:18px!important;margin-bottom:8px}.page-courses .empty-state-subtitle {font-size:14px!important;margin:0 0 20px}.course-empty-actions {display:flex;justify-content:center;align-items:center;gap:20px}.course-empty-actions a {color:var(--up-brand);font-size:13px;text-decoration:none}.course-empty-actions .course-reset-link {background:var(--up-brand);color:white;border-radius:10px;padding:10px 16px}
.page-schedule .schedule-header {gap:0!important;padding:28px 0!important;margin-bottom:16px!important}
.ebook-list-header {display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 24px}.ebook-list-header h1 {font-size:28px;margin:0}.ebook-list-header p {font-size:14px;color:var(--up-text);margin:10px 0 0}.ebook-author-links {display:flex;gap:12px;align-items:center;flex-shrink:0}.page-ebooks .ebook-author-links .nav-link {background:transparent!important;border:0!important;padding:6px 0!important;font-size:12px!important}.page-ebooks .ebook-result-count {color:var(--up-muted);font-size:13px;margin-bottom:16px}.page-ebooks .ebook-grid {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.page-ebooks .ebook-description {margin:10px 0 16px!important;font-size:14px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.page-ebooks .ebook-content {padding:20px!important}.page-ebooks .ebook-meta {padding-top:12px!important}.page-ebooks .ebook-title {margin-bottom:8px!important}
@media(max-width:900px){.page-ebooks .ebook-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.ebook-list-header {align-items:flex-start;flex-direction:column;gap:14px}}
@media(max-width:600px){.page-courses .course-browser {padding-top:24px}.page-courses .course-toolbar {align-items:flex-start;flex-direction:column;gap:16px;margin-bottom:18px}.course-toolbar h1,.ebook-list-header h1 {font-size:25px}.page-courses .filter-btn {padding:9px 12px!important;font-size:12px!important}.page-courses .empty-state {padding:32px 16px!important}.course-empty-actions {gap:14px}.page-ebooks .ebook-grid {grid-template-columns:1fr;gap:20px}.page-ebooks .ebook-content {padding:16px!important}}
.page-courses .product-card.fade-in {opacity:1!important;transform:none!important}
.page-ebooks .ebook-title,.page-ebooks .ebook-description {min-height:0!important}.page-ebooks .ebook-grid {margin-top:0!important}
.course-category-toggle {display:none}

/* Compact, readable course controls and status pills. */
.course-status-filter {display:flex;gap:6px;margin:0 0 16px;flex-wrap:wrap}
.course-status-filter a {padding:6px 12px;border-radius:8px;color:#4e5968;background:#f5f6f8;font-size:13px;font-weight:600;text-decoration:none}
.course-status-filter a.active {background:#fff0f4;color:#b51d48;box-shadow:inset 0 0 0 1px #f4b7c8}
.upskill-page .countdown-badge,.upskill-page .open-notice-countdown-badge {display:inline-flex!important;align-items:center;justify-content:flex-start!important;flex-wrap:wrap;gap:6px!important;width:fit-content!important;max-width:100%;padding:6px 10px!important;min-height:28px;color:#b51d48!important;background:#fff0f4!important;vertical-align:middle}
.upskill-page :is(.countdown-badge,.open-notice-countdown-badge) :is(span,i) {color:inherit!important;background:transparent!important;text-shadow:none!important;line-height:1.5!important}
.upskill-page .countdown-badge .countdown-text {color:#a51a40!important;font-size:12px!important;font-variant-numeric:tabular-nums}
.upskill-page .countdown-badge.is-closed {background:#f1f3f5!important;color:#596473!important}
.upskill-page .countdown-badge.is-closed .countdown-text {color:inherit!important}
.page-courses .product-content {padding:16px!important}.page-courses .product-content>.mb-1 {margin-bottom:10px!important}
@media(max-width:600px){
 .page-courses .course-toolbar {gap:10px;margin-bottom:12px}.page-courses .filter-group {gap:5px!important;width:100%}.page-courses .filter-btn {flex:1;min-height:32px!important;padding:5px 7px!important;font-size:11px!important;gap:4px!important}.page-courses .filter-btn i {display:none}
 .page-courses .category-badge {min-height:28px!important;padding:4px 8px!important;font-size:11px!important;border-radius:7px!important}.page-courses .category-section .d-flex {gap:5px!important}.page-courses .category-title {margin-bottom:7px}.course-status-filter {margin-bottom:12px}.course-status-filter a {font-size:12px;padding:5px 10px}
}
/* A vertical topic carousel, in the existing dark rose palette. */

/* One shared rail and heading rhythm for home content sections. */
.page-home>section.home-content-section {width:100%;max-width:1200px;margin-inline:auto!important;padding:28px 24px!important;box-sizing:border-box}
.page-home .home-content-section>.content-container,.page-home .home-content-section>div {max-width:100%!important;margin-inline:0!important;padding-inline:0!important}
.page-home .home-content-section :is(.review-section,.open-notice-section,.premium-lecture-section,.popular-lecture-section,.best-class-section) {padding:0!important}
.page-home .home-content-section .product-scroll-container {padding-inline:0!important}
.page-home .home-content-section .mt-4 {margin-top:0!important}
.page-home :is(.home-heading,.always-open-header,.review-header,.open-notice-header,.premium-lecture-header,.popular-lecture-header,.best-class-header) {padding:0!important;margin:0 0 20px!important;background:none!important;border:0!important;text-align:left}
.page-home :is(.home-section-title,.always-open-header h5,.review-header .review-title,.youtube-title,.teacher-title,.open-notice-header h4,.premium-lecture-header h4,.popular-lecture-header h4,.best-class-header h4) {font-family:var(--up-font-headline)!important;font-size:22px!important;font-weight:400!important;line-height:1.45!important;letter-spacing:-.025em!important;margin:0!important;color:var(--up-ink)!important}
.page-home :is(.always-open-header p,.review-subtitle,.youtube-subtitle,.teacher-subtitle,.open-notice-header p,.premium-lecture-header p,.popular-lecture-header p,.best-class-header p) {font-size:14px!important;line-height:1.6!important;color:var(--up-muted)!important;margin:8px 0 0!important}
.page-home :is(.youtube-section,.teacher-section)>.w-100>.row:first-child {padding:0!important;margin:0 0 20px!important}
.page-home :is(.youtube-section,.teacher-section)>.w-100>.row:first-child>div {padding:0!important;margin:0!important}
.page-home .home-content-section :is(.open-notice-section,.premium-lecture-section,.popular-lecture-section,.best-class-section) {margin-bottom:40px}
@media(max-width:600px){.page-home>section.home-content-section {padding:22px 16px!important}.page-home :is(.home-section-title,.always-open-header h5,.review-header .review-title,.youtube-title,.teacher-title,.open-notice-header h4,.premium-lecture-header h4,.popular-lecture-header h4,.best-class-header h4) {font-size:20px!important}.page-home :is(.always-open-header p,.review-subtitle,.youtube-subtitle,.teacher-subtitle,.open-notice-header p,.premium-lecture-header p,.popular-lecture-header p,.best-class-header p) {font-size:13px!important}}
