:root{--admin-primary:#1677ff;--admin-success:#52c41a;--admin-warning:#faad14;--admin-danger:#ff4d4f;--admin-bg:#f5f7fb;--admin-surface:#fff;--admin-radius-md:8px;--admin-radius-lg:12px;--admin-shadow:0 2px 8px rgba(0,0,0,.06);--admin-space-page:24px;--admin-space-block:16px;--admin-space-gap:12px}body{background:var(--admin-bg)}.admin-page{display:flex;flex-direction:column;gap:var(--admin-space-block);padding:var(--admin-space-page)}.admin-orders-page{position:relative;padding-top:0;min-height:calc(100vh - 88px)}.admin-orders-sticky-region{position:-webkit-sticky;position:sticky;top:64px;z-index:30;display:flex;flex-direction:column;gap:var(--admin-space-block);background:var(--admin-bg)}.admin-orders-filter-card{margin-bottom:0}.admin-orders-table-region{position:relative;z-index:1;scroll-margin-top:calc(64px + 24px)}.admin-panel{background:var(--admin-surface);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow);border:0}.admin-filter-card .ant-card-body,.admin-table-card .ant-card-body{padding:16px}.admin-table-card .ant-table-wrapper{margin-top:4px}.admin-table-card .ant-table-thead>tr>th{background:#f8fafc;font-weight:600}.admin-empty{text-align:center;color:rgba(0,0,0,.45);padding:48px 0}.admin-page-title{margin:0;font-size:24px;font-weight:600;line-height:1.3;color:rgba(0,0,0,.88)}.admin-page-subtitle{margin:4px 0 0;font-size:14px;color:rgba(0,0,0,.45)}.coupon-management-page{height:100%;min-height:0;padding:0;gap:12px;overflow:hidden}.coupon-management-page-desktop{display:flex;flex-direction:column}.coupon-management-page .admin-panel{border-radius:10px}.coupon-top-region{display:flex;flex-direction:column;gap:10px;flex:0 0 auto}.coupon-management-page .coupon-top-region>.admin-panel{padding:12px 14px!important}.coupon-management-page .coupon-top-region .admin-page-title{font-size:22px;line-height:1.25}.coupon-management-page .coupon-top-region .admin-page-subtitle{margin-top:2px}.coupon-stats-region .ant-row{row-gap:10px!important}.coupon-stats-region .ant-col .admin-panel{height:100%}.coupon-stats-region .ant-card-body{padding:12px 14px!important}.coupon-stats-region .ant-statistic-content{font-size:24px}.coupon-filter-card .ant-card-body{padding:12px 14px!important}.coupon-filter-card .ant-input-search,.coupon-filter-card .ant-select{min-width:0}.coupon-filter-fields{width:100%;display:grid;grid-template-columns:minmax(240px,1.45fr) repeat(2,minmax(140px,1fr));grid-gap:12px;gap:12px;align-items:end}.coupon-management-table-card{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.coupon-table-card-header{flex:0 0 auto;padding:14px 16px 8px;border-bottom:1px solid #edf1f7}.coupon-table-card-title{margin:0;color:#17233c;font-size:16px;font-weight:700}.coupon-table-card-subtitle{margin:4px 0 0;color:#7c8798;font-size:12px}.coupon-table-scroll-region{flex:1 1 auto;min-height:0;overflow:hidden;padding:8px 12px 0}.coupon-table-scroll-region .ant-spin-container,.coupon-table-scroll-region .ant-spin-nested-loading,.coupon-table-scroll-region .ant-table,.coupon-table-scroll-region .ant-table-container,.coupon-table-scroll-region .ant-table-wrapper{height:100%}.coupon-table-scroll-region .ant-table-body{padding-bottom:24px;box-sizing:border-box}.coupon-table-footer{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 14px;border-top:1px solid #edf1f7}.coupon-table-footer-meta{color:#667085;font-size:13px;flex:0 0 auto}.coupon-table-footer-pagination{min-width:0;flex:1 1 auto;display:flex;justify-content:flex-end}.coupon-table-footer-pagination .ant-pagination{margin:0}.admin-topbar{height:68px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:hsla(0,0%,100%,.96);border-bottom:1px solid #edf1f7;box-shadow:0 4px 18px rgba(15,23,42,.05);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-topbar-left,.admin-topbar-right{display:flex;align-items:center;gap:20px;min-width:0}.admin-notification-button,.admin-topbar-menu-trigger,.admin-topbar-user{border:0;background:transparent;color:#172033;cursor:pointer}.admin-topbar-menu-trigger{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font-size:19px;transition:background .2s,color .2s}.admin-notification-button:hover,.admin-topbar-menu-trigger:hover,.admin-topbar-user:hover{background:#f2f6ff;color:#1677ff}.admin-topbar-breadcrumb{display:flex;align-items:center;gap:12px;color:#6c768a;font-size:14px;white-space:nowrap}.admin-topbar-breadcrumb .current{color:#16213a;font-weight:600}.admin-topbar-breadcrumb-separator{color:#a8b0bf}.admin-topbar-search{width:min(380px,28vw);min-width:260px}.admin-topbar-search .ant-input-affix-wrapper,.admin-topbar-search.ant-input-affix-wrapper{border-radius:14px}.admin-notification-button{width:38px;height:38px;justify-content:center;border-radius:10px;font-size:18px}.admin-notification-button,.admin-topbar-user{display:inline-flex;align-items:center;transition:background .2s,color .2s}.admin-topbar-user{height:42px;gap:10px;padding:4px 8px;border-radius:12px;font-weight:600}.admin-topbar-user .ant-avatar{background:#dceafe;color:#1f4fd7}.course-list-page{margin:-24px;padding:24px;display:flex;flex-direction:column;gap:12px;background:#f6f8fc;overflow:hidden}.course-list-page,.course-list-page.coupon-management-page{height:calc(100vh - 68px);min-height:calc(100vh - 68px)}.course-list-viewport-page,.course-list-viewport-page.coupon-management-page{height:calc(100vh - 116px);min-height:calc(100vh - 116px)}.course-config-alert,.course-filter-panel,.course-list-hero,.course-selection-strip,.course-stat-card,.course-table-card{border:1px solid #edf1f7;background:hsla(0,0%,100%,.96);box-shadow:0 10px 30px rgba(15,23,42,.06)}.course-config-alert{display:flex;gap:12px;padding:16px;border-color:#fde68a;border-radius:12px;color:#92400e;background:#fffbeb}.course-config-alert svg{margin-top:2px;color:#f59e0b;font-size:20px}.course-config-alert h3,.course-config-alert p{margin:0}.course-config-alert h3{margin-bottom:6px;font-size:14px;font-weight:700}.course-list-viewport-page .course-list-hero{min-height:106px;min-height:84px;padding:16px 24px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:20px}.course-list-hero h1{margin:0;color:#0f1f3d;font-size:24px;line-height:1.25;font-weight:750;letter-spacing:0}.course-list-viewport-page .course-list-hero p{margin:6px 0 0;color:#7a8496;font-size:14px}.course-list-hero-actions .ant-btn{height:42px;padding:0 22px;border-radius:8px;font-weight:600}.course-filter-actions .ant-btn-primary,.course-list-hero-actions .ant-btn-primary{background:linear-gradient(135deg,#1f78ff,#0f5fe8);box-shadow:0 8px 18px rgba(22,119,255,.22)}.course-management-page .course-list-hero{min-height:96px}.course-management-page .course-list-hero-actions{flex-wrap:wrap;justify-content:flex-end}.course-list-viewport-page .course-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.course-stat-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.course-list-viewport-page .course-stat-card{min-height:84px;padding:16px 18px;border-radius:12px;display:flex;align-items:center;gap:14px}.course-list-viewport-page .course-stat-icon{width:52px;height:52px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:20px;font-size:25px}.course-stat-icon-blue{color:#1f78ff;background:#eaf2ff}.course-stat-icon-green{color:#12a66a;background:#e9f8f0}.course-stat-icon-orange{color:#f59e0b;background:#fff4df}.course-stat-icon-purple{color:#7c3aed;background:#f2eafe}.course-stat-title{color:#6e788c;font-size:14px;line-height:1.2}.course-list-viewport-page .course-stat-value{margin-top:6px;font-size:22px;line-height:1;font-weight:750}.course-stat-value-blue{color:#0f1f3d}.course-stat-value-green{color:#16a05d}.course-stat-value-orange{color:#f59e0b}.course-stat-value-purple{color:#7c3aed}.course-stat-note{margin-top:8px;color:#7f899a;font-size:13px}.course-list-viewport-page .course-filter-panel{min-height:72px;padding:10px 20px;border-radius:12px;display:grid;grid-template-columns:minmax(240px,1.45fr) repeat(4,minmax(130px,1fr)) auto;grid-gap:12px;gap:12px;align-items:end}.course-list-viewport-page.coupon-management-page .course-list-hero{min-height:80px;padding:14px 20px}.course-list-viewport-page.coupon-management-page .course-list-hero-actions .ant-btn{height:38px;padding:0 18px}.course-list-viewport-page.coupon-management-page .course-stat-grid{gap:10px}.course-list-viewport-page.coupon-management-page .course-stat-card{min-height:68px;padding:12px 14px;gap:10px}.course-list-viewport-page.coupon-management-page .course-stat-icon{width:42px;height:42px;border-radius:16px;font-size:20px}.course-list-viewport-page.coupon-management-page .course-stat-value{margin-top:4px;font-size:19px}.course-list-viewport-page.coupon-management-page .course-stat-note{margin-top:4px;font-size:12px}.course-list-viewport-page.coupon-management-page .course-filter-panel{min-height:0;padding:8px 16px;display:flex;align-items:center}.course-list-viewport-page.coupon-management-page .course-filter-actions .ant-btn,.course-list-viewport-page.coupon-management-page .course-filter-field .ant-select-selector,.course-list-viewport-page.coupon-management-page .course-filter-search .ant-input-affix-wrapper,.course-list-viewport-page.coupon-management-page .course-filter-search .ant-input-search-button{height:38px!important}.course-list-viewport-page.coupon-management-page .course-table-card-viewport{padding:8px 14px;gap:4px}.course-list-viewport-page.coupon-management-page .course-table-card-header{min-height:0;padding:12px 20px 0}.course-list-viewport-page.coupon-management-page .course-table-card-subtitle{margin-top:4px}.course-filter-search .ant-input-search{width:100%}.course-list-viewport-page .course-filter-actions .ant-btn,.course-list-viewport-page .course-filter-field .ant-select-selector,.course-list-viewport-page .course-filter-search .ant-input-affix-wrapper,.course-list-viewport-page .course-filter-search .ant-input-search-button{height:42px!important;border-radius:8px!important}.course-list-viewport-page .course-filter-field{display:flex;flex-direction:column;gap:6px}.course-filter-field>span{color:#1f2937;font-size:13px;font-weight:650}.course-filter-field .ant-select{width:100%}.course-list-viewport-page .course-filter-actions{display:flex;align-items:center;gap:10px}.course-filter-actions .ant-btn{padding:0 16px;font-weight:600}.course-filter-panel-compact{min-height:76px;grid-template-columns:minmax(0,1fr) auto;align-items:center}.course-filter-panel-text{color:#667085;font-size:13px;line-height:1.7}.course-filter-panel-text strong{color:#17233c}.course-selection-strip{padding:12px 16px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;color:#475569;font-size:14px}.course-table-card{border-radius:12px;overflow:hidden}.course-table-card-viewport{flex:1 1 auto;min-height:0;padding:10px 16px 8px;display:flex;flex-direction:column;gap:6px}.course-table-card-header{min-height:56px;padding:18px 24px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.course-table-card-title{margin:0;color:#17233c;font-size:16px;font-weight:700}.course-table-card-subtitle{margin:6px 0 0;color:#7c8798;font-size:13px}.course-table-card .ant-tabs{padding:0 24px 18px}.course-table .ant-table{color:#22314d}.course-table .ant-table-thead>tr>th{height:48px;background:#fbfcff;color:#1b2740;font-size:13px;font-weight:700;border-bottom:1px solid #edf1f7}.course-table .ant-table-tbody>tr>td{height:86px;border-bottom:1px solid #edf1f7}.course-table .ant-table-tbody>tr:hover>td{background:#f8fbff}.course-table-scroller{flex:1 1 auto;min-height:0;overflow:hidden}.course-table-scroller .ant-spin-container,.course-table-scroller .ant-spin-nested-loading,.course-table-scroller .ant-table,.course-table-scroller .ant-table-container,.course-table-scroller .ant-table-wrapper{height:100%}.course-table-scroller .ant-table-body{padding-bottom:24px;box-sizing:border-box}.course-table-footer{flex:0 0 auto;padding:16px 0 4px;border-top:1px solid #edf1f7;display:flex;align-items:center;justify-content:space-between;gap:16px}.course-table-footer-meta{color:#667085;flex:0 0 auto}.course-table-footer-pagination{min-width:0;flex:1 1 auto;display:flex;justify-content:flex-end}.course-table-footer-pagination .ant-pagination{margin:0;display:flex;align-items:center}.recommendations-viewport-page .course-list-hero{min-height:80px;padding:14px 20px}.recommendations-viewport-page .course-list-hero-actions .ant-btn{height:38px;padding:0 18px}.recommendations-viewport-page .course-stat-grid{gap:10px}.recommendations-viewport-page .course-stat-card{min-height:68px;padding:12px 14px;gap:10px}.recommendations-viewport-page .course-stat-icon{width:42px;height:42px;border-radius:16px;font-size:20px}.recommendations-viewport-page .course-stat-value{margin-top:4px;font-size:19px}.recommendations-viewport-page .course-stat-note{margin-top:4px;font-size:12px}.recommendations-viewport-page .course-filter-panel-compact{min-height:0;padding:8px 16px}.recommendations-viewport-page .course-filter-panel-text{font-size:12px;line-height:1.55}.recommendations-viewport-page .course-table-card-viewport{padding:8px 14px;gap:4px}.recommendations-viewport-page .course-table-card-header{min-height:0;padding:12px 20px 0}.recommendations-viewport-page .course-table-card-subtitle{margin-top:4px}.recommendations-viewport-page .course-table-card .ant-tabs{flex:1 1 auto;min-height:0;padding:0 20px;display:flex;flex-direction:column}.recommendations-viewport-page .course-table-card .ant-tabs-content,.recommendations-viewport-page .course-table-card .ant-tabs-content-holder,.recommendations-viewport-page .course-table-card .ant-tabs-tabpane{min-height:0;height:100%}.recommendations-viewport-page .course-table-card .ant-tabs-tabpane{display:flex;flex-direction:column}.recommendations-viewport-page .course-table-scroller{padding-bottom:12px}.recommendations-viewport-page .course-table .ant-spin-container,.recommendations-viewport-page .course-table .ant-spin-nested-loading,.recommendations-viewport-page .course-table .ant-table-wrapper{height:100%}.recommendations-viewport-page .course-table .ant-table-body{padding-bottom:20px}.recommendations-viewport-page .course-table-footer{padding:12px 0 4px}.hot-courses-viewport-page .course-list-hero{min-height:80px;padding:14px 20px}.hot-courses-viewport-page .course-list-hero-actions .ant-btn{height:38px;padding:0 18px}.hot-courses-viewport-page .course-stat-grid{gap:10px}.hot-courses-viewport-page .course-stat-card{min-height:68px;padding:12px 14px;gap:10px}.hot-courses-viewport-page .course-stat-icon{width:42px;height:42px;border-radius:16px;font-size:20px}.hot-courses-viewport-page .course-stat-value{margin-top:4px;font-size:19px}.hot-courses-viewport-page .course-stat-note{margin-top:4px;font-size:12px}.hot-courses-viewport-page .course-filter-panel-compact{min-height:0;padding:8px 16px}.hot-courses-viewport-page .course-filter-panel-text{font-size:12px;line-height:1.55}.hot-courses-viewport-page .course-table-card-viewport{padding:8px 14px;gap:4px}.hot-courses-viewport-page .course-table-card-header{min-height:0;padding:12px 20px 0}.hot-courses-viewport-page .course-table-card-subtitle{margin-top:4px}.hot-courses-viewport-page .course-table-scroller{padding-bottom:12px}.hot-courses-viewport-page .course-table .ant-spin-container,.hot-courses-viewport-page .course-table .ant-spin-nested-loading,.hot-courses-viewport-page .course-table .ant-table-wrapper{height:100%}.hot-courses-viewport-page .course-table .ant-table-body{padding-bottom:20px}.hot-courses-viewport-page .course-table-footer{padding:12px 0 4px}.course-info-cell{display:flex;align-items:center;gap:14px;min-width:0}.course-cover-frame{width:88px;height:58px;flex:0 0 auto}.course-cover-thumb{width:88px;height:58px;display:block;object-fit:cover;border-radius:6px;border:1px solid #dce5f2;background:#eef3f8}.course-cover-placeholder{display:flex;align-items:center;justify-content:center;color:#8491a7;font-size:12px}.course-info-text{min-width:0}.course-title{max-width:190px;overflow:hidden;color:#17233c;font-size:14px;font-weight:650;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.course-meta{margin-top:7px;color:#7c8798;font-size:13px}.course-soft-tag,.course-status-tag{-webkit-margin-end:0;margin-inline-end:0;border-radius:6px;font-weight:600}.course-soft-tag-blue{color:#1f78ff;border-color:#cfe2ff;background:#edf5ff}.course-price{color:#0f1f3d;font-weight:650}.course-origin-price{margin-top:4px;color:#a5afbf;font-size:12px;text-decoration:line-through}.course-rating{color:#0f1f3d;font-weight:600;line-height:1.35}.course-rating div:first-letter{color:#0f1f3d}.course-rating span{color:#607089;font-size:12px}.course-actions .ant-btn{width:28px;height:28px;color:#34445e}.course-actions .course-action-primary{color:#1677ff}.course-actions .course-action-success{color:#16a05d}.course-actions .course-action-danger{color:#ff4d4f}.course-actions .course-action-warning{color:#faad14}@media (max-width:1280px){.course-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.course-filter-panel-compact{grid-template-columns:1fr}.course-filter-actions,.course-filter-search{grid-column:span 3}.course-table-footer{flex-direction:column;align-items:flex-start}.course-table-footer-pagination{width:100%;justify-content:flex-start}}@media (max-width:900px){.admin-topbar{padding:0 16px}.admin-topbar-search{display:none}.course-list-page{padding:16px}.coupon-management-page{height:auto;min-height:auto;overflow:visible}.coupon-management-page-mobile{display:block}.coupon-management-table-card,.coupon-table-scroll-region{min-height:auto;height:auto;overflow:visible}.coupon-filter-fields{grid-template-columns:1fr}.coupon-table-card-header,.coupon-table-footer,.coupon-table-scroll-region{padding-left:12px;padding-right:12px}.coupon-table-footer{flex-direction:column;align-items:flex-start}.coupon-table-footer-pagination{width:100%;justify-content:flex-start}.course-filter-panel,.course-list-hero{align-items:stretch;grid-template-columns:1fr}.course-list-hero{flex-direction:column}.course-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-stat-grid-three{grid-template-columns:1fr}.course-filter-actions,.course-filter-search{grid-column:auto}.hot-courses-viewport-page,.hot-courses-viewport-page .course-table-card-viewport,.hot-courses-viewport-page .course-table-scroller,.recommendations-viewport-page,.recommendations-viewport-page .course-table-card .ant-tabs,.recommendations-viewport-page .course-table-card .ant-tabs-content,.recommendations-viewport-page .course-table-card .ant-tabs-content-holder,.recommendations-viewport-page .course-table-card .ant-tabs-tabpane,.recommendations-viewport-page .course-table-card-viewport,.recommendations-viewport-page .course-table-scroller{height:auto;min-height:auto;overflow:visible}}@tailwind base;@tailwind components;@tailwind utilities;:root{--foreground-rgb:0,0,0;--background-start-rgb:214,219,220;--background-end-rgb:255,255,255}@media (prefers-color-scheme:dark){:root{--foreground-rgb:255,255,255;--background-start-rgb:0,0,0;--background-end-rgb:0,0,0}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;color:rgb(var(--foreground-rgb));background:linear-gradient(to bottom,transparent,rgb(var(--background-end-rgb))) rgb(var(--background-start-rgb))}.ant-layout{min-height:100vh}.ant-layout-sider,.ant-menu-dark{background:#001529!important}.ant-layout-header{background:#fff!important;padding:0 24px;box-shadow:0 1px 4px rgba(0,21,41,.08)}.ant-layout-content{margin:24px;padding:24px;background:#fff;border-radius:8px}.kt-courses-card .kt-stack>*+*{margin-top:48px!important}.kt-courses-card .ant-table-wrapper{margin-top:24px}.cover-uploader .ant-upload,.cover-uploader .ant-upload-select,.cover-uploader.ant-upload-wrapper .ant-upload{width:160px!important;height:90px!important}.cover-uploader .ant-upload{border-radius:6px;overflow:hidden}.cover-uploader .ant-upload img{width:100%;height:100%;object-fit:cover;display:block}.kt-scrollbar-hidden{-ms-overflow-style:none;scrollbar-width:none}.kt-scrollbar-hidden::-webkit-scrollbar{width:0;height:0;display:none}