@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-sc-chinese-simplified-400-normal-Ba7eOkfT.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-400-normal-CN8EQoOj.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/noto-sans-sc-chinese-simplified-500-normal-z_irmif2.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-500-normal-CtDGG6sn.woff) format("woff")}@font-face{font-family:Noto Sans SC;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-sc-chinese-simplified-700-normal-DoUziBww.woff2) format("woff2"),url(/assets/noto-sans-sc-chinese-simplified-700-normal-CDPtaw17.woff) format("woff")}.sidebar{position:fixed;left:0;top:0;height:100vh;width:var(--sidebar-width);background:var(--primary-color);color:#fff;display:flex;flex-direction:column;transition:width .3s ease;z-index:1000;box-shadow:var(--shadow-lg)}.sidebar.collapsed{width:80px}.channel-sidebar{width:220px;padding:0 16px 24px;background:linear-gradient(90deg,#0c3290,#1a5ef5);box-shadow:none;font-family:Noto Sans SC,Noto Sans CJK SC,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none}.channel-sidebar-brand{min-height:104px;display:flex;flex-direction:column;align-items:flex-start;gap:13px;padding:20px 12px 14px}.channel-sidebar-brand>div:first-child{display:grid}.channel-sidebar-brand>div:first-child strong{color:#fff;font-size:24px;line-height:35px}.channel-sidebar-brand>div:first-child span{color:#c9d8ff;font-size:12px;line-height:17px}.channel-sidebar-brand .workspace-switcher{width:188px}.channel-sidebar-nav{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.channel-nav-link,.channel-resource-group>div:first-child{width:188px;min-height:42px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:12px;color:#dbe5ff;font-size:14px;font-weight:500;text-decoration:none}.channel-nav-link svg,.channel-resource-group svg{color:#bfd0ff;flex:0 0 auto}.channel-nav-link.active{background:#fff;color:#0c3290;font-weight:700}.channel-nav-link.active svg{color:#1a5ef5}.channel-resource-group>div:first-child svg:last-child{margin-left:auto;color:#c9d8ff}.channel-resource-children{display:grid;gap:0;margin:7px 0 4px 22px;padding-left:20px;border-left:2px solid #4676d9}.channel-resource-children a{min-height:40px;display:flex;align-items:center;color:#c9d8ff;font-size:12px;text-decoration:none}.channel-resource-children a:hover{color:#fff}.channel-resource-children a.active{width:188px;margin-left:-42px;padding-left:42px;border-radius:12px;background:#4676d9;color:#fff;font-weight:700}.channel-admin-card{min-height:56px;display:flex;flex-direction:column;justify-content:center;padding:0 16px;border-radius:14px;background:#1749b8;color:#fff;text-decoration:none}.channel-admin-card b{font-size:13px;line-height:19px}.channel-admin-card span{color:#c9d8ff;font-size:11px;line-height:16px}.sidebar-header{min-height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px 12px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-logo{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700}.workspace-switcher{width:100%;display:grid;gap:5px}.workspace-switcher>span{color:#ffffff9e;font-size:10px;line-height:15px}.workspace-switcher>strong{min-height:38px;display:flex;align-items:center;padding:0 11px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background:#ffffff14;color:#fff;font-size:13px}.workspace-switcher label{position:relative;display:block}.workspace-switcher select{width:100%;height:40px;padding:0 34px 0 11px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.24);border-radius:9px;outline:none;background:#ffffff1f;color:#fff;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.workspace-switcher select:focus-visible{box-shadow:0 0 0 3px #ffffff47}.workspace-switcher select option{color:#10234a;background:#fff}.workspace-switcher label svg{position:absolute;top:50%;right:11px;transform:translateY(-50%);color:#fffc;pointer-events:none}.workspace-switcher--channel>span{color:#bfd0ff}.workspace-switcher--channel select{border-color:#ffffff4d;background:#1749b8}.logo-svg{width:32px;height:32px;flex-shrink:0}.logo-icon-only{display:flex;align-items:center;justify-content:center;margin:0 auto}.logo-icon-only .logo-svg{width:36px;height:36px}.logo-text{background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-nav{flex:1;padding:20px 12px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:8px;border-radius:10px;color:#fffc;text-decoration:none;transition:all .2s;position:relative}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active{background:#ffffff26;color:#fff;font-weight:600}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:60%;background:#fff;border-radius:0 4px 4px 0}.sidebar.collapsed .nav-item{justify-content:center;padding:12px}.nav-icon{flex-shrink:0}.nav-label{font-size:14px;white-space:nowrap}.nav-badge{margin-left:auto;background:#ef4444;color:#fff;font-size:11px;font-weight:600;min-width:20px;height:20px;line-height:20px;text-align:center;border-radius:10px;padding:0 6px;flex-shrink:0}.sidebar.collapsed .nav-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;line-height:16px;font-size:10px;padding:0 4px;margin-left:0}.sidebar.collapsed .nav-label{display:none}.nav-group{margin-bottom:4px}.nav-group-title{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;margin-bottom:2px;border:none;border-radius:10px;background:transparent;color:#fffc;font-size:14px;cursor:pointer;transition:all .2s;text-align:left;position:relative}.nav-group-title:hover{background:#ffffff1a;color:#fff}.nav-group-title.has-active{color:#fff;font-weight:500}.nav-chevron{margin-left:auto;flex-shrink:0;opacity:.8}.nav-group-children{padding-left:12px;margin-left:20px;border-left:1px solid rgba(255,255,255,.15);margin-bottom:8px}.nav-item.nav-sub{padding:8px 12px;margin-bottom:2px;gap:8px}.nav-item.nav-sub .nav-sub-label{font-size:13px;color:#ffffffbf}.nav-item.nav-sub:hover .nav-sub-label,.nav-item.nav-sub.active .nav-sub-label{color:#fff}.sidebar.collapsed .nav-group-title{justify-content:center;padding:12px}.sidebar.collapsed .sidebar-header{min-height:var(--header-height);padding:0 12px}.sidebar.collapsed .nav-chevron{display:none}.sidebar.collapsed .nav-group-title.collapsed-active{background:#fff3;color:#fff;font-weight:600}.sidebar.collapsed .nav-group-title.collapsed-active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:50%;background:#fff;border-radius:0 4px 4px 0}.sidebar-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1);text-align:center}.sidebar-version{font-size:12px;color:#fff9}.sidebar.collapsed .sidebar-footer{display:none}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:#ffffff0d}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}}.header{height:var(--header-height);background:var(--surface);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 32px;box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100}.header-left{flex:1;display:flex;align-items:center}.sidebar-toggle-btn{background:none;border:1px solid var(--border-color);color:var(--text-secondary);width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.sidebar-toggle-btn:hover{background:var(--background);color:var(--primary-color);border-color:var(--primary-color)}.header-right{display:flex;align-items:center;gap:20px}.header-icon-btn{position:relative;background:none;border:none;padding:8px;cursor:pointer;color:var(--text-secondary);border-radius:8px;transition:all .2s;display:flex;align-items:center;justify-content:center}.header-icon-btn:hover{background:var(--background);color:var(--primary-color)}.notification-badge{position:absolute;top:4px;right:4px;background:#ef4444;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.header-user{display:flex;align-items:center;gap:12px;padding:8px 16px;border-radius:12px;cursor:pointer;transition:all .2s;position:relative}.header-user:hover{background:var(--background)}.header-user-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--surface);border:1px solid var(--border-color);border-radius:10px;box-shadow:var(--shadow-lg);min-width:140px;z-index:200;padding:6px}.header-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;border:none;background:none;border-radius:6px;font-size:14px;color:var(--text-primary);cursor:pointer;transition:background .15s}.header-menu-item:hover{background:var(--background);color:#dc2626}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-light));display:flex;align-items:center;justify-content:center;color:#fff}.user-info{display:flex;flex-direction:column;align-items:flex-start}.user-name{font-size:14px;font-weight:600;color:var(--text-primary)}.user-role{font-size:12px;color:var(--text-secondary)}@media (max-width: 768px){.header{padding:0 16px}.user-info{display:none}}.layout{display:flex;min-height:100vh;background-color:var(--background);overflow:hidden}.layout-main{flex:1;min-width:0;margin-left:var(--sidebar-width);transition:margin-left .3s ease;display:flex;flex-direction:column;max-width:calc(100vw - var(--sidebar-width));overflow:hidden}.layout-main.sidebar-collapsed{margin-left:80px;max-width:calc(100vw - 80px)}.layout-content{flex:1;min-width:0;min-height:0;padding:24px;overflow-y:auto;overflow-x:hidden}.layout-main.channel-mode{height:100vh;height:100dvh;background:#eef3fb}.layout-main.channel-mode .layout-content{padding:24px;overscroll-behavior:contain;scrollbar-gutter:stable}@media (max-width: 768px){.layout-main,.layout-main.sidebar-collapsed{margin-left:0}}.dashboard{max-width:1400px;margin:0 auto;padding-bottom:24px}@keyframes dashboardLoadingSpin{to{transform:rotate(360deg)}}.dashboard-loading-spin{flex-shrink:0;animation:dashboardLoadingSpin .85s linear infinite}.page-header{margin-bottom:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.page-title{font-size:32px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.page-description{font-size:16px;color:var(--text-secondary)}.range-tabs{display:inline-flex;padding:4px;background:#0832650a;border-radius:999px;border:1px solid rgba(8,50,101,.06);gap:4px}.range-tab{border:none;background:transparent;padding:6px 14px;border-radius:999px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .18s ease}.range-tab:hover{background:#0832650f;color:var(--text-primary)}.range-tab.active{background:linear-gradient(135deg,var(--primary-color),var(--primary-light));color:#fff;box-shadow:0 8px 18px #08326559}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:32px}.summary-card{background:var(--surface);border-radius:16px;padding:24px;box-shadow:var(--shadow-md);transition:all .3s;border:1px solid var(--border-color);position:relative;overflow:hidden}.summary-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top left,rgba(8,50,101,.06),transparent 55%);opacity:0;transition:opacity .3s}.summary-card:hover:before{opacity:1}.summary-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.summary-icon{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#083265,#2563eb);box-shadow:0 8px 16px #0f172a40}.summary-role-label{font-size:14px;color:var(--text-secondary);font-weight:500}.summary-main{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px}.summary-main-number{display:flex;flex-direction:column}.summary-main-number.secondary{align-items:flex-end}.summary-main-value{font-size:32px;font-weight:700;color:var(--text-primary)}.summary-main-value.members{font-size:26px;color:#1d4ed8}.summary-main-label{font-size:14px;color:var(--text-secondary)}.summary-footer{display:flex;justify-content:flex-start;align-items:center}.summary-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#2563eb0f;color:#1d4ed8;font-size:12px;font-weight:500}.dashboard-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.dashboard-rows{display:grid;grid-template-columns:2fr 1.2fr;gap:24px}.content-card{background:var(--surface);border-radius:16px;padding:24px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.content-card.wide{grid-column:1 / -1}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.card-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:20px}.card-subtitle{font-size:13px;color:var(--text-secondary)}.card-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:linear-gradient(135deg,#083265,#2563eb);color:#fff;font-size:12px;font-weight:500}.card-badge.gradient,.card-badge.soft{background:linear-gradient(135deg,#083265,#2563eb);color:#fff}.dual-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.mini-chart-card{background:radial-gradient(circle at top left,rgba(15,23,42,.04),transparent 55%);border-radius:14px;padding:16px 18px;border:1px dashed rgba(148,163,184,.7)}.mini-chart-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.mini-chart-title{font-size:14px;font-weight:600;color:var(--text-primary)}.mini-chart-tag{font-size:11px;padding:3px 8px;border-radius:999px;border:1px solid rgba(148,163,184,.6);color:var(--text-secondary)}.mini-chart-tag.members{border-color:#2563eb99;color:#1d4ed8;background:#2563eb14}.role-bars{display:flex;flex-direction:column;gap:10px}.role-bar-row{display:grid;grid-template-columns:70px 1fr auto;gap:8px;align-items:center}.role-bar-label{font-size:13px;color:var(--text-secondary)}.role-bar-track{height:8px;border-radius:999px;background:#94a3b840;overflow:hidden}.role-bar-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#0ea5e9,#6366f1);transition:width .4s ease-out}.role-bar-fill.member{background:linear-gradient(90deg,#f59e0b,#e11d48)}.role-bar-value{font-size:13px;color:var(--text-primary)}.role-bar-unit{font-size:11px;color:var(--text-secondary);margin-left:2px}.role-line-chart{padding-top:4px}.role-line-chart-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.role-line-point{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1}.role-line-stick{width:8px;height:80px;border-radius:999px;background:#94a3b84d;overflow:hidden;display:flex;align-items:flex-end}.role-line-stick-fill{width:100%;background:linear-gradient(180deg,#22c55e,#16a34a);border-radius:inherit}.role-line-value{font-size:13px;color:var(--text-primary)}.role-line-unit{font-size:11px;color:var(--text-secondary);margin-left:2px}.role-line-label{font-size:12px;color:var(--text-secondary)}.role-sparkbars{display:flex;justify-content:space-between;gap:16px}.sparkbar-column{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1}.sparkbar-bars{width:10px;height:80px;border-radius:999px;background:radial-gradient(circle at top,rgba(59,130,246,.5),transparent 60%);display:flex;align-items:flex-end;overflow:hidden}.sparkbar-bar{width:100%;background:linear-gradient(180deg,#3b82f6,#1d4ed8);border-radius:inherit}.sparkbar-value{font-size:13px;color:var(--text-primary)}.sparkbar-unit{font-size:11px;color:var(--text-secondary);margin-left:2px}.sparkbar-label{font-size:12px;color:var(--text-secondary)}.map-card{grid-column:1 / -1}.map-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1.2fr);gap:20px;align-items:stretch}.wordcloud-card{grid-column:1 / -1}.word-cloud{width:100%;height:260px}.map-visual{background:radial-gradient(circle at center,#38bdf82e,#0f172af2);border-radius:18px;padding:14px;position:relative;overflow:hidden}.map-grid{position:relative;width:100%;height:220px;border-radius:14px;background-image:linear-gradient(rgba(148,163,184,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.2) 1px,transparent 1px);background-size:18px 18px;overflow:hidden}.map-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 25%,rgba(59,130,246,.45),transparent 50%),radial-gradient(circle at 70% 70%,rgba(45,212,191,.4),transparent 52%);mix-blend-mode:screen;opacity:.85}.map-dot{position:absolute;display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;color:#e5e7eb;font-size:11px}.map-dot-inner{width:var(--dot-size);height:var(--dot-size);border-radius:999px;background:radial-gradient(circle at center,#facc15,#f97316);box-shadow:0 0 12px #fbbf24f2}.map-dot-label{text-shadow:0 1px 2px rgba(15,23,42,.9)}.map-dot-0{top:24%;left:38%}.map-dot-1{top:30%;left:60%}.map-dot-2{top:48%;left:40%}.map-dot-3{top:40%;left:54%}.map-dot-4{top:60%;left:32%}.map-dot-5{top:68%;left:70%}.map-legend{display:flex;flex-direction:column;gap:10px}.map-legend-row{display:grid;grid-template-columns:70px 1fr auto;gap:8px;align-items:center}.map-legend-name{font-size:13px;color:var(--text-secondary)}.map-legend-bar-wrap{height:6px;border-radius:999px;background:#94a3b838;overflow:hidden}.map-legend-bar{height:100%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#22c55e)}.map-legend-value{font-size:12px;color:var(--text-primary)}.word-cloud-surface{border-radius:18px;padding:16px;background:radial-gradient(circle at top left,rgba(37,99,235,.08),transparent 55%),radial-gradient(circle at bottom right,rgba(236,72,153,.06),transparent 55%),#f8fafce6;box-shadow:inset 0 0 0 1px #94a3b840;overflow:hidden}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;align-items:flex-start;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.activity-item:last-child{border-bottom:none;padding-bottom:0}.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--primary-color);margin-top:6px;flex-shrink:0}.activity-content{flex:1}.activity-text{font-size:14px;color:var(--text-primary);margin-bottom:4px}.activity-time{font-size:12px;color:var(--text-secondary)}.quick-actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.action-card{background:linear-gradient(135deg,#0832650d,#08326505);border:2px solid var(--border-color);border-radius:16px;padding:24px;cursor:pointer;transition:all .3s;position:relative;overflow:hidden}.action-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--primary-light));transform:scaleX(0);transition:transform .3s}.action-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.action-card:hover:before{transform:scaleX(1)}.action-card-icon{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,var(--primary-color),var(--primary-light));display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:16px;transition:all .3s}.action-card:hover .action-card-icon{transform:scale(1.1) rotate(5deg)}.action-card-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.action-card-desc{font-size:14px;color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.summary-grid,.dashboard-rows,.map-layout{grid-template-columns:1fr}}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:32px}.resource-card{background:var(--surface);border-radius:16px;padding:24px;box-shadow:var(--shadow-md);border:1px solid var(--border-color);position:relative;overflow:hidden;transition:all .3s}.resource-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top left,rgba(8,50,101,.06),transparent 55%);opacity:0;transition:opacity .3s}.resource-card:hover:before{opacity:1}.resource-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.resource-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.resource-icon{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 16px #0f172a40}.resource-icon.teachers{background:linear-gradient(135deg,#0ea5e9,#2563eb)}.resource-icon.courses{background:linear-gradient(135deg,#8b5cf6,#6366f1)}.resource-icon.qualifications{background:linear-gradient(135deg,#f59e0b,#ef4444)}.resource-card-label{font-size:14px;color:var(--text-secondary);font-weight:500}.resource-card-body{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.resource-total{display:flex;flex-direction:column}.resource-total-value{font-size:32px;font-weight:700;color:var(--text-primary);line-height:1.1}.resource-total-label{font-size:14px;color:var(--text-secondary);margin-top:4px}.resource-breakdown{display:flex;flex-direction:column;gap:6px;min-width:120px}.resource-breakdown-item{display:flex;align-items:center;gap:8px;font-size:13px}.resource-breakdown-dot{width:8px;height:8px;border-radius:999px;flex-shrink:0}.resource-breakdown-dot.passed{background:#22c55e}.resource-breakdown-dot.pending{background:#f59e0b}.resource-breakdown-dot.rejected{background:#ef4444}.resource-breakdown-dot.public-dot{background:#3b82f6}.resource-breakdown-dot.private-dot{background:#8b5cf6}.resource-breakdown-text{color:var(--text-secondary);flex:1}.resource-breakdown-count{color:var(--text-primary);font-weight:600;min-width:28px;text-align:right}.resource-bar-track{display:flex;height:6px;border-radius:999px;background:#94a3b82e;overflow:hidden;gap:2px}.resource-bar-fill{height:100%;border-radius:999px;transition:width .6s ease-out}.resource-bar-fill.passed{background:linear-gradient(90deg,#22c55e,#16a34a)}.resource-bar-fill.pending{background:linear-gradient(90deg,#f59e0b,#d97706)}.resource-bar-fill.rejected{background:linear-gradient(90deg,#ef4444,#dc2626)}@media (max-width: 768px){.resource-grid{grid-template-columns:1fr}}.courses-page{max-width:100%}.search-bar-top{display:flex;align-items:center;background:var(--surface);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;height:40px}.search-input-top{border:none;outline:none;padding:0 12px;font-size:14px;color:var(--text-primary);background:transparent;width:220px}.btn-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--primary-color);color:#fff;border:none;cursor:pointer;transition:background .2s}.btn-icon:hover{background:var(--primary-light)}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-primary:hover:not(:disabled){background:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-secondary:hover{background:var(--background);border-color:var(--primary-color);color:var(--primary-color)}.btn-sm{padding:6px 12px;font-size:13px}.courses-table-container{background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color);overflow-x:auto}.courses-table{width:100%;border-collapse:collapse;min-width:1100px}.courses-table thead{background:var(--background)}.courses-table th{padding:14px 12px;text-align:left;font-size:13px;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color);white-space:nowrap}.courses-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.courses-table th.sortable-th:hover{color:var(--primary-color)}.courses-table td{padding:12px;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border-color);vertical-align:top}.courses-table tbody tr:hover{background:#08326505}.loading-cell{text-align:center;padding:40px!important;color:var(--text-secondary)}.id-cell{font-family:monospace;color:var(--primary-color);font-weight:600;white-space:nowrap}.datetime-cell{white-space:nowrap;font-size:12px;color:var(--text-secondary)}.title-cell{max-width:180px;font-weight:500;word-break:break-word}.outline-cell{max-width:200px}.outline-preview{max-height:80px;overflow-y:auto;white-space:pre-line;font-size:12px;line-height:1.5;color:var(--text-secondary);padding:4px;background:var(--background);border-radius:4px}.files-cell{min-width:120px}.file-link{background:none;border:none;color:var(--primary-color);font-size:12px;cursor:pointer;padding:2px 0;text-align:left;text-decoration:underline;word-break:break-all;transition:opacity .2s}.file-link:hover{opacity:.7}.teachers-cell{min-width:140px}.teacher-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.teacher-name{font-size:13px;color:var(--text-primary)}.teacher-name-link{background:none;border:none;font-size:13px;color:var(--primary-color);cursor:pointer;padding:0;text-decoration:underline;text-align:left}.teacher-name-link:hover{opacity:.8}.adv-search-datetime-range{display:flex;align-items:center;gap:6px}.adv-search-datetime-range input{padding:6px 10px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.no-teacher{color:var(--text-secondary)}.teacher-actions{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.creator-cell{white-space:nowrap}.courses-table td.cell-created-by-openid{max-width:none;overflow:visible;vertical-align:middle;text-align:center}.created-by-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.35}.created-by-openid-text{display:block;white-space:nowrap;font-size:12px;color:var(--text-secondary);max-width:none}.created-by-name-text{display:block;white-space:nowrap;font-size:13px;font-weight:500;color:var(--text-primary)}.public-cell{white-space:nowrap}.status-tag{display:inline-block;padding:2px 7px;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.status-public{background:#dcfce7;color:#16a34a}.status-private{background:#f3f4f6;color:#6b7280}.status-audit-pending{background:#fef3c7;color:#b45309}.action-buttons{display:flex;gap:6px;flex-wrap:wrap}.action-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:none;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap}.action-btn:disabled{opacity:.5;cursor:not-allowed}.btn-xs{padding:3px 8px;font-size:11px}.edit-btn{background:#e0f2fe;color:#0369a1}.edit-btn:hover:not(:disabled){background:#bae6fd}.delete-btn{background:#fee2e2;color:#dc2626}.delete-btn:hover:not(:disabled){background:#fecaca}.user-btn{background:#f0fdf4;color:#16a34a}.user-btn:hover{background:#dcfce7}.toggle-switch{display:inline-flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:3px 10px 3px 4px;border-radius:20px;transition:background .25s;width:fit-content}.toggle-switch.on{background:#dcfce7}.toggle-switch.off{background:#f3f4f6}.toggle-knob{width:20px;height:20px;border-radius:50%;transition:background .25s;flex-shrink:0}.toggle-switch.on .toggle-knob{background:#16a34a}.toggle-switch.off .toggle-knob{background:#9ca3af}.toggle-label{font-size:12px;font-weight:500}.toggle-switch.on .toggle-label{color:#16a34a}.toggle-switch.off .toggle-label{color:#6b7280}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding:0 4px}.pagination-info{font-size:13px;color:var(--text-secondary)}.pagination-btns{display:flex;gap:4px}.page-btn{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s}.page-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.page-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.modal-content{background:var(--surface);border-radius:16px;width:100%;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 25px 60px #0003}.modal-medium{max-width:640px}.modal-large{max-width:780px}.modal-xlarge{max-width:900px}.modal-title{font-size:20px;font-weight:600;color:var(--text-primary)}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color);flex-shrink:0}.preview-modal{background:var(--surface);border-radius:16px;width:100%;max-width:960px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 25px 60px #0003}.preview-filename{max-width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.preview-body{flex:1;overflow:hidden;display:flex;align-items:stretch;justify-content:center;min-height:400px}.preview-image{max-width:100%;max-height:80vh;object-fit:contain;border-radius:0 0 16px 16px;align-self:center;margin:auto;padding:16px}.preview-iframe{width:100%;height:78vh;border:none;border-radius:0 0 16px 16px;display:block}.preview-docx-wrap{flex:1;overflow-y:auto;padding:24px 32px;background:#f9f9f9;border-radius:0 0 16px 16px;position:relative}.preview-docx{background:#fff;padding:32px 40px;min-height:400px;box-shadow:0 2px 8px #00000014;border-radius:4px}.preview-docx .docx-render{font-family:SimSun,宋体,serif;font-size:14px;line-height:1.8}.preview-text-wrap{flex:1;overflow-y:auto;padding:24px;background:#1e1e1e;border-radius:0 0 16px 16px}.preview-text{white-space:pre-wrap;word-break:break-word;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:1.7;color:#d4d4d4;margin:0}.preview-loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-secondary);font-size:14px;gap:8px}.preview-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#f9f9f9e6;color:var(--text-secondary);font-size:14px;z-index:5}.preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px;color:var(--text-secondary);text-align:center;width:100%}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.required{color:#ef4444}.underline-input{width:100%;padding:10px 0;border:none;border-bottom:2px solid #e5e7eb;background:transparent;font-size:14px;color:var(--text-primary);transition:all .2s;box-sizing:border-box}.underline-input:focus{outline:none;border-bottom-color:var(--primary-color)}.underline-input.input-error{border-bottom-color:#ef4444}.underline-input.input-success{border-bottom-color:#16a34a}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;color:var(--text-primary);background:var(--surface);transition:all .2s;box-sizing:border-box}.form-input:focus{outline:none;border-color:var(--primary-color)}.form-textarea{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;color:var(--text-primary);background:var(--surface);resize:vertical;font-family:inherit;line-height:1.6;transition:all .2s;box-sizing:border-box}.form-textarea:focus{outline:none;border-color:var(--primary-color)}.openid-input-wrap{position:relative}.openid-hint{display:block;margin-top:5px;font-size:12px;color:var(--text-secondary)}.openid-hint.error{color:#ef4444}.openid-hint.success{color:#16a34a}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px dashed var(--border-color);border-radius:8px;padding:20px;cursor:pointer;transition:all .2s;color:var(--text-secondary);font-size:14px;text-align:center}.upload-zone:hover{border-color:var(--primary-color);background:#08326508;color:var(--primary-color)}.upload-zone small{font-size:12px;opacity:.7}.upload-zone-sm{padding:12px;font-size:13px}.file-list-edit{margin-bottom:8px;display:flex;flex-direction:column;gap:6px}.file-item-edit{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--background);border-radius:6px;font-size:13px}.file-name-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.file-size-text{color:var(--text-secondary);font-size:12px;white-space:nowrap}.file-remove-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#9ca3af;cursor:pointer;padding:2px;border-radius:4px;transition:all .2s;flex-shrink:0}.file-remove-btn:hover{color:#ef4444;background:#fee2e2}.zones-area{margin-top:16px}.zones-area.zones-disabled{opacity:.4;pointer-events:none}.zones-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.file-zone{border:1px solid var(--border-color);border-radius:10px;padding:14px;background:var(--background)}.file-zone.disabled{opacity:.5;pointer-events:none}.file-zone-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.file-zone-label{font-size:13px;font-weight:600;color:var(--text-primary)}.file-zone-hint{font-size:12px;color:var(--text-secondary)}.file-zone-files{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.file-zone-item{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--surface);border-radius:5px;font-size:12px}.file-zone-thumb{width:44px;height:44px;object-fit:cover;border-radius:4px;cursor:zoom-in;flex-shrink:0;border:1px solid var(--border-color);transition:transform .15s}.file-zone-thumb:hover{transform:scale(1.05)}.file-zone-icon{flex-shrink:0;color:var(--text-secondary)}.file-zone-item-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.file-action-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6b7280;cursor:pointer;padding:2px;border-radius:4px;transition:all .15s}.file-action-btn:hover{color:var(--primary-color);background:#eff6ff}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;z-index:2000;display:flex;align-items:center;justify-content:center;padding:40px;cursor:zoom-out;animation:image-lightbox-fade .18s ease-out}@keyframes image-lightbox-fade{0%{opacity:0}to{opacity:1}}.add-zone-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;border:2px dashed var(--border-color);border-radius:8px;background:none;color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .2s}.add-zone-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.progress-container{padding:24px 0;text-align:center}.progress-msg{font-size:15px;color:var(--text-primary);margin-bottom:16px;font-weight:500}.progress-bar-wrap{width:100%;height:8px;background:var(--border-color);border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),#3b82f6);border-radius:4px;transition:width .5s ease}.progress-pct{font-size:13px;color:var(--text-secondary)}.inner-table{width:100%;border-collapse:collapse;font-size:13px}.inner-table th{padding:8px 10px;background:var(--background);text-align:left;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.inner-table td{padding:8px 10px;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.inner-table tbody tr:last-child td{border-bottom:none}.search-bar{display:flex;align-items:center;gap:8px;background:var(--background);border:1px solid var(--border-color);border-radius:8px;padding:8px 12px;margin-bottom:16px}.search-input{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:var(--text-primary)}.empty-tip{text-align:center;padding:30px;color:var(--text-secondary);font-size:14px}.adv-search-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:16px 20px;background:var(--surface);border-radius:12px;border:1px solid var(--border-color);margin-bottom:16px}.adv-search-field{display:flex;flex-direction:column;gap:4px;min-width:120px}.adv-search-field label{font-size:12px;color:var(--text-secondary);font-weight:500}.adv-search-field input,.adv-search-field select{height:34px;padding:0 10px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);background:var(--background);outline:none;transition:border-color .2s}.adv-search-field input:focus,.adv-search-field select:focus{border-color:var(--primary-color)}.adv-search-actions{display:flex;gap:8px;align-items:flex-end;padding-bottom:1px}.btn-sm{padding:6px 14px!important;font-size:13px!important;height:34px;display:inline-flex;align-items:center;gap:4px}.batch-action-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:12px;font-size:13px;color:#92400e}.btn-danger{background:#ef4444!important;color:#fff!important;border:none!important;border-radius:6px;padding:6px 14px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:background .2s}.btn-danger:hover{background:#dc2626!important}.row-selected{background:#eff6ff!important}.batch-delete-confirm{background:var(--surface);border-radius:16px;padding:28px 32px;max-width:420px;margin:auto;box-shadow:var(--shadow-xl)}.batch-delete-confirm h3{margin:0 0 12px;font-size:18px;color:var(--text-primary)}.batch-delete-confirm p{font-size:14px;color:var(--text-secondary);margin:0 0 20px}.batch-delete-actions{display:flex;justify-content:flex-end;gap:10px}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding:0 4px}.pagination-left{display:flex;align-items:center;gap:8px}.page-size-select{height:30px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);background:var(--surface);cursor:pointer;outline:none}@media (max-width: 768px){.page-header{flex-direction:column}.modal-content{max-width:100%;margin:0;border-radius:16px 16px 0 0;position:fixed;bottom:0;left:0;right:0;max-height:95vh}.modal-overlay{align-items:flex-end;padding:0}.courses-table-container{border-radius:8px}}.spin-icon{animation:spin-rotate 1s linear infinite}@keyframes spin-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.courses-page .batch-assoc-info{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;background:var(--background);border-radius:8px;border:1px solid var(--border-color)}.courses-page .batch-assoc-label{font-size:13px;color:var(--text-secondary)}.courses-page .batch-assoc-count{font-size:14px;font-weight:600;color:var(--primary-color)}.courses-page .batch-assoc-selected{margin-top:12px;padding:8px 14px;background:#eff6ff;border-radius:6px;font-size:13px;color:var(--primary-color);font-weight:500;text-align:center}.ai-progress-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:24px}.ai-progress-card{background:#fff;border-radius:12px;padding:28px 32px;min-width:360px;max-width:480px;width:100%;box-shadow:0 12px 40px #00000026}.ai-progress-title{margin:0 0 8px;font-size:18px;font-weight:600;color:#1a1a1a}.ai-progress-msg{margin:0 0 20px;font-size:14px;color:#666;line-height:1.5}.ai-progress-bar-wrap{height:10px;background:#e8ecf0;border-radius:5px;overflow:hidden}.ai-progress-bar-fill{height:100%;background:linear-gradient(90deg,#0379ff,#4da3ff);border-radius:5px;transition:width .25s ease}.ai-progress-stats{display:flex;justify-content:space-between;margin-top:12px;font-size:13px;color:#444}.ai-progress-cancel{margin-top:16px;width:100%;padding:8px;border:1px solid #ddd;border-radius:6px;background:#fff;cursor:pointer}.ai-progress-cancel:hover{background:#f5f5f5}.sb-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px}.sb-modal{width:min(920px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:12px;box-shadow:0 20px 50px #0000002e}.sb-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.sb-header h2,.sb-header h3{margin:0;font-size:16px;display:flex;align-items:center;gap:8px}.sb-close{border:none;background:transparent;cursor:pointer;color:#64748b}.sb-body{padding:16px 20px 20px}.sb-center{text-align:center;padding:48px 20px}.sb-hint{color:#64748b;font-size:13px;line-height:1.6;margin:0 0 12px}.sb-label{display:block;font-size:13px;margin-bottom:6px;color:#334155}.sb-row{display:flex;gap:8px;align-items:center}.sb-input{flex:1;height:36px;border:1px solid #cbd5e1;border-radius:8px;padding:0 10px}.sb-error{margin:12px 20px 0;padding:8px 12px;background:#fef2f2;color:#b91c1c;border-radius:8px;font-size:13px;display:flex;gap:6px;align-items:center}.sb-ok{margin-top:8px;color:#15803d;font-size:13px;display:flex;gap:6px;align-items:center}.sb-drop{border:2px dashed #94a3b8;border-radius:12px;padding:28px 20px;text-align:center;cursor:pointer;color:#475569;background:#f8fafc}.sb-drop:hover{border-color:#3b82f6;background:#eff6ff}.sb-drop-title{margin-top:8px;font-weight:600;color:#0f172a}.sb-drop-desc{margin-top:8px;font-size:12px;line-height:1.7;color:#64748b}.sb-file-list{margin:10px 0 0;padding-left:18px;max-height:160px;overflow:auto;font-size:13px}.sb-muted{color:#94a3b8;font-size:12px}.sb-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.sb-progress{margin-top:12px;font-size:13px;color:#475569}.sb-bar{margin-top:6px;height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden}.sb-bar>div{height:100%;background:#3b82f6;transition:width .2s ease}.sb-section{margin-top:16px}.sb-section h3{margin:0 0 8px;font-size:14px}.sb-table{width:100%;border-collapse:collapse;font-size:13px}.sb-table th,.sb-table td{border:1px solid #e2e8f0;padding:6px 8px;text-align:left}.sb-table th{background:#f8fafc}.sb-table select{max-width:260px}.sb-summary{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.sb-stat{padding:10px 14px;border-radius:8px;background:#f1f5f9;font-weight:600;font-size:13px}.sb-stat.ok{background:#dcfce7;color:#166534}.sb-stat.fail{background:#fee2e2;color:#991b1b}.sb-detail-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;padding:24px}.sb-detail{width:min(560px,90%);max-height:70%;overflow:auto;background:#fff;border-radius:10px;padding-bottom:12px}/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.hl-page{max-width:100%}.hl-header-actions{display:flex;align-items:center;gap:12px}.hl-search-bar{display:flex;align-items:center;background:var(--surface);border:1px solid var(--border-color);border-radius:8px;padding:0 12px;height:42px;transition:border-color .2s}.hl-search-bar:focus-within{border-color:var(--primary-color)}.hl-search-icon{color:var(--text-secondary);flex-shrink:0}.hl-search-bar input{border:none;outline:none;background:none;font-size:14px;color:var(--text-primary);padding:0 10px;width:200px}.hl-search-btn{background:var(--primary-color);color:#fff;border:none;border-radius:6px;padding:6px 14px;font-size:13px;cursor:pointer;white-space:nowrap;transition:background .2s}.hl-search-btn:hover{background:var(--primary-light)}.hl-table-container{background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.hl-table{width:100%;border-collapse:collapse}.hl-table thead{background:var(--background)}.hl-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color)}.hl-table td{padding:12px 16px;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--border-color);vertical-align:middle}.hl-table tbody tr{transition:background .15s}.hl-table tbody tr:hover{background:var(--background)}.hl-empty{text-align:center;padding:40px!important;color:var(--text-secondary)}.datetime-cell{white-space:nowrap;font-size:13px;color:var(--text-secondary)}.hl-title-cell{display:flex;align-items:center;gap:10px}.hl-article-thumb{width:40px;height:40px;border-radius:6px;object-fit:cover;flex-shrink:0}.hl-content-cell{color:var(--text-secondary);max-width:300px}.hl-switch{position:relative;display:inline-block;width:40px;height:22px}.hl-switch input{opacity:0;width:0;height:0}.hl-switch-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:#d1d5db;border-radius:22px;transition:.25s}.hl-switch-slider:before{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:.25s}.hl-switch input:checked+.hl-switch-slider{background:var(--primary-color)}.hl-switch input:checked+.hl-switch-slider:before{transform:translate(18px)}.hl-action-icons{display:flex;align-items:center;gap:6px}.hl-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .2s;background:transparent}.hl-icon-edit{color:#0369a1}.hl-icon-edit:hover{background:#e0f2fe}.hl-icon-delete{color:#dc2626}.hl-icon-delete:hover{background:#fee2e2}.hl-icon-confirm{color:#16a34a}.hl-icon-confirm:hover{background:#dcfce7}.hl-icon-cancel{color:#6b7280}.hl-icon-cancel:hover{background:#f3f4f6}.hl-delete-wrap{position:relative}.hl-popconfirm{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border-color);border-radius:10px;padding:12px 14px;box-shadow:var(--shadow-lg);white-space:nowrap;z-index:10;font-size:13px;color:var(--text-primary)}.hl-popconfirm:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--surface)}.hl-popconfirm-actions{display:flex;gap:8px;margin-top:8px;justify-content:center}.hl-pop-btn{padding:4px 12px;border-radius:4px;border:none;font-size:12px;cursor:pointer;transition:all .15s}.hl-pop-yes{background:#dc2626;color:#fff}.hl-pop-yes:hover{background:#b91c1c}.hl-pop-no{background:#f3f4f6;color:var(--text-primary)}.hl-pop-no:hover{background:#e5e7eb}.hl-modal-content{background:var(--surface);border-radius:16px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.hl-modal-wide{max-width:850px}.hl-modal-body{padding:0 24px 24px}.modal-header-actions{display:flex;align-items:center;gap:12px}.btn-sm{padding:8px 16px;font-size:13px}.hl-badge-new{display:inline-block;background:var(--primary-color);color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.hl-row-editing{background:#f0f9ff}.hl-inline-input{width:100%;padding:6px 10px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);background:#fff;transition:border-color .2s}.hl-inline-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #0832651a}.hl-modal-richtext{max-width:900px;max-height:92vh;overflow-y:auto}.hl-article-form{padding:24px}.hl-bordered-input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:var(--text-primary);background:transparent;transition:border-color .2s}.hl-bordered-input:focus{outline:none;border-color:var(--primary-color)}.hl-quill-wrap{border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:border-color .2s}.hl-quill-wrap:focus-within{border-color:var(--primary-color)}.hl-quill-wrap .quill{display:flex;flex-direction:column}.hl-quill-wrap .ql-toolbar.ql-snow{border:none;border-bottom:1px solid #e5e7eb;background:#fafbfc;padding:8px 12px}.hl-quill-wrap .ql-container.ql-snow{border:none;font-size:14px;font-family:inherit}.hl-quill-wrap .ql-editor{min-height:300px;max-height:50vh;overflow-y:auto;line-height:1.8;padding:16px;color:var(--text-primary)}.hl-quill-wrap .ql-editor.ql-blank:before{color:var(--text-secondary);font-style:normal}.hl-quill-wrap .ql-editor img{max-width:100%;height:auto;border-radius:6px;margin:8px 0}.hl-quill-wrap .ql-editor h1{font-size:24px;font-weight:700;margin:16px 0 8px}.hl-quill-wrap .ql-editor h2{font-size:20px;font-weight:600;margin:14px 0 6px}.hl-quill-wrap .ql-editor h3{font-size:17px;font-weight:600;margin:12px 0 4px}.hl-quill-wrap .ql-editor blockquote{border-left:4px solid var(--primary-color);padding-left:16px;color:var(--text-secondary);margin:12px 0}.hl-cover-upload{width:100%;height:160px;border:2px dashed #d1d5db;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;transition:border-color .2s}.hl-cover-upload:hover{border-color:var(--primary-color)}.hl-cover-preview{width:100%;height:100%;object-fit:cover}.hl-cover-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px}.hl-cover-remove{margin-top:8px;background:none;border:none;color:#dc2626;font-size:13px;cursor:pointer;padding:0}.hl-cover-remove:hover{text-decoration:underline}.hl-article-form .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.tch-page{display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;height:calc(100vh - var(--header-height) - 48px)}.tch-page>.page-header{flex-shrink:0}.tch-header-left{display:flex;align-items:center;gap:20px;min-width:0}.tch-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.tch-table-container{flex:1;min-height:0;min-width:0;background:var(--surface);border-radius:16px;overflow:auto;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.tch-table-container .hl-table th,.tch-table-container .hl-table td{white-space:nowrap}.tch-table-container .hl-table thead th{position:sticky;top:0;z-index:2;background:var(--background)}.tch-table-container .hl-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.tch-table-container .hl-table th.sortable-th:hover{color:var(--primary-color)}.tch-dir-tags{display:flex;flex-wrap:wrap;gap:5px}.tch-dir-tag{display:inline-block;padding:3px 10px;background:#08326514;color:var(--primary-color);border-radius:12px;font-size:12px;white-space:nowrap}.tch-embed-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.tch-embed-yes{background:#dcfce7;color:#15803d}.tch-audit-pending{display:inline-block;padding:4px 10px;border-radius:10px;font-size:12px;font-weight:500;background:#fef3c7;color:#b45309;white-space:nowrap}.tch-embed-no{background:#f3f4f6;color:#6b7280}.tch-embed-btn{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.tch-adv-search-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:14px 18px;background:var(--surface);border-radius:12px;border:1px solid var(--border-color);margin-bottom:12px;flex-shrink:0}.tch-search-field{display:flex;flex-direction:column;gap:3px;min-width:100px}.tch-search-field label{font-size:11px;color:var(--text-secondary);font-weight:500}.tch-search-field input,.tch-search-field select{height:32px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);background:var(--background);outline:none;width:100px}.tch-search-field input:focus,.tch-search-field select:focus{border-color:var(--primary-color)}.tch-search-range .tch-range-inputs{display:flex;align-items:center;gap:4px}.tch-search-range .tch-range-inputs input{width:70px}.tch-search-range .tch-range-inputs span{color:var(--text-secondary);font-size:12px}.tch-search-actions{display:flex;gap:6px;align-items:flex-end;padding-bottom:1px}.tch-search-actions .btn-sm{padding:5px 12px!important;font-size:13px!important;height:32px;display:inline-flex;align-items:center;gap:4px}.tch-batch-action-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:10px;font-size:13px;color:#92400e;flex-shrink:0}.tch-btn-danger{background:#ef4444!important;color:#fff!important;border:none!important;border-radius:6px;padding:6px 14px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.tch-btn-danger:hover{background:#dc2626!important}.tch-row-selected{background:#eff6ff!important}.tch-batch-delete-confirm{background:var(--surface);border-radius:16px;padding:28px 32px;max-width:420px;margin:auto;box-shadow:var(--shadow-xl)}.tch-batch-delete-confirm h3{margin:0 0 12px;font-size:18px;color:var(--text-primary)}.tch-batch-delete-confirm p{font-size:14px;color:var(--text-secondary);margin:0 0 20px}.tch-batch-delete-actions{display:flex;justify-content:flex-end;gap:10px}.tch-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding:0 4px;flex-shrink:0}.tch-page-left{display:flex;align-items:center;gap:8px}.tch-page-size-select{height:30px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);background:var(--surface);cursor:pointer;outline:none}.tch-page-info{font-size:13px;color:var(--text-secondary)}.tch-page-btns{display:flex;align-items:center;gap:10px}.tch-page-btn{padding:6px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);font-size:13px;cursor:pointer;transition:all .2s}.tch-page-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.tch-page-btn:disabled{opacity:.4;cursor:not-allowed}.tch-page-cur{font-size:13px;color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.tch-modal-content{background:var(--surface);border-radius:16px;width:100%;max-width:750px;max-height:90vh;overflow:hidden;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-header h2{font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:all .2s}.modal-close:hover{background:var(--background);color:var(--text-primary)}.tch-form{padding:24px}.tch-section{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.tch-section:last-of-type{border-bottom:none}.tch-section-title{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.tch-section-desc{font-size:13px;color:var(--text-secondary);margin-bottom:10px}.tch-row-between{display:flex;align-items:center;justify-content:space-between}.tch-hint-orange{font-size:12px;color:#ea580c;margin-top:2px}.tch-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tch-seg-ctrl{display:inline-flex;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.tch-seg-opt{padding:8px 20px;border:none;background:var(--surface);font-size:14px;cursor:pointer;transition:all .2s;color:var(--text-primary)}.tch-seg-opt+.tch-seg-opt{border-left:1px solid var(--border-color)}.tch-seg-opt.active{background:var(--primary-color);color:#fff}.tch-upload-btn{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:8px 16px;border:1px dashed var(--border-color);border-radius:8px;background:none;color:var(--primary-color);font-size:13px;cursor:pointer;transition:all .2s}.tch-upload-btn:hover:not(:disabled){border-color:var(--primary-color);background:#0832650a}@keyframes tch-spin-anim{to{transform:rotate(360deg)}}.tch-spin{animation:tch-spin-anim 1s linear infinite}.tch-empty-hint{font-size:13px;color:var(--text-secondary);margin:0}.tch-embed-modal{background:var(--surface);border-radius:16px;width:100%;max-width:520px;box-shadow:var(--shadow-xl)}.tch-embed-body{padding:24px}.tch-embed-desc{font-size:14px;color:var(--text-secondary);line-height:1.7;margin-bottom:20px}.tch-embed-modes{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.tch-embed-mode{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .2s}.tch-embed-mode:hover{border-color:var(--primary-color)}.tch-embed-mode.active{border-color:var(--primary-color);background:#08326508}.tch-embed-mode input[type=radio]{margin-top:3px;accent-color:var(--primary-color)}.tch-embed-mode div{display:flex;flex-direction:column;gap:2px}.tch-embed-mode strong{font-size:14px;color:var(--text-primary)}.tch-embed-mode span{font-size:12px;color:var(--text-secondary)}.tch-embed-start-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px}.tch-embed-progress{display:flex;flex-direction:column;gap:12px}.tch-embed-progress-bar-wrap{width:100%;height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden}.tch-embed-progress-bar{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));border-radius:6px;transition:width .3s ease}.tch-embed-progress-text{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--text-primary);font-weight:500}.tch-embed-stats{display:flex;align-items:center;gap:16px;font-size:13px}.tch-embed-stat-ok{display:flex;align-items:center;gap:4px;color:#15803d}.tch-embed-stat-fail{display:flex;align-items:center;gap:4px;color:#dc2626}.tch-embed-stat-fail-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;margin:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.tch-embed-stat-fail-btn:hover{color:#b91c1c}.tch-fail-detail-modal{background:var(--surface);border-radius:16px;width:100%;max-width:720px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.tch-fail-detail-body{padding:0 24px 24px;display:flex;flex-direction:column;min-height:0;flex:1}.tch-fail-detail-summary{margin:0 0 12px;font-size:13px;color:var(--text-secondary)}.tch-fail-detail-table-wrap{overflow:auto;max-height:min(55vh,480px);border:1px solid var(--border-color);border-radius:10px}.tch-fail-detail-table{width:100%;border-collapse:collapse;font-size:13px}.tch-fail-detail-table th,.tch-fail-detail-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:top}.tch-fail-detail-table th{position:sticky;top:0;background:#f8fafc;color:var(--text-secondary);font-weight:600;z-index:1}.tch-fail-detail-table tbody tr:last-child td{border-bottom:none}.tch-fail-detail-reason{color:#b91c1c;line-height:1.5;word-break:break-word}.tch-fail-detail-actions{margin-top:16px;display:flex;justify-content:flex-end}.tch-pd-modal .tch-pd-warning{display:flex;gap:12px;padding:14px 16px;border-radius:10px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;margin-bottom:16px}.tch-pd-modal .tch-pd-warning strong{display:block;margin-bottom:6px;font-size:14px}.tch-pd-modal .tch-pd-warning p{margin:0;font-size:13px;line-height:1.5;color:#c2410c}.tch-pd-rules{margin:0 0 20px 20px;padding:0;font-size:13px;color:var(--text-secondary);line-height:1.8}.tch-pd-progress-bar{background:linear-gradient(90deg,#2563eb,#1d4ed8)}.tch-preview-modal{background:var(--surface);border-radius:16px;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.tch-preview-body{padding:16px 24px 24px}.tch-wizard-modal{background:var(--surface);border-radius:16px;width:100%;max-width:800px;max-height:92vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);position:relative}.tch-wizard-modal.tch-wizard-large{max-width:960px}.tch-wizard-body{flex:1;overflow-y:auto;padding:24px}.tch-wizard-step{min-height:200px}.tch-excel-parse-error{margin-top:12px;padding:12px 14px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;font-size:13px;line-height:1.5;max-height:220px;overflow-y:auto}.tch-excel-parse-warn{margin-top:12px;padding:12px 14px;border-radius:8px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:13px;line-height:1.5;max-height:220px;overflow-y:auto}.tch-wizard-footer{display:flex;align-items:center;padding:16px 24px;border-top:1px solid var(--border-color);gap:12px}.tch-steps{display:flex;align-items:center;justify-content:center;padding:16px 24px;border-bottom:1px solid var(--border-color);gap:4px;flex-wrap:wrap}.tch-step{display:flex;align-items:center;gap:6px;opacity:.4}.tch-step-active{opacity:1}.tch-step-done{opacity:.7}.tch-step-num{width:24px;height:24px;border-radius:50%;background:var(--border-color);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.tch-step-active .tch-step-num{background:var(--primary-color);color:#fff}.tch-step-done .tch-step-num{background:#dcfce7;color:#15803d}.tch-step-label{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap}.tch-step-arrow{color:var(--text-secondary);opacity:.5;margin:0 4px}.tch-progress-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#fffffff2;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:16px}.tch-progress-card{text-align:center;width:320px}.tch-progress-msg{font-size:15px;font-weight:500;color:var(--text-primary);margin:16px 0 12px}.tch-progress-bar-wrap{width:100%;height:10px;background:#e5e7eb;border-radius:5px;overflow:hidden}.tch-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color, #2563eb));border-radius:5px;transition:width .4s ease}.tch-progress-pct{font-size:13px;color:var(--text-secondary);margin-top:8px}.tch-file-zone{border:1px solid var(--border-color);border-radius:10px;padding:12px;margin-bottom:12px}.tch-file-zone-disabled{opacity:.5;pointer-events:none}.tch-file-zone-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.tch-file-zone-label{font-size:13px;font-weight:600;color:var(--text-primary)}.tch-file-zone-hint{font-size:12px;color:var(--text-secondary)}.tch-file-zone-files{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.tch-file-zone-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#f9fafb;border-radius:6px;font-size:13px}.tch-file-zone-thumb{width:44px;height:44px;border-radius:6px;object-fit:cover;border:1px solid var(--border-color);cursor:pointer;flex-shrink:0;transition:border-color .2s,transform .2s}.tch-file-zone-thumb:hover{border-color:var(--primary-color);transform:scale(1.04)}.tch-file-zone-icon{color:var(--text-secondary);flex-shrink:0}.tch-file-zone-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.tch-file-zone-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.tch-file-action-btn{border:none;background:none;cursor:pointer;color:#6b7280;padding:4px;display:flex;align-items:center;border-radius:4px;transition:color .2s,background .2s}.tch-file-action-btn:hover:not(:disabled){color:var(--primary-color);background:#08326514}.tch-file-action-btn:disabled{opacity:.5;cursor:not-allowed}.tch-file-remove{border:none;background:none;cursor:pointer;color:#9ca3af;padding:4px;display:flex;align-items:center;border-radius:4px;transition:color .2s,background .2s}.tch-file-remove:hover:not(:disabled){color:#dc2626;background:#dc262614}.tch-file-remove:disabled{opacity:.5;cursor:not-allowed}.tch-intro-card{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;max-width:420px;min-width:220px}.tch-intro-thumb{width:44px;height:44px;border-radius:6px;object-fit:cover;border:1px solid #bbf7d0;cursor:pointer;flex-shrink:0;transition:border-color .2s,transform .2s}.tch-intro-thumb:hover{border-color:var(--primary-color);transform:scale(1.04)}.tch-intro-icon{color:#15803d;flex-shrink:0}.tch-intro-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:#166534}.tch-intro-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.tch-upload-zone-sm{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border:1px dashed var(--border-color);border-radius:8px;cursor:pointer;font-size:13px;color:var(--text-secondary);transition:all .2s}.tch-upload-zone-sm:hover{border-color:var(--primary-color);color:var(--primary-color);background:#08326505}.tch-add-zone-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;border:1px dashed var(--border-color);border-radius:8px;background:none;color:var(--primary-color);font-size:13px;cursor:pointer;width:100%;justify-content:center;margin-top:8px;transition:all .2s}.tch-add-zone-btn:hover{border-color:var(--primary-color);background:#08326508}.tch-add-zone-btn-sm{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:1px dashed var(--border-color);border-radius:6px;background:none;color:var(--primary-color);font-size:12px;cursor:pointer;margin-top:8px;transition:all .2s}.tch-add-zone-btn-sm:hover{border-color:var(--primary-color);background:#08326508}.tch-openid-wrap{position:relative}.tch-openid-hint{font-size:12px;margin-top:4px;display:block;color:var(--text-secondary)}.tch-hint-ok{color:#15803d}.tch-hint-err{color:#dc2626}.tch-input-error{border-color:#dc2626!important}.tch-openid-gate{display:flex;align-items:center;gap:8px;padding:16px 20px;margin-top:16px;background:#fff7ed;border:1px dashed #fdba74;border-radius:8px;color:#9a3412;font-size:13px;line-height:1.6}.tch-input-success{border-color:#15803d!important}.tch-tabs{display:flex;border-bottom:2px solid var(--border-color);margin-bottom:16px}.tch-tab{padding:10px 24px;border:none;background:none;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.tch-tab:hover{color:var(--text-primary)}.tch-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tch-zones-area{min-height:200px}.tch-calc-display{padding:10px 14px;background:#f9fafb;border-radius:8px;font-size:14px;font-weight:500;color:var(--text-primary);border:1px solid var(--border-color);min-height:40px;display:flex;align-items:center}.tch-preview-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.tch-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.tch-preview-item{display:flex;flex-direction:column;gap:2px}.tch-preview-label{font-size:12px;font-weight:500;color:var(--text-secondary)}.tch-file-preview-link{background:none;border:none;padding:0;margin:0;color:var(--primary-color);font-size:13px;cursor:pointer;text-decoration:underline;transition:color .2s}.tch-file-preview-link:hover{color:var(--primary-dark)}.tch-link-blue{color:var(--primary-color);font-size:13px;cursor:pointer;text-decoration:none}.tch-link-blue:hover{text-decoration:underline}.tch-manage-link{border:none;background:none;color:var(--primary-color);font-size:12px;cursor:pointer;padding:2px 0;margin-top:4px;display:block}.tch-manage-link:hover{text-decoration:underline}.tch-file-link{border:none;background:none;color:var(--primary-color);font-size:12px;cursor:pointer;padding:0;text-align:left;word-break:break-all}.tch-file-link:hover{text-decoration:underline}.tch-parsed-preview{margin-top:16px}.tch-mini-table-wrap{overflow-x:auto;margin-top:8px;border:1px solid var(--border-color);border-radius:8px}.tch-mini-table{width:100%;border-collapse:collapse;font-size:13px}.tch-mini-table th,.tch-mini-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap}.tch-mini-table th{background:#f9fafb;font-weight:600;color:var(--text-secondary);font-size:12px}.tch-mini-table tbody tr:last-child td{border-bottom:none}.tch-batch-person-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid var(--border-color);border-radius:10px;margin-bottom:10px}.tch-batch-person-name{font-size:14px;font-weight:500;color:var(--text-primary)}.tch-batch-person-upload{display:flex;align-items:center;gap:8px}.tch-batch-file-done{display:flex;align-items:center;gap:4px;font-size:13px;color:#15803d}.tch-upload-btn-sm{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:1px dashed var(--border-color);border-radius:6px;font-size:12px;color:var(--primary-color);cursor:pointer;transition:all .2s}.tch-upload-btn-sm:hover{border-color:var(--primary-color);background:#08326508}.tch-batch-person-block{border:1px solid var(--border-color);border-radius:12px;padding:16px;margin-bottom:16px}.tch-batch-person-block-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.tch-batch-preview-card{border:1px solid var(--border-color);border-radius:12px;padding:16px;margin-bottom:12px}.tch-batch-preview-header{font-size:15px;font-weight:600;color:var(--text-primary)}.tch-toggle{width:40px;height:22px;border-radius:11px;background:#d1d5db;cursor:pointer;position:relative;transition:background .2s}.tch-toggle-on{background:var(--primary-color)}.tch-toggle-knob{width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:left .2s;box-shadow:0 1px 3px #00000026}.tch-toggle-on .tch-toggle-knob{left:20px}.tch-table-container .hl-table td{max-width:200px;overflow:hidden;text-overflow:ellipsis}.tch-table-container .hl-table td.tch-created-by-cell{max-width:none;overflow:visible;text-overflow:clip;white-space:nowrap;vertical-align:middle;text-align:center}.tch-created-by-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.35}.tch-created-by-text{display:block;white-space:nowrap;font-size:12px;color:var(--text-secondary)}.tch-created-by-name{display:block;white-space:nowrap;font-size:13px;font-weight:500;color:var(--text-primary)}.tch-image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;z-index:2000;display:flex;align-items:center;justify-content:center;padding:40px;cursor:zoom-out;animation:tch-fade-in .18s ease-out}.tch-image-lightbox-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px #0006;cursor:default}.tch-image-lightbox-close{position:absolute;top:20px;right:24px;width:36px;height:36px;border-radius:50%;background:#ffffff1f;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.tch-image-lightbox-close:hover{background:#ffffff40}@keyframes tch-fade-in{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.tch-form-grid{grid-template-columns:1fr}.tch-header-left{flex-direction:column;align-items:flex-start}.tch-header-actions{flex-direction:column;align-items:flex-end}.tch-preview-grid{grid-template-columns:1fr}.tch-wizard-modal{max-height:100vh;border-radius:0}}.tch-modal-lg{max-width:900px;width:90%;max-height:85vh;overflow:hidden}.tch-modal-lg .tch-form{flex:1;overflow-y:auto;padding:24px}.tch-tabs-modal{display:flex;gap:4px;padding:0 24px;border-bottom:1px solid var(--border-color);background:var(--surface)}.tch-tabs-modal .tch-tab{padding:12px 20px;font-size:14px;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px}.tch-tabs-modal .tch-tab:hover{color:var(--primary-color)}.tch-tabs-modal .tch-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tch-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;color:#fff;background:var(--primary-color);border-radius:9px}.tch-section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tch-loading-row{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px;color:var(--text-secondary)}.tch-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--text-secondary);text-align:center}.tch-empty-state p{margin:16px 0;font-size:14px}.tch-qual-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding-right:4px}.tch-qual-card{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--background);border:1px solid var(--border-color);border-radius:12px;transition:all .2s}.tch-qual-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #08326514}.tch-qual-card-main{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.tch-qual-icon{width:48px;height:48px;border-radius:8px;background:#0832650f;display:flex;align-items:center;justify-content:center;color:var(--primary-color);flex-shrink:0;overflow:hidden}.tch-qual-icon img{width:100%;height:100%;object-fit:cover}.tch-qual-info{flex:1;min-width:0}.tch-qual-name{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.tch-qual-remark{font-size:13px;color:var(--text-secondary);margin-bottom:4px}.tch-qual-file{font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:4px}.tch-qual-actions{display:flex;gap:8px}.tch-course-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding-right:4px}.tch-course-card{display:flex;align-items:flex-start;justify-content:space-between;padding:16px;background:var(--background);border:1px solid var(--border-color);border-radius:12px;transition:all .2s}.tch-course-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #08326514}.tch-course-main{flex:1;min-width:0}.tch-course-header{display:flex;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}.tch-course-name{font-size:15px;font-weight:600;color:var(--text-primary)}.tch-course-category{font-size:12px;color:var(--text-secondary);padding:2px 8px;background:#0832650f;border-radius:4px}.tch-course-outline{font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:8px}.tch-course-files{display:flex;flex-wrap:wrap;gap:6px}.tch-course-file-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:12px;color:var(--text-secondary);background:#0832650f;border-radius:4px}.tch-course-actions{display:flex;gap:8px;margin-left:12px}.tch-icon-btn{width:32px;height:32px;border-radius:6px;border:1px solid var(--border-color);background:var(--surface);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.tch-icon-btn:hover{border-color:var(--primary-color);color:var(--primary-color);background:#0832650f}.tch-icon-btn-danger:hover{border-color:#dc2626;color:#dc2626;background:#dc26260f}.tch-modal-sm{max-width:480px;width:90%}.tch-form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tch-file-list-sm{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.tch-file-item-sm{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--background);border:1px solid var(--border-color);border-radius:6px}.tch-file-item-sm .tch-file-name{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tch-file-remove-sm{width:20px;height:20px;border-radius:4px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center}.tch-file-remove-sm:hover{background:#dc26261a;color:#dc2626}.tch-intro-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--background);border:1px solid var(--border-color);border-radius:8px;max-width:400px}.tch-intro-thumb{width:40px;height:40px;object-fit:cover;border-radius:4px;cursor:pointer}.tch-intro-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:var(--primary-color)}.tch-intro-name{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tch-intro-actions{display:flex;gap:4px}.tch-qual-list::-webkit-scrollbar,.tch-course-list::-webkit-scrollbar{width:6px}.tch-qual-list::-webkit-scrollbar-track,.tch-course-list::-webkit-scrollbar-track{background:transparent}.tch-qual-list::-webkit-scrollbar-thumb,.tch-course-list::-webkit-scrollbar-thumb{background:#08326533;border-radius:3px}.tch-qual-list::-webkit-scrollbar-thumb:hover,.tch-course-list::-webkit-scrollbar-thumb:hover{background:#0832654d}@media (max-width: 768px){.tch-modal-lg{width:100%;max-height:100vh;border-radius:0}.tch-tabs-modal{padding:0 16px;overflow-x:auto}.tch-tabs-modal .tch-tab{padding:10px 14px;font-size:13px;white-space:nowrap}.tch-form-grid-2{grid-template-columns:1fr}.tch-qual-card,.tch-course-card{flex-direction:column;align-items:flex-start;gap:12px}.tch-qual-actions,.tch-course-actions{margin-left:0;width:100%;justify-content:flex-end}.tch-course-header{flex-direction:column;align-items:flex-start;gap:6px}}.ai-analyzing-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;border-radius:12px}.ai-analyzing-toast{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 48px;background:var(--surface);border-radius:12px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color)}.ai-analyzing-toast span{font-size:16px;color:var(--text-primary);font-weight:500}.ai-analyzing-toast .tch-spin{animation:spin 1s linear infinite;color:var(--primary)}.btn-secondary:disabled,.btn-primary:disabled{opacity:.6;cursor:not-allowed}.tch-upload-btn:disabled{opacity:.6;cursor:not-allowed}.tch-region-field{min-width:140px!important}.tch-region-selector{height:32px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);background:var(--background);display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:border-color .2s;width:140px}.tch-region-selector:hover{border-color:var(--primary-color)}.tch-region-selector .placeholder{color:#9ca3af}.tch-region-arrow{color:var(--text-secondary);transform:rotate(90deg)}.tch-region-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.tch-region-modal{background:var(--surface);border-radius:12px;width:480px;max-width:90vw;max-height:70vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl);overflow:hidden}.tch-region-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.tch-region-modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.tch-region-modal-close{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.tch-region-modal-close:hover{background:var(--background);color:var(--text-primary)}.tch-region-search-wrap{padding:12px 20px;border-bottom:1px solid var(--border-color)}.tch-region-search-input-wrap{display:flex;align-items:center;gap:8px;background:var(--background);border:1px solid var(--border-color);border-radius:6px;padding:0 12px;height:36px}.tch-region-search-input-wrap:focus-within{border-color:var(--primary-color)}.tch-region-search-icon{color:var(--text-secondary);flex-shrink:0}.tch-region-search-input{flex:1;border:none;background:none;outline:none;font-size:14px;color:var(--text-primary);padding:0;height:100%}.tch-region-search-input::placeholder{color:#9ca3af}.tch-region-search-clear{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:2px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.tch-region-search-clear:hover{background:#0000001a;color:var(--text-primary)}.tch-region-search-results{flex:1;overflow-y:auto;padding:8px 0;max-height:320px}.tch-region-result-item{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;cursor:pointer;transition:background .2s}.tch-region-result-item:hover{background:var(--background)}.tch-region-result-city{font-size:14px;color:var(--text-primary);font-weight:500}.tch-region-result-province{font-size:12px;color:var(--text-secondary)}.tch-region-empty{padding:40px 20px;text-align:center;color:var(--text-secondary);font-size:14px}.tch-region-picker-body{flex:1;overflow:hidden}.tch-region-picker-columns{display:flex;height:280px}.tch-region-picker-column{flex:1;display:flex;flex-direction:column;border-right:1px solid var(--border-color)}.tch-region-picker-column:last-child{border-right:none}.tch-region-picker-column-title{padding:10px 16px;font-size:12px;font-weight:600;color:var(--text-secondary);background:var(--background);border-bottom:1px solid var(--border-color)}.tch-region-picker-column-list{flex:1;overflow-y:auto;padding:4px 0}.tch-region-picker-item{padding:10px 16px;font-size:14px;color:var(--text-primary);cursor:pointer;transition:all .2s}.tch-region-picker-item:hover{background:var(--background)}.tch-region-picker-item.active{background:#08326514;color:var(--primary-color);font-weight:500}.tch-region-empty-text{padding:40px 16px;text-align:center;color:var(--text-secondary);font-size:14px}.tch-region-picker-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px;border-top:1px solid var(--border-color);background:var(--background)}.tch-region-picker-footer button{padding:8px 20px;font-size:14px}.tch-form-group-region{min-width:160px}.tch-region-selector-form{height:36px;padding:0 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;color:var(--text-primary);background:var(--background);display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:all .2s;width:100%}.tch-region-selector-form:hover{border-color:var(--primary-color)}.tch-region-selector-form .placeholder{color:#9ca3af}.tch-region-selector-form .tch-region-arrow{color:var(--text-secondary);transform:rotate(90deg);flex-shrink:0}.tch-preview-ai-card{background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:12px 14px;margin-bottom:8px}.tch-preview-ai-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.tch-preview-ai-title{font-size:14px;font-weight:600;color:var(--text-primary)}.tch-preview-ai-field{margin-top:6px}.tch-preview-ai-label{font-size:12px;color:var(--text-secondary);font-weight:500}.tch-preview-ai-pre{font-size:12px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;margin:2px 0 0;padding:6px 8px;background:#00000005;border-radius:4px;max-height:200px;overflow-y:auto}.tch-course-pages-bar{margin-bottom:16px}.tch-course-pages-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:8px;background:var(--background);border:1px solid var(--border-color);border-radius:8px}.tch-course-page-tab{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .2s;max-width:180px}.tch-course-page-tab:hover{border-color:var(--primary-color);background:#0832650a}.tch-course-page-tab.active{border-color:var(--primary-color);background:#08326514;color:var(--primary-color);font-weight:500}.tch-course-page-tab.done{border-color:#22c55e}.tch-course-page-tab.done.active{border-color:var(--primary-color)}.tch-course-page-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.tch-course-page-tab-check{color:#22c55e;flex-shrink:0}.tch-course-page-tab-del{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;border-radius:3px;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0;margin-left:2px;padding:0}.tch-course-page-tab-del:hover{background:#dc26261a;color:#dc2626}.tch-dir-tag--clickable{cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .1s ease}.tch-dir-tag--clickable:hover{background:#08326529;box-shadow:0 1px 4px #0832651f}.tch-dir-tag--clickable:active{transform:scale(.97)}.tch-tag-score-overlay{z-index:1200}.tch-tag-score-modal{width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 48px);background:#fff;border-radius:16px;box-shadow:0 24px 64px #0f172a2e;display:flex;flex-direction:column;overflow:hidden}.tch-tag-score-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px 16px;border-bottom:1px solid #eef2f7;background:linear-gradient(180deg,#f8fafc,#fff)}.tch-tag-score-header h2{margin:0 0 6px;font-size:18px;font-weight:600;color:var(--text-primary)}.tch-tag-score-subtitle{margin:0;font-size:13px;color:var(--text-secondary)}.tch-tag-score-id{margin-left:10px;padding:2px 8px;background:#f1f5f9;border-radius:6px;font-size:12px;color:#64748b}.tch-tag-score-body{padding:20px 24px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.tch-tag-score-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 860px){.tch-tag-score-sections{grid-template-columns:1fr}}.tch-tag-score-section-card{border:1px solid #e8edf3;border-radius:12px;padding:14px 14px 12px;background:#fff;box-shadow:0 2px 8px #0f172a0a}.tch-tag-score-section-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.tch-tag-score-section-icon{width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--sec-accent) 12%,white);display:flex;align-items:center;justify-content:center;font-size:16px}.tch-tag-score-section-head strong{display:block;font-size:14px;color:var(--text-primary)}.tch-tag-score-section-weight{font-size:11px;color:var(--sec-accent);font-weight:600}.tch-tag-score-top-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.tch-tag-score-top-group{padding-bottom:10px;border-bottom:1px dashed #eef2f7}.tch-tag-score-top-group:last-child{border-bottom:none;padding-bottom:0}.tch-tag-score-top-item{display:grid;grid-template-columns:22px 1fr auto;grid-template-rows:auto auto;gap:2px 8px;align-items:center}.tch-tag-score-hit-list{list-style:none;margin:8px 0 0 30px;padding:0;display:flex;flex-direction:column;gap:8px}.tch-tag-score-hit{border:1px solid #eef2f7;border-radius:8px;font-size:11px;overflow:hidden;background:#fff}.tch-tag-score-hit--open{border-color:color-mix(in srgb,var(--sec-accent, var(--primary-color)) 35%,#eef2f7);background:#f8fafc}.tch-tag-score-hit-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;width:100%;padding:8px 10px;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit}.tch-tag-score-hit-toggle:hover{background:#0f172a08}.tch-tag-score-hit-chevron{flex-shrink:0;color:#94a3b8;transition:transform .2s ease}.tch-tag-score-hit-chevron.open{transform:rotate(90deg)}.tch-tag-score-hit-expand-label{margin-left:auto;font-size:10px;color:#94a3b8;flex-shrink:0}.tch-tag-score-hit-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:4px}.tch-tag-score-hit-kw{font-weight:600;color:var(--sec-accent, var(--primary-color))}.tch-tag-score-kw-mark{padding:0 2px;border-radius:3px;background:linear-gradient(180deg,#fef08a,#fde047);color:#713f12;font-weight:700;box-decoration-break:clone;-webkit-box-decoration-break:clone}.tch-tag-score-hit-src{color:#64748b;font-size:11px}.tch-tag-score-hit-excerpt{padding:0 10px 10px 34px;color:#475569;line-height:1.55;word-break:break-word;animation:tchHitExcerptIn .18s ease}@keyframes tchHitExcerptIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tch-tag-score-hit-empty{margin:6px 0 0 30px;font-size:11px;color:#94a3b8}.tch-tag-score-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:48px 16px;color:#64748b;font-size:14px}.tch-tag-score-warn{margin-bottom:12px;padding:10px 12px;border-radius:8px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:12px}.tch-tag-score-rank{grid-row:1 / 3;width:22px;height:22px;border-radius:6px;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.tch-tag-score-tag-name{font-size:13px;font-weight:500;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tch-tag-score-bar-wrap{grid-column:2;height:6px;background:#eef2f7;border-radius:3px;overflow:hidden}.tch-tag-score-bar{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--sec-accent),color-mix(in srgb,var(--sec-accent) 70%,white));transition:width .35s ease}.tch-tag-score-num{grid-column:3;grid-row:1 / 3;font-size:13px;font-weight:600;color:var(--sec-accent);min-width:36px;text-align:right}.tch-tag-score-section-foot{margin-top:10px;padding-top:10px;border-top:1px dashed #e8edf3;font-size:11px;color:#94a3b8;line-height:1.5}.tch-tag-score-section-foot span{color:#64748b}.tch-tag-score-empty{font-size:13px;color:#94a3b8;padding:8px 0}.tch-tag-score-aggregate{border:1px solid #dbeafe;border-radius:12px;padding:16px;background:linear-gradient(180deg,#f8fbff,#fff)}.tch-tag-score-aggregate-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px;color:var(--primary-color)}.tch-tag-score-aggregate-head strong{font-size:15px}.tch-tag-score-aggregate-hint{font-size:12px;color:#64748b;font-weight:400}.tch-tag-score-rank-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid #e8edf3;background:#fff}.tch-tag-score-rank-table{width:100%;border-collapse:collapse;font-size:12px}.tch-tag-score-rank-table th{padding:10px 12px;text-align:left;background:#f8fafc;color:#64748b;font-weight:600;border-bottom:1px solid #e8edf3;white-space:nowrap}.tch-tag-score-rank-table td{padding:10px 12px;border-bottom:1px solid #f1f5f9;color:var(--text-primary);vertical-align:middle}.tch-tag-score-rank-table tbody tr:last-child td{border-bottom:none}.tch-tag-score-row-final{background:#0832650a}.tch-tag-score-tag-pill{display:inline-block;padding:2px 8px;border-radius:10px;background:#08326514;color:var(--primary-color);font-weight:500}.tch-tag-score-final-badge{margin-left:6px;padding:1px 6px;border-radius:4px;background:#dcfce7;color:#15803d;font-size:10px;font-weight:600}.tch-tag-score-total-cell{display:flex;align-items:center;gap:8px;min-width:88px}.tch-tag-score-total-bar-wrap{flex:1;height:6px;background:#eef2f7;border-radius:3px;overflow:hidden;min-width:48px}.tch-tag-score-total-bar{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));border-radius:3px}.tch-tag-score-final-row{margin-top:14px;padding-top:14px;border-top:1px solid #dbeafe;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.tch-tag-score-final-label{font-size:13px;font-weight:600;color:var(--text-primary)}.tch-tag-score-final-tags{display:flex;flex-wrap:wrap;gap:8px}.tch-tag-score-final-tag{padding:5px 14px;border-radius:999px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;font-size:13px;font-weight:600;box-shadow:0 2px 8px #08326538}.tch-tag-score-formula{border-radius:12px;padding:14px 16px;background:#f8fafc;border:1px solid #e8edf3}.tch-tag-score-formula-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.tch-tag-score-formula-steps{margin:0;padding-left:18px;font-size:12px;color:#64748b;line-height:1.7}.tch-tag-score-formula-steps strong{color:var(--text-primary)}.tch-tag-score-formula-code{display:block;margin:8px 0 4px;padding:10px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;color:#334155;white-space:normal;word-break:break-word}.apv-page{max-width:100%}.apv-page .page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.apv-approve-all-btn{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0;padding:10px 18px;background:#15803d;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,opacity .15s}.apv-approve-all-btn:hover:not(:disabled){background:#166534}.apv-approve-all-btn:disabled{opacity:.55;cursor:not-allowed}.apv-approve-all-count{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ffffff38;font-size:12px;font-weight:600;line-height:20px;text-align:center}.apv-spin{animation:apv-spin .8s linear infinite}@keyframes apv-spin{to{transform:rotate(360deg)}}.apv-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.apv-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;border:1px solid var(--border-color);background:var(--surface);font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.apv-tab-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;line-height:18px;text-align:center;flex-shrink:0}.apv-tab:hover{border-color:var(--primary-color);color:var(--primary-color)}.apv-tab.apv-tab-active{border-color:var(--primary-color);background:#08326514;color:var(--primary-color)}.apv-search-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:16px;padding:16px;background:var(--surface);border-radius:12px;border:1px solid var(--border-color)}.apv-search-field{display:flex;flex-direction:column;gap:4px}.apv-search-field label{font-size:12px;color:var(--text-secondary);font-weight:500}.apv-search-field input,.apv-search-field select{padding:6px 10px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;min-width:120px}.apv-search-field input:disabled{background:#f3f4f6;color:var(--text-secondary)}.apv-search-actions{display:flex;gap:8px;align-items:flex-end;padding-bottom:1px}.apv-batch-bar{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:10px 16px;background:#eff6ff;border-radius:8px;font-size:14px;color:var(--text-primary)}.apv-table-container{background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.apv-row-selected{background:#eff6ff!important}.apv-category-tag{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:500;background:#e0f2fe;color:#0369a1}.apv-actions{display:flex;align-items:center;gap:8px}.apv-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}.apv-btn-approve{background:#dcfce7;color:#15803d}.apv-btn-approve:hover{background:#bbf7d0}.apv-btn-reject{background:#fee2e2;color:#dc2626}.apv-btn-reject:hover{background:#fecaca}.apv-file-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);color:var(--primary-color);font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}.apv-file-btn:hover:not(:disabled){border-color:var(--primary-color);background:#0832650a}.apv-file-btn:disabled{opacity:.6;cursor:not-allowed}.apv-reject-modal{background:var(--surface);border-radius:16px;width:100%;max-width:520px;box-shadow:var(--shadow-xl)}.apv-reject-body{padding:24px}.apv-reject-body .form-actions{display:flex;justify-content:flex-end;gap:12px}.apv-reason-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.apv-reason-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .2s}.apv-reason-item:hover{border-color:var(--primary-color);background:#08326505}.apv-reason-item.selected{border-color:#dc2626;background:#fef2f2}.apv-reason-radio{font-size:16px;color:var(--text-secondary);flex-shrink:0}.apv-reason-item.selected .apv-reason-radio{color:#dc2626}.apv-reason-content{display:flex;flex-direction:column;gap:2px}.apv-reason-label{font-size:14px;font-weight:600;color:var(--text-primary)}.apv-reason-desc{font-size:12px;color:var(--text-secondary)}.apv-reject-confirm-btn{background:#dc2626!important;border-color:#dc2626!important}.apv-reject-confirm-btn:hover{background:#b91c1c!important}.apv-detail-modal{background:var(--surface);border-radius:16px;width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.apv-detail-body{flex:1;overflow:auto;padding:24px}.apv-detail-section{margin-bottom:20px}.apv-detail-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border-color)}.apv-changed-hint{font-size:12px;font-weight:400;color:#dc2626;margin-left:8px}.apv-field-changed{color:#dc2626!important;font-weight:600}.apv-preview-text{font-size:14px;color:var(--text-primary);line-height:1.7}.apv-pre-wrap{white-space:pre-wrap;word-break:break-word}.apv-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.apv-info-item{display:flex;flex-direction:column;gap:4px}.apv-info-label{font-size:12px;color:var(--text-secondary);font-weight:500}.apv-info-value{font-size:14px;color:var(--text-primary)}.apv-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:12px 0}.apv-pagination-left{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.apv-page-size-select{padding:4px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.apv-pagination-right{display:flex;align-items:center;gap:8px}.apv-pagination-right button{padding:6px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);font-size:13px;cursor:pointer}.apv-pagination-right button:disabled{opacity:.5;cursor:not-allowed}.apv-pagination-right span{font-size:13px;color:var(--text-secondary)}@media (max-width: 768px){.apv-info-grid{grid-template-columns:1fr}.apv-actions{flex-direction:column;gap:4px}.apv-search-bar{flex-direction:column}}.usr-page{display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;height:calc(100vh - var(--header-height) - 48px)}.usr-header-actions{display:flex;align-items:center;gap:12px}.usr-adv-search-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:12px;padding:14px 16px;background:var(--surface);border-radius:12px;border:1px solid var(--border-color);flex-shrink:0}.usr-search-field{display:flex;flex-direction:column;gap:3px}.usr-search-field label{font-size:11px;color:var(--text-secondary);font-weight:500}.usr-search-field input,.usr-search-field select{padding:5px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;min-width:90px}.usr-fee-range{display:flex;align-items:center;gap:4px}.usr-fee-range input{width:70px;padding:5px 6px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.usr-fee-range span{color:var(--text-secondary);font-size:13px}.usr-search-actions{display:flex;gap:8px;align-items:flex-end;padding-bottom:1px}.usr-table-container{flex:1;min-height:0;min-width:0;overflow:auto;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.usr-table-container thead th{position:sticky;top:0;z-index:2;background:var(--surface)}.usr-table-container .hl-table th,.usr-table-container .hl-table td{white-space:nowrap}.usr-table-container .hl-table td.usr-openid-cell{white-space:normal;vertical-align:middle;min-width:280px;max-width:420px}.usr-openid{font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;display:block;word-break:break-all;white-space:normal;line-height:inherit}.usr-tags{display:flex;flex-wrap:wrap;gap:4px}.usr-tag{display:inline-block;padding:2px 8px;background:#eff6ff;color:#1d4ed8;border-radius:10px;font-size:11px;white-space:nowrap}.usr-multiline{font-size:13px;line-height:1.5;white-space:nowrap}.usr-intro-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--text-secondary)}.usr-manage-btn{display:inline-block;margin-top:4px;padding:2px 8px;font-size:12px;color:var(--primary-color);background:transparent;border:1px solid var(--primary-color);border-radius:4px;cursor:pointer}.usr-manage-btn:hover{background:#0832650f}.usr-file-link{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:12px;text-decoration:underline;padding:0}.usr-file-link:hover{color:#1d4ed8}.usr-lv-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.usr-lv-0{background:#f3f4f6;color:#6b7280}.usr-lv-1{background:#dbeafe;color:#1d4ed8}.usr-lv-2{background:#fef3c7;color:#b45309}.usr-lv-3{background:linear-gradient(135deg,#fde68a,#fbbf24);color:#78350f;font-weight:600}.usr-public-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.usr-public-yes{background:#dcfce7;color:#15803d}.usr-public-no{background:#f3f4f6;color:#6b7280}.usr-embed-tag{display:inline-block;padding:3px 8px;border-radius:10px;font-size:12px;font-weight:500}.usr-embed-yes{background:#dcfce7;color:#15803d}.usr-embed-no{background:#fef3c7;color:#b45309}.usr-action-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;border:1px solid var(--border-color);background:var(--surface);font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap}.usr-action-btn:hover:not(.usr-action-disabled){border-color:var(--primary-color);color:var(--primary-color)}.usr-action-btn.usr-action-disabled{opacity:.5;cursor:not-allowed}.usr-pagination{display:flex;justify-content:space-between;align-items:center;padding:12px 0;flex-shrink:0}.usr-pagination-left{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.usr-page-size-select{padding:4px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.usr-pagination-right{display:flex;align-items:center;gap:8px}.usr-pagination-right button{padding:6px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);font-size:13px;cursor:pointer}.usr-pagination-right button:disabled{opacity:.5;cursor:not-allowed}.usr-pagination-right span{font-size:13px;color:var(--text-secondary)}.usr-embed-modal{background:var(--surface);border-radius:16px;width:100%;max-width:520px;box-shadow:var(--shadow-xl)}.usr-embed-body{padding:24px}.usr-embed-desc{color:var(--text-secondary);font-size:14px;margin-bottom:16px}.usr-embed-modes{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.usr-embed-mode{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .2s}.usr-embed-mode.active{border-color:var(--primary-color);background:#0832650a}.usr-embed-mode input[type=radio]{display:none}.usr-embed-mode div{display:flex;flex-direction:column;gap:2px}.usr-embed-mode strong{font-size:14px}.usr-embed-mode span{font-size:12px;color:var(--text-secondary)}.usr-embed-start-btn{display:flex;align-items:center;gap:6px}.usr-embed-progress{text-align:center}.usr-embed-bar-wrap{width:100%;height:10px;background:#e5e7eb;border-radius:5px;overflow:hidden;margin-bottom:12px}.usr-embed-bar{height:100%;background:var(--primary-color);border-radius:5px;transition:width .3s}.usr-embed-progress-text{font-size:14px;margin-bottom:8px}.usr-embed-stats{display:flex;gap:16px;justify-content:center;font-size:13px;color:var(--text-secondary)}.usr-embed-ok{color:#15803d;display:flex;align-items:center;gap:4px}.usr-embed-fail{color:#dc2626;display:flex;align-items:center;gap:4px}@keyframes usr-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.usr-spin{animation:usr-spin 1s linear infinite}.usr-preview-modal{background:var(--surface);border-radius:16px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.usr-preview-body{flex:1;overflow:auto;padding:24px;display:flex;align-items:center;justify-content:center;min-height:400px}.usr-log-modal{background:var(--surface);border-radius:16px;width:95vw;max-width:1200px;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.usr-log-body{padding:16px 20px;overflow:auto;flex:1}@media (max-width: 768px){.usr-adv-search-bar{flex-direction:column}}.od-page{display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;height:calc(100vh - var(--header-height) - 48px)}.od-search-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:12px;padding:14px 16px;background:var(--surface);border-radius:12px;border:1px solid var(--border-color);flex-shrink:0}.od-search-field{display:flex;flex-direction:column;gap:3px}.od-search-field label{font-size:11px;color:var(--text-secondary);font-weight:500}.od-search-field input,.od-search-field select{padding:5px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;min-width:120px}.od-search-actions{display:flex;gap:8px;align-items:flex-end;padding-bottom:1px}.od-table-container{flex:1;min-height:0;min-width:0;overflow:auto;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.od-table-container thead th{position:sticky;top:0;z-index:2;background:var(--surface)}.od-table-container .hl-table th,.od-table-container .hl-table td{white-space:nowrap}.od-order-no{font-family:Courier New,Courier,monospace;font-size:12px;color:var(--text-primary)}.od-openid{font-family:Courier New,Courier,monospace;font-size:12px;color:var(--text-secondary);max-width:200px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.od-product-tag{display:inline-block;padding:3px 10px;border-radius:10px;font-size:12px;font-weight:500;background:#e0f2fe;color:#0369a1}.od-amount{font-weight:600;color:var(--text-primary)}.od-status-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.od-status-pending{background:#fef3c7;color:#b45309}.od-status-paid{background:#dcfce7;color:#15803d}.od-status-refunded{background:#e0e7ff;color:#4338ca}.od-status-failed{background:#fee2e2;color:#dc2626}.od-pagination{display:flex;justify-content:space-between;align-items:center;padding:12px 0;flex-shrink:0}.od-pagination-left{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.od-page-size-select{padding:4px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.od-pagination-right{display:flex;align-items:center;gap:8px}.od-pagination-right button{padding:6px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);font-size:13px;cursor:pointer}.od-pagination-right button:disabled{opacity:.5;cursor:not-allowed}.od-pagination-right span{font-size:13px;color:var(--text-secondary)}@media (max-width: 768px){.od-search-bar{flex-direction:column}}.adm-page{max-width:100%}.adm-table-container{background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.adm-modal-content{background:var(--surface);border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.adm-form{padding:24px;display:flex;flex-direction:column;gap:16px}.adm-role-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.adm-role-super{background:linear-gradient(135deg,#fde68a,#fbbf24);color:#78350f;font-weight:600}.adm-role-normal{background:#dbeafe;color:#1d4ed8}.adm-form .form-actions{display:flex;justify-content:flex-end;gap:12px}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(460px,41.6667%) minmax(600px,1fr);background:#f5f7fc;color:#121c2e;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.login-showcase{min-height:100vh;display:flex;align-items:flex-start;padding:150px 72px 72px;box-sizing:border-box;background:linear-gradient(103deg,#082e66,#1459f2);color:#fff}.showcase-content{width:min(456px,100%);margin:0 auto}.showcase-brand{display:flex;align-items:center;gap:14px}.showcase-brand img{width:38px;height:38px;flex:none}.showcase-brand div{display:grid;gap:2px}.showcase-brand strong{font-size:24px;line-height:1.2}.showcase-brand span{color:#d1e3ff;font-size:12px}.showcase-content h1{margin:60px 0 16px;font-size:clamp(30px,2.64vw,38px);line-height:1.42;letter-spacing:-.02em}.showcase-content>p{width:min(430px,100%);margin:0;color:#d1e3ff;font-size:16px;line-height:1.75}.showcase-content ul{display:grid;gap:14px;margin:28px 0 24px;padding:0;list-style:none}.showcase-content li{display:flex;align-items:center;gap:10px;font-size:14px}.showcase-content li i{width:22px;height:22px;display:grid;place-items:center;flex:none;border-radius:50%;background:#408cff;color:#fff}.showcase-security{width:max-content;max-width:100%;padding:8px 14px;box-sizing:border-box;border-radius:16px;background:#ffffff1f;color:#d1e3ff;font-size:12px}.login-workspace{min-height:100vh;display:grid;place-items:center;align-content:center;gap:38px;padding:48px;box-sizing:border-box}.login-shell{width:460px;min-height:610px;display:flex;flex-direction:column;padding:42px;box-sizing:border-box;border-radius:16px;background:#fff;box-shadow:0 12px 32px #0d1f401f}.login-shell--qr{min-height:610px}.login-kicker{align-self:flex-start;padding:5px 10px;border-radius:12px;background:#e8f2ff;color:#1a57c7;font-size:12px}.login-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-top:16px}.login-heading h2{margin:0;color:#121c2e;font-size:30px;line-height:1.35}.login-heading p{margin:10px 0 0;color:#6e7d94;font-size:14px;line-height:1.5}.login-mode-switch{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:none;padding:0 10px;border:1px solid #c9d8f2;border-radius:8px;background:#f5f9ff;color:#1f61ff;font-size:12px;cursor:pointer}.login-form{display:flex;flex:1;flex-direction:column;gap:18px;margin-top:22px}.login-field{display:grid;gap:8px}.login-field label{color:#121c2e;font-size:13px;font-weight:700}.login-input{height:48px;display:flex;align-items:center;gap:10px;padding:0 14px;box-sizing:border-box;border:1px solid #ccd6e5;border-radius:8px;background:#fbfcff;color:#73859e;transition:border-color .2s ease,box-shadow .2s ease}.login-input:focus-within{border-color:#1f61ff;box-shadow:0 0 0 3px #1f61ff1a}.login-input input{min-width:0;height:100%;flex:1;padding:0;border:0;outline:0;background:transparent;color:#121c2e;font:inherit;font-size:14px}.login-input input::placeholder{color:#99a6b8}.login-input>button{width:32px;height:32px;display:grid;place-items:center;margin-right:-8px;padding:0;border:0;background:transparent;color:#73859e;cursor:pointer}.login-assist{height:24px;display:flex;align-items:center;justify-content:space-between}.login-assist label{display:flex;align-items:center;gap:8px;color:#121c2e;font-size:13px;cursor:pointer}.login-assist label input{position:absolute;opacity:0;pointer-events:none}.login-assist label span{width:18px;height:18px;display:grid;place-items:center;border:1px solid #ccd6e5;border-radius:4px;color:transparent}.login-assist label input:checked+span{border-color:#1f61ff;background:#1f61ff;color:#fff}.login-assist>button{padding:4px;border:0;background:transparent;color:#1f61ff;font-size:13px;cursor:pointer}.login-error{margin-top:-8px;padding:8px 11px;border:1px solid #fecaca;border-radius:8px;background:#fff1f2;color:#b42318;font-size:12px}.login-btn{width:100%;min-height:50px;border:0;border-radius:8px;background:#0d3b75;box-shadow:0 7px 16px #0d3b7533;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background .2s ease,opacity .2s ease}.login-btn:hover:not(:disabled){background:#145293}.login-btn:disabled{opacity:.65;cursor:not-allowed}.login-note{margin:auto 0 0;padding:11px 14px;border-radius:8px;background:#f5faff;color:#6e7d94;font-size:12px;line-height:1.5}.login-footer{margin:0;color:#7a8a9e;font-size:12px}.qr-login-panel{display:flex;flex:1;flex-direction:column;align-items:center;padding-top:22px;text-align:center}.qr-frame{position:relative;width:210px;height:210px;display:grid;place-items:center;padding:10px;border:1px solid #dce4ef;border-radius:14px;background:#fff;overflow:hidden}.qr-frame img{width:100%;height:100%;display:block;object-fit:contain}.qr-placeholder{width:100%;height:100%;display:grid;place-items:center;border-radius:10px;background:#f1f5f9;color:#1753d6}.qr-placeholder .spin{animation:login-spin .9s linear infinite}.qr-frame.state-expired .qr-placeholder,.qr-frame.state-denied .qr-placeholder,.qr-frame.state-error .qr-placeholder{color:#b42318}.qr-frame.state-confirmed .qr-placeholder{background:#ecf9f1;color:#078348}.qr-scanned{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;gap:7px;background:#082449e0;color:#fff;font-size:13px;font-weight:700}.qr-login-panel h3{margin:16px 0 5px;color:#172033;font-size:18px}.qr-login-panel>p{min-height:42px;margin:0;color:#66758a;font-size:13px;line-height:1.6}.qr-refresh{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:8px;padding:0 16px;border:1px solid #bfd0eb;border-radius:8px;background:#eef4ff;color:#1753d6;font-weight:700;cursor:pointer}.login-security{width:100%;display:flex;align-items:flex-start;gap:8px;margin-top:auto;padding:11px 13px;box-sizing:border-box;border:1px solid #dbe5f3;border-radius:8px;background:#f5faff;color:#607089;text-align:left;font-size:11px;line-height:1.5}.login-security svg{flex:0 0 auto;color:#16834e}.login-mode-switch:focus-visible,.qr-refresh:focus-visible,.login-btn:focus-visible,.login-input>button:focus-visible,.login-assist>button:focus-visible,.login-assist label input:focus-visible+span{outline:3px solid rgba(31,97,255,.25);outline-offset:2px}@keyframes login-spin{to{transform:rotate(360deg)}}@media (max-width: 980px){.login-page{grid-template-columns:1fr}.login-showcase{min-height:auto;padding:34px 40px}.showcase-content{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 24px;margin:0}.showcase-content h1{grid-column:1 / -1;margin:20px 0 4px;font-size:28px}.showcase-content>p,.showcase-content ul,.showcase-security{display:none}.login-workspace{min-height:auto;padding:48px 24px}}@media (max-width: 560px){.login-showcase{padding:26px 24px}.showcase-brand strong{font-size:20px}.showcase-content h1{font-size:23px;line-height:1.42}.login-workspace{padding:30px 16px calc(30px + env(safe-area-inset-bottom))}.login-shell{width:100%;min-height:570px;padding:30px 24px}.login-heading{flex-direction:column}.login-mode-switch{align-self:flex-end;margin-top:-48px}}@media (prefers-reduced-motion: reduce){.qr-placeholder .spin{animation:none}.login-btn,.login-input{transition:none}}.sr-page{display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;height:calc(100vh - var(--header-height) - 48px)}.sr-table-container{flex:1;min-height:0;min-width:0;overflow:auto;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.sr-table-container thead th{position:sticky;top:0;z-index:2;background:var(--surface)}.sr-table-container .hl-table th,.sr-table-container .hl-table td{white-space:nowrap;vertical-align:top;padding:10px 12px}.sr-openid{font-family:Courier New,Courier,monospace;font-size:12px;color:var(--text-secondary);max-width:180px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.sr-text-cell{max-width:220px;white-space:normal;word-break:break-word;font-size:13px;line-height:1.5}.sr-lv-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.sr-lv-0{background:#f3f4f6;color:#6b7280}.sr-lv-1{background:#dbeafe;color:#1d4ed8}.sr-lv-2{background:#fef3c7;color:#b45309}.sr-lv-3{background:linear-gradient(135deg,#fde68a,#fbbf24);color:#78350f;font-weight:600}.sr-mode-tag{display:inline-block;padding:3px 10px;border-radius:10px;font-size:11px;font-weight:500;background:#e0f2fe;color:#0369a1;white-space:nowrap}.sr-match{font-size:13px;font-weight:500;color:#059669}.sr-losers{display:flex;flex-direction:column;gap:3px}.sr-loser-item{display:flex;align-items:center;gap:6px;font-size:12px}.sr-loser-name{color:var(--text-primary)}.sr-loser-score{color:var(--text-secondary);font-size:11px}.sr-expand-btn{display:inline-flex;align-items:center;gap:2px;background:none;border:none;color:var(--primary-color);font-size:11px;cursor:pointer;padding:2px 0}.sr-expand-btn:hover{text-decoration:underline}.sr-muted{color:var(--text-secondary);font-size:13px}.sr-pagination{display:flex;justify-content:space-between;align-items:center;padding:12px 0;flex-shrink:0}.sr-pagination-left{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.sr-page-size-select{padding:4px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.sr-pagination-right{display:flex;align-items:center;gap:8px}.sr-pagination-right button{padding:6px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);font-size:13px;cursor:pointer}.sr-pagination-right button:disabled{opacity:.5;cursor:not-allowed}.sr-pagination-right span{font-size:13px;color:var(--text-secondary)}@media (max-width: 768px){.sr-table-container .hl-table{min-width:1000px}}.qual-page{max-width:100%}.qual-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px}.qual-page .page-title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:6px}.qual-page .page-description{font-size:14px;color:var(--text-secondary)}.qual-page .search-bar-top{display:flex;align-items:center;background:var(--surface);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;height:40px}.qual-page .search-input-top{border:none;outline:none;padding:0 12px;font-size:14px;color:var(--text-primary);background:transparent;width:220px}.qual-page .btn-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--primary-color);color:#fff;border:none;cursor:pointer;transition:background .2s}.qual-page .btn-icon:hover{background:var(--primary-light)}.qual-page .btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.qual-page .btn-primary:hover:not(:disabled){background:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.qual-page .btn-primary:disabled{opacity:.5;cursor:not-allowed}.qual-page .btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.qual-page .btn-secondary:hover{background:var(--background);border-color:var(--primary-color);color:var(--primary-color)}.qual-page .btn-sm{padding:6px 12px;font-size:13px}.qual-table-container{background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color);overflow-x:auto}.qual-table{width:100%;border-collapse:collapse;min-width:1000px}.qual-table thead{background:var(--background)}.qual-table th{padding:14px 12px;text-align:left;font-size:13px;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color);white-space:nowrap}.qual-table th.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none}.qual-table th.sortable-th:hover{color:var(--primary-color)}.qual-table td{padding:12px;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border-color);vertical-align:top}.qual-table tbody tr:hover{background:#08326505}.qual-page .id-cell{font-family:monospace;color:var(--primary-color);font-weight:600;white-space:nowrap}.qual-page .datetime-cell{white-space:nowrap;font-size:12px;color:var(--text-secondary)}.qual-page .title-cell{max-width:200px;font-weight:500;word-break:break-word}.qual-page .files-cell{min-width:120px}.qual-page .file-link{background:none;border:none;color:var(--primary-color);font-size:12px;cursor:pointer;padding:2px 0;text-align:left;text-decoration:underline;word-break:break-all;transition:opacity .2s}.qual-page .file-link:hover{opacity:.7}.qual-page .teachers-cell{min-width:140px}.qual-page .teacher-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.qual-page .teacher-name{font-size:13px;color:var(--text-primary)}.qual-page .teacher-name-link{background:none;border:none;font-size:13px;color:var(--primary-color);cursor:pointer;padding:0;text-decoration:underline;text-align:left}.qual-page .teacher-name-link:hover{opacity:.8}.qual-page .adv-search-datetime-range{display:flex;align-items:center;gap:6px}.qual-page .adv-search-datetime-range input{padding:6px 10px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.qual-page .no-teacher{color:var(--text-secondary)}.qual-page .teacher-actions{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.qual-page .creator-cell{white-space:nowrap}.qual-table td.cell-created-by-openid{max-width:none;overflow:visible;vertical-align:middle;text-align:center}.qual-page .created-by-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;line-height:1.35}.qual-page .created-by-openid-text{display:block;white-space:nowrap;font-size:12px;color:var(--text-secondary);max-width:none}.qual-page .created-by-name-text{display:block;white-space:nowrap;font-size:13px;font-weight:500;color:var(--text-primary)}.qual-page .public-cell{white-space:nowrap}.qual-page .loading-cell{text-align:center;padding:40px!important;color:var(--text-secondary)}.qual-page .status-tag{display:inline-block;padding:2px 7px;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.qual-page .status-tag.status-audit-pending{background:#fef3c7;color:#b45309}.qual-page .status-public{background:#dcfce7;color:#16a34a}.qual-page .status-private{background:#f3f4f6;color:#6b7280}.qual-page .action-buttons{display:flex;gap:6px;flex-wrap:wrap}.qual-page .action-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:none;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s;white-space:nowrap}.qual-page .action-btn:disabled{opacity:.5;cursor:not-allowed}.qual-page .btn-xs{padding:3px 8px;font-size:11px}.qual-page .edit-btn{background:#e0f2fe;color:#0369a1}.qual-page .edit-btn:hover:not(:disabled){background:#bae6fd}.qual-page .delete-btn{background:#fee2e2;color:#dc2626}.qual-page .delete-btn:hover:not(:disabled){background:#fecaca}.qual-page .user-btn{background:#f0fdf4;color:#16a34a}.qual-page .user-btn:hover{background:#dcfce7}.qual-page .toggle-switch{display:inline-flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:3px 10px 3px 4px;border-radius:20px;transition:background .25s;width:fit-content}.qual-page .toggle-switch.on{background:#dcfce7}.qual-page .toggle-switch.off{background:#f3f4f6}.qual-page .toggle-knob{width:20px;height:20px;border-radius:50%;transition:background .25s;flex-shrink:0}.qual-page .toggle-switch.on .toggle-knob{background:#16a34a}.qual-page .toggle-switch.off .toggle-knob{background:#9ca3af}.qual-page .toggle-label{font-size:12px;font-weight:500}.qual-page .toggle-switch.on .toggle-label{color:#16a34a}.qual-page .toggle-switch.off .toggle-label{color:#6b7280}.qual-page .pagination{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding:0 4px}.qual-page .pagination-info{font-size:13px;color:var(--text-secondary)}.qual-page .pagination-btns{display:flex;gap:4px}.qual-page .page-btn{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s}.qual-page .page-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.qual-page .page-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.qual-page .page-btn:disabled{opacity:.4;cursor:not-allowed}.qual-page .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.qual-page .modal-content{background:var(--surface);border-radius:16px;width:100%;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 25px 60px #0003}.qual-page .modal-medium{max-width:640px}.qual-page .modal-large{max-width:780px}.qual-page .modal-xlarge{max-width:900px}.qual-page .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color);flex-shrink:0}.qual-page .modal-title{font-size:20px;font-weight:600;color:var(--text-primary)}.qual-page .modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:all .2s}.qual-page .modal-close:hover{background:var(--background);color:var(--text-primary)}.qual-page .modal-body{padding:24px;overflow-y:auto;flex:1}.qual-page .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color);flex-shrink:0}.qual-page .preview-modal{background:var(--surface);border-radius:16px;width:100%;max-width:960px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 25px 60px #0003}.qual-page .preview-filename{max-width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.qual-page .preview-body{flex:1;overflow:hidden;display:flex;align-items:stretch;justify-content:center;min-height:400px}.qual-page .preview-image{max-width:100%;max-height:80vh;object-fit:contain;border-radius:0 0 16px 16px;align-self:center;margin:auto;padding:16px}.qual-page .preview-iframe{width:100%;height:78vh;border:none;border-radius:0 0 16px 16px;display:block}.qual-page .preview-docx-wrap{flex:1;overflow-y:auto;padding:24px 32px;background:#f9f9f9;border-radius:0 0 16px 16px;position:relative}.qual-page .preview-docx{background:#fff;padding:32px 40px;min-height:400px;box-shadow:0 2px 8px #00000014;border-radius:4px}.qual-page .preview-docx .docx-render{font-family:SimSun,宋体,serif;font-size:14px;line-height:1.8}.qual-page .preview-text-wrap{flex:1;overflow-y:auto;padding:24px;background:#1e1e1e;border-radius:0 0 16px 16px}.qual-page .preview-text{white-space:pre-wrap;word-break:break-word;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:1.7;color:#d4d4d4;margin:0}.qual-page .preview-loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-secondary);font-size:14px;gap:8px}.qual-page .preview-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#f9f9f9e6;color:var(--text-secondary);font-size:14px;z-index:5}.qual-page .preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px;color:var(--text-secondary);text-align:center;width:100%}.qual-page .form-group{margin-bottom:20px}.qual-page .form-label{display:block;font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.qual-page .required{color:#ef4444}.qual-page .underline-input{width:100%;padding:10px 0;border:none;border-bottom:2px solid #e5e7eb;background:transparent;font-size:14px;color:var(--text-primary);transition:all .2s;box-sizing:border-box}.qual-page .underline-input:focus{outline:none;border-bottom-color:var(--primary-color)}.qual-page .underline-input.input-error{border-bottom-color:#ef4444}.qual-page .underline-input.input-success{border-bottom-color:#16a34a}.qual-page .form-input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;color:var(--text-primary);background:var(--surface);transition:all .2s;box-sizing:border-box}.qual-page .form-input:focus{outline:none;border-color:var(--primary-color)}.qual-page .openid-input-wrap{position:relative}.qual-page .openid-hint{display:block;margin-top:5px;font-size:12px;color:var(--text-secondary)}.qual-page .openid-hint.error{color:#ef4444}.qual-page .openid-hint.success{color:#16a34a}.qual-page .upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:2px dashed var(--border-color);border-radius:8px;padding:20px;cursor:pointer;transition:all .2s;color:var(--text-secondary);font-size:14px;text-align:center}.qual-page .upload-zone:hover{border-color:var(--primary-color);background:#08326508;color:var(--primary-color)}.qual-page .upload-zone small{font-size:12px;opacity:.7}.qual-page .upload-zone-sm{padding:12px;font-size:13px}.qual-page .file-list-edit{margin-bottom:8px;display:flex;flex-direction:column;gap:6px}.qual-page .file-item-edit{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--background);border-radius:6px;font-size:13px}.qual-page .file-name-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.qual-page .file-size-text{color:var(--text-secondary);font-size:12px;white-space:nowrap}.qual-page .file-remove-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#9ca3af;cursor:pointer;padding:2px;border-radius:4px;transition:all .2s;flex-shrink:0}.qual-page .file-remove-btn:hover{color:#ef4444;background:#fee2e2}.qual-page .zones-area{margin-top:16px}.qual-page .zones-area.zones-disabled{opacity:.4;pointer-events:none}.qual-page .zones-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.qual-page .file-zone{border:1px solid var(--border-color);border-radius:10px;padding:14px;background:var(--background)}.qual-page .file-zone.disabled{opacity:.5;pointer-events:none}.qual-page .file-zone-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.qual-page .file-zone-label{font-size:13px;font-weight:600;color:var(--text-primary)}.qual-page .file-zone-hint{font-size:12px;color:var(--text-secondary)}.qual-page .file-zone-files{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.qual-page .file-zone-item{display:flex;align-items:center;gap:8px;padding:4px 8px;background:var(--surface);border-radius:5px;font-size:12px}.qual-page .file-zone-thumb{width:44px;height:44px;object-fit:cover;border-radius:4px;cursor:zoom-in;flex-shrink:0;border:1px solid var(--border-color);transition:transform .15s}.qual-page .file-zone-thumb:hover{transform:scale(1.05)}.qual-page .file-zone-icon{flex-shrink:0;color:var(--text-secondary)}.qual-page .file-zone-item-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.qual-page .file-action-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6b7280;cursor:pointer;padding:2px;border-radius:4px;transition:all .15s}.qual-page .file-action-btn:hover{color:var(--primary-color);background:#eff6ff}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;z-index:2000;display:flex;align-items:center;justify-content:center;padding:40px;cursor:zoom-out;animation:qual-lightbox-fade .18s ease-out}.image-lightbox-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px #0006;cursor:default}.image-lightbox-close{position:absolute;top:20px;right:24px;width:36px;height:36px;border-radius:50%;background:#ffffff1f;border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s}.image-lightbox-close:hover{background:#ffffff40}@keyframes qual-lightbox-fade{0%{opacity:0}to{opacity:1}}.qual-page .add-zone-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;border:2px dashed var(--border-color);border-radius:8px;background:none;color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .2s}.qual-page .add-zone-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.qual-page .progress-container{padding:24px 0;text-align:center}.qual-page .progress-msg{font-size:15px;color:var(--text-primary);margin-bottom:16px;font-weight:500}.qual-page .progress-bar-wrap{width:100%;height:8px;background:var(--border-color);border-radius:4px;overflow:hidden;margin-bottom:8px}.qual-page .progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),#3b82f6);border-radius:4px;transition:width .5s ease}.qual-page .progress-pct{font-size:13px;color:var(--text-secondary)}.qual-page .inner-table{width:100%;border-collapse:collapse;font-size:13px}.qual-page .inner-table th{padding:8px 10px;background:var(--background);text-align:left;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.qual-page .inner-table td{padding:8px 10px;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.qual-page .inner-table tbody tr:last-child td{border-bottom:none}.qual-page .search-bar{display:flex;align-items:center;gap:8px;background:var(--background);border:1px solid var(--border-color);border-radius:8px;padding:8px 12px;margin-bottom:16px}.qual-page .search-input{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:var(--text-primary)}.qual-page .empty-tip{text-align:center;padding:30px;color:var(--text-secondary);font-size:14px}.qual-page .adv-search-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;padding:16px 20px;background:var(--surface);border-radius:12px;border:1px solid var(--border-color);margin-bottom:16px}.qual-page .adv-search-field{display:flex;flex-direction:column;gap:4px;min-width:120px}.qual-page .adv-search-field label{font-size:12px;color:var(--text-secondary);font-weight:500}.qual-page .adv-search-field input,.qual-page .adv-search-field select{height:34px;padding:0 10px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);background:var(--background);outline:none}.qual-page .adv-search-field input:focus,.qual-page .adv-search-field select:focus{border-color:var(--primary-color)}.qual-page .adv-search-actions{display:flex;gap:8px;align-items:flex-end;padding-bottom:1px}.qual-page .btn-sm{padding:6px 14px!important;font-size:13px!important;height:34px;display:inline-flex;align-items:center;gap:4px}.qual-page .batch-action-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;margin-bottom:12px;font-size:13px;color:#92400e}.qual-page .btn-danger{background:#ef4444!important;color:#fff!important;border:none!important;border-radius:6px;padding:6px 14px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.qual-page .btn-danger:hover{background:#dc2626!important}.qual-page .row-selected{background:#eff6ff!important}.qual-page .batch-delete-confirm{background:var(--surface);border-radius:16px;padding:28px 32px;max-width:420px;margin:auto;box-shadow:var(--shadow-xl)}.qual-page .batch-delete-confirm h3{margin:0 0 12px;font-size:18px;color:var(--text-primary)}.qual-page .batch-delete-confirm p{font-size:14px;color:var(--text-secondary);margin:0 0 20px}.qual-page .batch-delete-actions{display:flex;justify-content:flex-end;gap:10px}.qual-page .batch-assoc-info{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;background:var(--background);border-radius:8px;border:1px solid var(--border-color)}.qual-page .batch-assoc-label{font-size:13px;color:var(--text-secondary)}.qual-page .batch-assoc-count{font-size:14px;font-weight:600;color:var(--primary-color)}.qual-page .batch-assoc-selected{margin-top:12px;padding:8px 14px;background:#eff6ff;border-radius:6px;font-size:13px;color:var(--primary-color);font-weight:500;text-align:center}.qual-page .pagination{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding:0 4px}.qual-page .pagination-left{display:flex;align-items:center;gap:8px}.qual-page .page-size-select{height:30px;padding:0 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);background:var(--surface);cursor:pointer;outline:none}@media (max-width: 768px){.qual-page .page-header{flex-direction:column}.qual-table-container{border-radius:8px}}.tch-embed-modal{background:var(--surface);border-radius:12px;width:480px;max-width:90vw;box-shadow:0 20px 60px #0000004d}.tch-embed-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.tch-embed-modal .modal-header h2{font-size:18px;font-weight:600;margin:0}.tch-embed-modal .modal-close{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:4px}.tch-embed-modal .modal-close:hover{color:var(--text-primary)}.tch-embed-body{padding:20px}.tch-embed-desc{font-size:14px;color:var(--text-secondary);margin-bottom:16px;line-height:1.5}.tch-embed-start-btn{width:100%;padding:12px 20px;font-size:15px;margin-top:16px}.tch-embed-progress{text-align:center;padding:20px 0}.tch-embed-progress-bar-wrap{height:8px;background:var(--background);border-radius:4px;overflow:hidden;margin:16px 0}.tch-embed-progress-bar{height:100%;background:linear-gradient(90deg,var(--primary-color),#6366f1);border-radius:4px;transition:width .3s ease}.tch-embed-progress-text{font-size:14px;color:var(--text-primary);margin-bottom:12px}.tch-embed-stats{display:flex;justify-content:center;gap:16px;font-size:13px}.tch-embed-stat-ok{color:#10b981}.tch-embed-stat-fail{color:#ef4444}.tch-embed-stat-total{color:var(--text-secondary)}.tch-spin{animation:spin 1s linear infinite;display:inline-block}.ag-page{max-width:100%}.ag-header-actions{display:flex;align-items:center;gap:12px}.ag-table-container{background:var(--surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.ag-table{width:100%;border-collapse:collapse}.ag-table thead{background:var(--background)}.ag-table th{padding:14px 16px;text-align:left;font-size:13px;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color)}.ag-table td{padding:14px 16px;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--border-color);vertical-align:middle}.ag-table tbody tr{transition:background .15s}.ag-table tbody tr:hover{background:var(--background)}.ag-empty{text-align:center;padding:40px!important;color:var(--text-secondary)}.ag-datetime{white-space:nowrap;font-size:13px;color:var(--text-secondary)}.ag-title-cell{font-weight:500}.ag-content-cell{color:var(--text-secondary);max-width:300px}.ag-type-label{display:inline-block;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.ag-type-user_agreement{background:#dbeafe;color:#1e40af}.ag-type-privacy_policy{background:#fce7f3;color:#9d174d}.ag-version-badge{display:inline-block;background:#f0f0f0;color:#374151;font-size:12px;font-weight:600;padding:3px 10px;border-radius:12px}.ag-version-tag{font-size:13px;font-weight:500;color:var(--primary-color);margin-left:8px}.ag-badge-latest{display:inline-block;background:#16a34a;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;margin-left:6px;vertical-align:middle}.ag-action-icons{display:flex;align-items:center;gap:6px}.ag-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;transition:all .2s;background:transparent}.ag-icon-view{color:#7c3aed}.ag-icon-view:hover{background:#ede9fe}.ag-icon-edit{color:#0369a1}.ag-icon-edit:hover{background:#e0f2fe}.ag-icon-history{color:#d97706}.ag-icon-history:hover{background:#fef3c7}.ag-modal-content{background:var(--surface);border-radius:16px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.ag-modal-body{padding:0 24px 24px}.ag-modal-richtext{max-width:900px;max-height:92vh}.ag-editor-form{padding:24px}.ag-bordered-input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:var(--text-primary);background:transparent;transition:border-color .2s}.ag-bordered-input:focus{outline:none;border-color:var(--primary-color)}.ag-quill-wrap{border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:border-color .2s}.ag-quill-wrap:focus-within{border-color:var(--primary-color)}.ag-quill-wrap .ql-toolbar.ql-snow{border:none;border-bottom:1px solid #e5e7eb;background:#fafbfc;padding:8px 12px}.ag-quill-wrap .ql-container.ql-snow{border:none;font-size:14px;font-family:inherit}.ag-quill-wrap .ql-editor{min-height:320px;max-height:50vh;overflow-y:auto;line-height:1.8;padding:16px;color:var(--text-primary)}.ag-quill-wrap .ql-editor.ql-blank:before{color:var(--text-secondary);font-style:normal}.ag-quill-wrap .ql-editor img{max-width:100%;height:auto;border-radius:6px;margin:8px 0}.ag-quill-wrap .ql-editor h1{font-size:24px;font-weight:700;margin:16px 0 8px}.ag-quill-wrap .ql-editor h2{font-size:20px;font-weight:600;margin:14px 0 6px}.ag-quill-wrap .ql-editor h3{font-size:17px;font-weight:600;margin:12px 0 4px}.ag-quill-wrap .ql-editor blockquote{border-left:4px solid var(--primary-color);padding-left:16px;color:var(--text-secondary);margin:12px 0}.ag-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.ag-type-select{padding:32px 24px 40px}.ag-type-hint{font-size:15px;color:var(--text-secondary);margin-bottom:24px;text-align:center}.ag-type-cards{display:flex;gap:20px;justify-content:center}.ag-type-card{flex:1;max-width:260px;padding:32px 24px;border:2px solid #e5e7eb;border-radius:14px;text-align:center;cursor:pointer;transition:all .25s}.ag-type-card:hover{border-color:var(--primary-color);background:#f0f7ff;transform:translateY(-2px);box-shadow:0 4px 16px #0832651a}.ag-type-card-icon{font-size:36px;margin-bottom:12px}.ag-type-card-title{font-size:17px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.ag-type-card-desc{font-size:13px;color:var(--text-secondary);line-height:1.5}.ag-modal-preview{max-width:800px;max-height:90vh}.ag-preview-meta{display:flex;gap:20px;padding:0 24px 12px;font-size:13px;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.ag-preview-body{padding:24px;max-height:65vh;overflow-y:auto}.ag-richtext-preview{line-height:1.8;color:var(--text-primary);font-size:14px}.ag-richtext-preview h1{font-size:24px;font-weight:700;margin:16px 0 8px}.ag-richtext-preview h2{font-size:20px;font-weight:600;margin:14px 0 6px}.ag-richtext-preview h3{font-size:17px;font-weight:600;margin:12px 0 4px}.ag-richtext-preview img{max-width:100%;height:auto;border-radius:6px;margin:8px 0}.ag-richtext-preview blockquote{border-left:4px solid var(--primary-color);padding-left:16px;color:var(--text-secondary);margin:12px 0}.ag-richtext-preview ul,.ag-richtext-preview ol{padding-left:24px;margin:8px 0}.ag-richtext-preview a{color:var(--primary-color);text-decoration:underline}.ag-modal-history{max-width:800px;max-height:85vh}.ag-row-current{background:#f0f9ff}.mb-page{display:flex;flex-direction:column;width:100%;min-width:0;overflow:hidden;height:calc(100vh - var(--header-height) - 48px)}.mb-search-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:12px;padding:14px 16px;background:var(--surface);border-radius:12px;border:1px solid var(--border-color);flex-shrink:0}.mb-search-field{display:flex;flex-direction:column;gap:3px}.mb-search-field label{font-size:11px;color:var(--text-secondary);font-weight:500}.mb-search-field input,.mb-search-field select{padding:5px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;min-width:120px}.mb-search-actions{display:flex;gap:8px;align-items:flex-end;padding-bottom:1px}.mb-table-container{flex:1;min-height:0;min-width:0;overflow:auto;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.mb-table-container thead th{position:sticky;top:0;z-index:2;background:var(--surface)}.mb-table-container .hl-table th,.mb-table-container .hl-table td{white-space:nowrap}.mb-openid{font-family:Courier New,Courier,monospace;font-size:12px;color:var(--text-secondary);max-width:200px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.mb-lv-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.mb-lv-0{background:#f3f4f6;color:#6b7280}.mb-lv-1{background:#dbeafe;color:#1d4ed8}.mb-lv-2{background:#fef3c7;color:#b45309}.mb-lv-3{background:linear-gradient(135deg,#fde68a,#fbbf24);color:#78350f;font-weight:600}.mb-preview-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);color:var(--primary-color);font-size:13px;cursor:pointer;transition:all .2s;white-space:nowrap}.mb-preview-btn:hover:not(:disabled){border-color:var(--primary-color);background:#0832650a}.mb-preview-btn:disabled{opacity:.6;cursor:not-allowed}.mb-pagination{display:flex;justify-content:space-between;align-items:center;padding:12px 0;flex-shrink:0}.mb-pagination-left{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.mb-page-size-select{padding:4px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:13px}.mb-pagination-right{display:flex;align-items:center;gap:8px}.mb-pagination-right button{padding:6px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--surface);font-size:13px;cursor:pointer}.mb-pagination-right button:disabled{opacity:.5;cursor:not-allowed}.mb-pagination-right span{font-size:13px;color:var(--text-secondary)}.mb-detail-modal{background:var(--surface);border-radius:16px;width:100%;max-width:700px;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.mb-detail-body{flex:1;overflow:auto;padding:24px}.mb-section{margin-bottom:20px}.mb-section-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border-color)}.mb-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mb-info-item{display:flex;flex-direction:column;gap:3px}.mb-info-label{font-size:12px;color:var(--text-secondary);font-weight:500}.mb-info-value{font-size:14px;color:var(--text-primary)}.mb-openid-val{font-family:Courier New,Courier,monospace;font-size:12px;word-break:break-all}.mb-tags{display:flex;flex-wrap:wrap;gap:6px}.mb-tag{display:inline-block;padding:3px 10px;background:#eff6ff;color:#1d4ed8;border-radius:10px;font-size:12px}.mb-text-wrap{font-size:14px;color:var(--text-primary);line-height:1.7;white-space:pre-wrap;word-break:break-word}@media (max-width: 768px){.mb-info-grid{grid-template-columns:1fr}.mb-search-bar{flex-direction:column}}.notifications-page{max-width:100%;padding:0}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px}.page-title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:6px}.page-description{font-size:14px;color:var(--text-secondary)}.refresh-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.refresh-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.error-alert{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;margin-bottom:16px;color:#dc2626}.error-alert button{background:none;border:none;font-size:20px;color:#dc2626;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.msg-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid var(--border-color);padding-bottom:0}.msg-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;position:relative;margin-bottom:-1px}.msg-tab:hover{color:var(--text-primary);background:#00000005}.msg-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--primary-color);color:#fff;font-size:11px;font-weight:600;border-radius:9px}.msg-content{min-height:400px}.msg-section{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.msg-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--text-secondary)}.msg-loading p{margin-top:16px;font-size:14px}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.msg-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--text-secondary)}.msg-empty p{margin-top:16px;font-size:14px}.msg-list{display:flex;flex-direction:column;gap:16px}.msg-card{background:var(--surface);border:1px solid var(--border-color);border-radius:12px;padding:20px;transition:all .2s ease}.msg-card:hover{box-shadow:0 4px 12px #00000014;border-color:var(--primary-color)}.msg-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.msg-applicant{display:flex;align-items:center;gap:12px}.msg-nickname{font-size:16px;font-weight:600;color:var(--text-primary)}.msg-time{font-size:13px;color:var(--text-secondary)}.msg-status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:500}.msg-status.pending{background:#fef3c7;color:#d97706}.msg-status.accepted{background:#d1fae5;color:#059669}.msg-status.rejected{background:#fee2e2;color:#dc2626}.msg-card-body{display:flex;flex-direction:column;gap:8px}.msg-info-row{display:flex;align-items:flex-start;gap:8px}.msg-label{font-size:13px;color:var(--text-secondary);flex-shrink:0;min-width:70px}.msg-value{font-size:14px;color:var(--text-primary)}.msg-value.requirement{word-break:break-all;line-height:1.5}.msg-card-actions{display:flex;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color)}.btn-accept,.btn-reject{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.btn-accept{background:#10b981;color:#fff}.btn-accept:hover:not(:disabled){background:#059669}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover:not(:disabled){background:#dc2626}.btn-accept:disabled,.btn-reject:disabled{opacity:.6;cursor:not-allowed}.msg-notify-type{display:flex;align-items:center;gap:12px}.notify-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:500}.notify-tag.apply{background:#dbeafe;color:#2563eb}.notify-tag.audit{background:#e0e7ff;color:#6366f1}.msg-notify-text{font-size:14px;color:var(--text-primary);line-height:1.6}.notify-card.reject-audit{border-left:3px solid #ef4444}.msg-reject-reason{margin-top:8px;padding:10px 12px;background:#fef2f2;border-radius:6px;font-size:13px}.reason-label{color:#dc2626;font-weight:500}.reason-text{color:#991b1b}@media (max-width: 768px){.page-header{flex-direction:column;gap:12px}.msg-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.msg-tab{white-space:nowrap}.msg-card-header{flex-direction:column;align-items:flex-start;gap:8px}.msg-card-actions{flex-direction:column}.btn-accept,.btn-reject{width:100%;justify-content:center}}.rl-page{max-width:100%}.rl-table-container{background:var(--surface);border-radius:12px;overflow:auto}.rl-name-tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-family:monospace;background:#f1f5f9;color:#475569}.rl-perm-tags{display:flex;flex-wrap:wrap;gap:4px}.rl-perm-tag{display:inline-block;padding:2px 8px;border-radius:12px;font-size:12px;background:#eff6ff;color:#2563eb}.rl-perm-all{background:#dcfce7;color:#15803d;font-weight:600}.rl-muted{color:#94a3b8;font-size:13px}.rl-modal-content{background:var(--surface);border-radius:12px;width:640px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000026}.rl-form{padding:0 24px 24px;display:flex;flex-direction:column;gap:16px}.rl-perm-grid{display:flex;flex-direction:column;gap:12px;border:1px solid var(--border);border-radius:8px;padding:16px;max-height:340px;overflow-y:auto}.rl-perm-group{border-bottom:1px solid var(--border);padding-bottom:10px}.rl-perm-group:last-child{border-bottom:none;padding-bottom:0}.rl-perm-group-header{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:600;font-size:14px;color:var(--text);margin-bottom:8px}.rl-perm-group-header input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb;cursor:pointer}.rl-perm-group-label{-webkit-user-select:none;user-select:none}.rl-perm-items{display:flex;flex-wrap:wrap;gap:6px 16px;padding-left:24px}.rl-perm-item{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:var(--text-secondary)}.rl-perm-item input[type=checkbox]{width:14px;height:14px;accent-color:#2563eb;cursor:pointer}.rl-perm-item span{-webkit-user-select:none;user-select:none}.ms-page{padding:24px}.ms-tabs{display:flex;gap:12px;margin-bottom:20px}.ms-tabs button{padding:8px 20px;border:1px solid #ddd;background:#fff;border-radius:8px;cursor:pointer}.ms-tabs button.active{background:#f57c00;color:#fff;border-color:#f57c00}.ms-btn-primary{display:inline-flex;align-items:center;gap:6px;background:#f57c00;color:#fff;border:none;padding:10px 16px;border-radius:8px;cursor:pointer}.ms-table-wrap{background:#fff;border-radius:12px;padding:16px;overflow:auto}.ms-table{width:100%;border-collapse:collapse;font-size:14px}.ms-table th,.ms-table td{padding:10px 12px;border-bottom:1px solid #eee;text-align:left}.ms-remark{max-width:200px}.ms-actions{display:flex;gap:8px}.ms-actions button{border:none;background:transparent;cursor:pointer;color:#666}.ms-modal{background:#fff;border-radius:12px;padding:24px;max-width:720px;width:90%;max-height:90vh;overflow:auto}.ms-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.ms-form-grid label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#666}.ms-form-grid input,.ms-form-grid textarea{padding:8px 10px;border:1px solid #ddd;border-radius:6px}.ms-full{grid-column:1 / -1}.ms-check{flex-direction:row!important;align-items:center}.ms-priv-block{margin-top:12px}.ms-priv-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ms-priv-row{display:grid;grid-template-columns:1fr 2fr 1fr auto;gap:8px;margin-bottom:8px}.ms-modal-foot{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.ms-gift-panel{background:#fff;border-radius:12px;padding:24px;max-width:480px}.ms-gift-desc{color:#666;font-size:14px;line-height:1.6;margin:0 0 20px}.ms-gift-form{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.ms-gift-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:#333}.ms-gift-form input{padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:15px}.ms-gift-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#999;margin-bottom:20px}.prompt-mgmt-page{padding:24px;max-width:1200px}.prompt-shared-note{background:#f0f7ff;border:1px solid #c5ddff;border-radius:8px;padding:12px 16px;margin-bottom:20px;font-size:14px;color:#333;line-height:1.5}.prompt-mgmt-layout{display:flex;gap:24px;align-items:flex-start}.prompt-keys{width:220px;flex-shrink:0;display:flex;flex-direction:column;gap:8px}.prompt-key-btn{text-align:left;padding:12px 14px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.prompt-key-btn.active{border-color:#0379ff;background:#f0f7ff}.prompt-key-label{display:block;font-weight:600;font-size:14px;color:#1a1a1a}.prompt-key-id{display:block;font-size:12px;color:#888;margin-top:4px}.prompt-editor{flex:1;min-width:0}.prompt-desc{font-size:14px;color:#666;margin:0 0 16px}.prompt-textarea{width:100%;font-family:ui-monospace,Cascadia Code,monospace;font-size:13px;line-height:1.5;padding:12px;border:1px solid #ddd;border-radius:8px;resize:vertical;box-sizing:border-box}.prompt-meta{font-size:12px;color:#999;margin:12px 0 16px}.prompt-muted{color:#888;font-size:14px}.prompt-schema-panel{margin-bottom:24px;padding:16px 18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.prompt-schema-title{margin:0 0 8px;font-size:15px;font-weight:600;color:#1a1a1a}.prompt-schema-hint{margin:0 0 10px;font-size:13px;color:#555;line-height:1.5}.prompt-schema-meta{margin:0 0 12px;font-size:13px;color:#666}.prompt-schema-meta code{font-size:12px;background:#eef2f7;padding:2px 6px;border-radius:4px}.prompt-schema-badge{margin-left:8px;font-size:11px;color:#0379ff;background:#e8f2ff;padding:2px 8px;border-radius:4px}.prompt-schema-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:14px}.prompt-schema-table th,.prompt-schema-table td{border:1px solid #e2e8f0;padding:8px 10px;text-align:left;vertical-align:top}.prompt-schema-table th{background:#eef2f7;font-weight:600;color:#333}.prompt-schema-table code{font-size:12px;color:#0d47a1}.prompt-schema-example-wrap{margin-top:4px}.prompt-schema-example-label{font-size:12px;font-weight:600;color:#666;margin-bottom:6px}.prompt-schema-example{margin:0;padding:12px 14px;background:#1e293b;color:#e2e8f0;border-radius:8px;font-size:12px;line-height:1.5;overflow-x:auto;font-family:ui-monospace,Cascadia Code,Consolas,monospace}.prompt-schema-footnote{margin:-12px 0 20px;font-size:12px;color:#888}.prompt-subtabs{display:flex;gap:8px;margin-bottom:16px;border-bottom:1px solid #e2e8f0;padding-bottom:0}.prompt-subtab{padding:10px 18px;border:none;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:#666;margin-bottom:-1px;transition:color .15s,border-color .15s}.prompt-subtab:hover{color:#0379ff}.prompt-subtab.active{color:#0379ff;border-bottom-color:#0379ff}.prompt-search-settings{margin-bottom:20px;padding:16px 18px;border:1px solid #e5e7eb;border-radius:10px;background:#f8fafc}.prompt-search-settings-title{margin:0 0 12px;font-size:15px;font-weight:600;color:#111827}.prompt-search-toggle{display:flex;align-items:flex-start;gap:10px;cursor:pointer;line-height:1.5}.prompt-search-toggle input{margin-top:4px}.prompt-search-toggle small{display:block;margin-top:4px;color:#6b7280;font-size:12px;font-weight:400}.prompt-search-settings-save{margin-top:12px}.prompt-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.prompt-label-row .form-label{margin-bottom:0}.prompt-restore-default-btn{flex-shrink:0;padding:6px 12px;font-size:13px;white-space:nowrap}.fv-algo-section{margin-bottom:28px;padding:18px 20px;border:1px solid #e5e7eb;border-radius:10px;background:#fafbfc}.fv-algo-title{margin:0 0 8px;font-size:16px;font-weight:600;color:#111827}.fv-algo-note{margin:0 0 16px;font-size:13px;color:#6b7280;line-height:1.5}.fv-algo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.fv-algo-grid-4{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}@media (max-width: 960px){.fv-algo-grid,.fv-algo-grid-4{grid-template-columns:1fr}}.fv-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#374151}.fv-field input{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px}.fv-formula-textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55}.fv-hint{margin:8px 0 0;font-size:12px;color:#6b7280}.fv-var-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding:10px 12px;background:#f3f4f6;border-radius:8px;font-size:12px}.fv-var-legend-title{color:#4b5563;font-weight:500}.fv-var-chip{padding:2px 8px;background:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:12px;color:#1f2937}.fv-expr-textarea{min-height:56px}.fv-preview-box{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:14px 16px;background:#eff6ff;border-radius:8px;font-size:14px}.fv-preview-input{width:120px;padding:6px 10px;border:1px solid #93c5fd;border-radius:6px}.fv-preview-result{color:#0379ff;font-size:18px}.fv-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.ct-page{max-width:100%}.ct-stats-bar{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.ct-stat-card{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:12px;padding:16px 20px;box-shadow:var(--shadow-sm);min-width:140px}.ct-stat-icon{color:var(--primary-color);opacity:.85}.ct-stat-value{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1.2}.ct-stat-label{font-size:12px;color:var(--text-secondary);margin-top:2px}.ct-stat-search{flex:1;min-width:280px;position:relative;padding:12px 16px}.ct-search-icon{color:var(--text-secondary);flex-shrink:0}.ct-search-input{flex:1;border:none;outline:none;font-size:14px;color:var(--text-primary);background:transparent;min-width:0}.ct-search-clear{border:none;background:#f1f5f9;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);flex-shrink:0}.ct-search-clear:hover{background:#e2e8f0}.ct-category-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.ct-cat-pill{border:1px solid var(--border-color);background:var(--surface);border-radius:20px;padding:6px 14px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.ct-cat-pill:hover{border-color:var(--cat-color, var(--secondary-color));color:var(--cat-color, var(--secondary-color))}.ct-cat-pill.active{background:var(--cat-color, var(--primary-color));border-color:var(--cat-color, var(--primary-color));color:#fff;font-weight:500}.ct-cat-pill:first-child.active{background:var(--primary-color);border-color:var(--primary-color)}.ct-table-container{background:var(--surface);border-radius:12px;overflow:auto;box-shadow:var(--shadow-sm)}.ct-table tbody tr:hover{background:#f8fafc}.ct-id{color:var(--text-secondary);font-size:13px;font-family:monospace}.ct-category-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.ct-name{font-weight:600;color:var(--text-primary)}.ct-kw-cell{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.ct-kw-tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;background:#f1f5f9;color:#475569;line-height:1.6}.ct-kw-more{border:none;background:#e0e7ff;color:#4338ca;border-radius:4px;padding:2px 8px;font-size:12px;cursor:pointer;font-weight:500}.ct-kw-more:hover{background:#c7d2fe}.ct-sort{text-align:center;color:var(--text-secondary);font-size:13px}.ct-result-hint{margin-top:12px;font-size:13px;color:var(--text-secondary);text-align:right}.ct-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.ct-modal{background:var(--surface);border-radius:16px;width:600px;max-width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #0f172a2e;overflow:hidden}.ct-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color);flex-shrink:0;background:linear-gradient(180deg,#fafbfc,#fff)}.ct-modal-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.ct-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.ct-modal-close:hover{background:#f1f5f9;color:var(--text-primary)}.ct-modal-form{display:flex;flex-direction:column;flex:1;min-height:0}.ct-modal-body{padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.ct-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color);background:#fafbfc;flex-shrink:0}.ct-field{display:flex;flex-direction:column;gap:8px}.ct-label{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.4}.ct-label .required{color:#ef4444}.ct-input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;color:var(--text-primary);background:#fff;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.ct-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #0832651a}.ct-input::placeholder{color:#9ca3af}.ct-form-row{display:flex;gap:16px;align-items:flex-start}.ct-form-grow{flex:1;min-width:0}.ct-form-sort{width:96px;flex-shrink:0}.ct-mode-tabs{display:inline-flex;padding:3px;background:#f1f5f9;border-radius:8px;gap:2px;margin-bottom:4px}.ct-mode-tab{border:none;background:transparent;padding:6px 14px;border-radius:6px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .15s;white-space:nowrap}.ct-mode-tab:hover{color:var(--text-primary)}.ct-mode-tab.active{background:#fff;color:var(--primary-color);font-weight:500;box-shadow:0 1px 3px #00000014}.ct-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0;min-width:88px}.ct-btn-primary{background:var(--primary-color);color:#fff;border:none}.ct-btn-primary:hover:not(:disabled){background:var(--primary-light)}.ct-btn-primary:disabled{opacity:.6;cursor:not-allowed}.ct-btn-secondary{background:#fff;color:var(--text-primary);border:1px solid var(--border-color)}.ct-btn-secondary:hover{border-color:var(--primary-color);color:var(--primary-color)}.ct-keyword-editor{border:1px solid var(--border-color);border-radius:10px;padding:12px 14px;background:#fafbfc;min-height:100px;transition:border-color .15s,box-shadow .15s}.ct-keyword-editor:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #08326514;background:#fff}.ct-keyword-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:36px}.ct-keyword-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#eff6ff;color:#1d4ed8;border-radius:6px;font-size:13px}.ct-chip-remove{border:none;background:transparent;color:#64748b;cursor:pointer;display:flex;padding:0;line-height:0}.ct-chip-remove:hover{color:#dc2626}.ct-keyword-input{flex:1;min-width:160px;border:none;outline:none;background:transparent;font-size:14px;padding:4px 0}.ct-keyword-hint{margin:8px 0 0;font-size:12px;color:var(--text-secondary)}.lc-page{max-width:1200px;margin:0 auto;padding:24px}.lc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.lc-header h2{font-size:20px;font-weight:600;color:var(--text-primary, #1a1a2e)}.lc-actions{display:flex;gap:12px}.lc-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.lc-btn-primary{background:#083265;color:#fff}.lc-btn-primary:hover:not(:disabled){background:#0a3f7a}.lc-btn-primary:disabled{opacity:.6;cursor:not-allowed}.lc-tip{font-size:13px;color:var(--text-secondary, #666);margin-bottom:20px}.lc-loading,.lc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #999);gap:12px}.lc-empty p{font-size:14px}.lc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.lc-card{position:relative;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;overflow:hidden;cursor:grab;transition:box-shadow .2s,transform .15s}.lc-card:hover{box-shadow:0 4px 12px #0000001a}.lc-card-dragging{opacity:.5;transform:scale(.97)}.lc-card-disabled{opacity:.6}.lc-card-drag-handle{position:absolute;top:8px;left:8px;z-index:2;background:#ffffffd9;border-radius:6px;padding:4px;color:#666;cursor:grab}.lc-card-img-wrap{position:relative;width:100%;aspect-ratio:9 / 16;background:#f0f0f0;overflow:hidden}.lc-card-img{width:100%;height:100%;object-fit:cover;display:block}.lc-card-mask{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:500}.lc-card-footer{padding:10px 12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lc-card-order{font-size:12px;color:var(--text-secondary, #888)}.lc-card-time{font-size:12px;color:var(--text-secondary, #aaa);flex:1}.lc-card-btns{display:flex;align-items:center;gap:6px}.lc-btn-icon{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;color:var(--text-secondary, #666);font-size:12px;transition:background .15s}.lc-btn-icon:hover{background:var(--hover, #f0f0f0)}.lc-btn-on{color:#083265}.lc-btn-off{color:#ccc}.lc-btn-delete:hover{color:#e74c3c}.lc-btn-danger{color:#e74c3c;font-weight:500}.lc-confirm-row{display:flex;align-items:center;gap:4px}.channel-suite{--channel-blue: #1d5bff;--channel-navy: #123a6d;--channel-ink: #172033;--channel-muted: #667085;--channel-line: #d8e0ef;--channel-soft: #eef3fb;max-width:1440px;min-width:0;width:100%;margin:0 auto;color:var(--channel-ink)}.channel-suite *,.channel-suite *:before,.channel-suite *:after{box-sizing:border-box}.channel-suite button,.channel-suite input,.channel-suite textarea,.channel-suite select{font:inherit}.channel-suite button{cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.channel-suite button:focus-visible,.channel-suite input:focus-visible,.channel-suite textarea:focus-visible,.channel-suite select:focus-visible{outline:3px solid rgba(29,91,255,.22);outline-offset:2px}.channel-suite button:disabled{cursor:not-allowed;opacity:.5}.channel-suite-badge{display:inline-flex;align-items:center;gap:7px;margin-bottom:12px;padding:5px 10px;border:1px solid #c8d7f2;border-radius:999px;background:#eef4ff;color:#1552f0;font-size:12px;font-weight:700}.channel-suite .channel-error,.channel-suite .channel-loading,.channel-suite .channel-empty{margin-bottom:14px;padding:13px 15px;border:1px solid #fecaca;border-radius:9px;background:#fff1f2;color:#b42318;font-size:13px}.channel-suite .channel-loading{border-color:#bfdbfe;background:#eff6ff;color:#175cd3}.channel-suite .channel-empty{border-color:#e2e8f0;background:#f8fafc;color:#64748b;text-align:center}.channel-suite .channel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.channel-suite .channel-heading h1{margin:0;font-size:clamp(26px,3vw,32px);line-height:1.25;color:#0f172a}.channel-suite .channel-heading p{margin:5px 0 0;color:#63708a;font-size:14px}.channel-suite .channel-heading-actions{display:flex;align-items:center;gap:10px}.channel-suite .channel-primary,.channel-suite .channel-outline,.channel-suite button.primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 17px;border-radius:8px;border:1px solid var(--channel-blue);background:var(--channel-blue);color:#fff;font-weight:700}.channel-suite .channel-outline{border-color:#c9d3e0;background:#fff;color:#165dff}.channel-suite .channel-outline:hover{background:#f3f7ff}.channel-suite .channel-select{height:40px;border:1px solid var(--channel-line);border-radius:8px;background:#fff;color:var(--channel-ink);padding:0 34px 0 12px}.channel-suite .channel-select.compact{min-width:108px;border-radius:999px;background:var(--channel-navy);color:#fff;border-color:var(--channel-navy)}.channel-suite .channel-stats{display:grid;gap:14px;margin-bottom:16px}.channel-suite .channel-stats.four{grid-template-columns:repeat(4,minmax(0,1fr))}.channel-suite .channel-stat{min-height:108px;padding:17px 18px;border:1px solid #e3e9f3;border-radius:13px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 7px 24px #1c355a0a}.channel-suite .channel-stat>span{color:#63708a;font-size:12px}.channel-suite .channel-stat strong{margin-top:9px;font-size:26px;line-height:1;color:#0f172a}.channel-suite .channel-stat strong.blue,.channel-suite .channel-stat small{color:var(--channel-blue)}.channel-suite .channel-stat strong.orange,.channel-suite .orange{color:#e97800}.channel-suite .channel-stat strong.green,.channel-suite .green{color:#10a66a}.channel-suite .channel-stat strong.purple{color:#6d5bd0}.channel-suite .channel-stat small{margin-top:auto;font-size:11px;font-weight:700}.channel-suite .channel-grid{display:grid;gap:16px;margin-bottom:16px}.channel-suite .dashboard-main{grid-template-columns:minmax(0,1.9fr) minmax(280px,1fr)}.channel-suite .dashboard-lower{grid-template-columns:1fr 1fr}.channel-suite .channel-card{background:#fff;border:1px solid #dce5f3;border-radius:13px;padding:20px;box-shadow:0 8px 26px #1c355a09}.channel-suite .channel-card h2{margin:0;font-size:18px;color:#0f172a}.channel-suite .todo-list{display:grid;gap:11px;margin-top:19px}.channel-suite .todo-list button{display:grid;grid-template-columns:1fr auto 18px;gap:10px;align-items:center;min-height:48px;padding:0 13px;border:0;border-radius:9px;background:#f7f9fd;color:var(--channel-ink);text-align:left}.channel-suite .todo-list button:hover{background:#edf3ff}.channel-suite .todo-list strong{font-size:13px}.channel-suite .todo-list .blue{color:var(--channel-blue)}.channel-suite .todo-list .red{color:#dc3f4f}.channel-suite .resource-meter{margin-top:26px}.channel-suite .resource-meter>div{display:flex;justify-content:space-between;margin-bottom:9px;font-size:13px}.channel-suite .resource-meter span{color:#63708a}.channel-suite .resource-meter i{display:block;height:11px;overflow:hidden;border-radius:999px;background:#eff4ff}.channel-suite .resource-meter em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1a5ef5,#75a0ff)}.channel-suite .hot-list{margin-top:16px}.channel-suite .hot-list>div{display:grid;grid-template-columns:78px 1fr 70px 100px;gap:12px;align-items:center;min-height:54px;border-bottom:1px solid #e5ebf4;font-size:12px}.channel-suite .hot-list b{color:var(--channel-blue)}.channel-suite .hot-list i{border:1px solid var(--channel-line);border-radius:7px;padding:4px 8px;text-align:center;font-style:normal;color:#63708a}.channel-suite .hot-list small{color:#63708a;text-align:right}.channel-suite .results-hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding:20px 24px;border-radius:14px;background:#1742b8;color:#fff}.channel-suite .results-hero h1{margin:0;font-size:27px}.channel-suite .results-hero p{margin:2px 0 0;color:#d7e4ff;font-size:13px}.channel-suite .results-hero button{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 16px;border:0;border-radius:8px;background:#fff;color:#0f172a}.channel-suite .result-context{display:grid;gap:10px;margin-bottom:14px;padding:14px 16px}.channel-suite .result-context>div:first-child{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:7px;background:#eef3ff}.channel-suite .result-context b{padding:4px 8px;border-radius:5px;background:var(--channel-blue);color:#fff;font-size:11px}.channel-suite .result-context span{color:#667085;font-size:11px}.channel-suite .result-context>div:last-child{display:flex;align-items:center;gap:12px}.channel-suite .result-context h2{font-size:17px}.channel-suite .result-context>div:last-child span{margin-left:auto}.channel-suite .filters{margin-bottom:14px;padding:15px 16px}.channel-suite .filter-head{display:flex;justify-content:space-between;align-items:center}.channel-suite .filter-head h2{font-size:15px}.channel-suite .filter-head button{border:0;background:none;color:var(--channel-blue);font-size:12px}.channel-suite .filter-row{display:flex;align-items:center;gap:8px;margin-top:12px}.channel-suite .filter-row b{margin-right:4px;font-size:12px}.channel-suite .filter-row button{min-height:30px;padding:0 12px;border:1px solid var(--channel-line);border-radius:999px;background:#fff;color:#667085;font-size:11px}.channel-suite .filter-row button.selected{background:var(--channel-blue);border-color:var(--channel-blue);color:#fff}.channel-suite .filter-controls{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-top:12px}.channel-suite .filter-controls label{display:grid;gap:4px;font-size:11px;font-weight:700}.channel-suite .filter-controls select{height:34px;border:1px solid var(--channel-line);border-radius:7px;background:#f7f9fc;padding:0 28px 0 10px;color:var(--channel-ink)}.channel-suite .result-count{margin:8px 0;color:#63708a;text-align:right;font-size:12px}.channel-suite .ai-results-view .filter-head>div{display:flex;align-items:center;gap:12px;line-height:1}.channel-suite .ai-results-view .filter-head>div>span{color:#1d5bff;font-size:10px;font-weight:700;white-space:nowrap}.channel-suite .ai-results-view .filter-head>div>button{min-height:24px;padding:0;font-size:11px;line-height:16px;font-weight:700}.channel-suite .task-switcher{display:grid;grid-template-columns:180px 1fr;gap:16px;margin-bottom:14px;padding:16px}.channel-suite .task-switcher h2{margin:0;font-size:15px}.channel-suite .task-switcher p{margin:5px 0 0;color:#667085;font-size:11px}.channel-suite .task-switcher>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.channel-suite .task-switcher button{min-height:64px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--channel-line);border-radius:9px;background:#fff;color:#667085;text-align:left;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.channel-suite .task-switcher button.active{border-color:var(--channel-blue);background:#eef4ff;color:var(--channel-blue);box-shadow:inset 0 0 0 1px #165dff1a}.channel-suite .task-switcher button span,.channel-suite .task-switcher button em{font-size:10px;font-style:normal;white-space:nowrap}.channel-suite .task-switcher button b{overflow:hidden;color:var(--channel-ink);text-overflow:ellipsis;white-space:nowrap}.channel-suite .related-resource-result{display:grid;gap:10px;margin-bottom:12px;padding:18px 20px;border:1px solid var(--channel-line);border-radius:12px;background:#fff}.channel-suite .related-resource-result>div:first-child,.channel-suite .related-resource-result footer{display:flex;align-items:center;gap:9px}.channel-suite .related-resource-result .resource-kind{padding:5px 9px;border-radius:999px;background:#eaf1ff;color:var(--channel-blue);font-size:11px;font-weight:700}.channel-suite .related-resource-result small{margin-left:auto;color:#667085}.channel-suite .related-resource-result h3,.channel-suite .related-resource-result p{margin:0}.channel-suite .related-resource-result p{color:#667085;font-size:12px;line-height:1.6}.channel-suite .related-resource-result footer{justify-content:space-between;padding-top:10px;border-top:1px solid var(--channel-line);color:#667085;font-size:12px}.channel-suite .related-resource-result footer button{min-height:36px;padding:0 14px;border:1px solid var(--channel-blue);border-radius:7px;background:#fff;color:var(--channel-blue);cursor:pointer}.channel-suite .teacher-result{margin-bottom:12px;padding:16px;border:1px solid #dce5f3;border-radius:12px;background:#fff}.channel-suite .teacher-title{display:flex;align-items:center;justify-content:space-between;gap:18px}.channel-suite .teacher-title>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.channel-suite .teacher-title h3{margin:0;font-size:19px}.channel-suite .teacher-title b{color:var(--channel-blue);font-size:11px}.channel-suite .teacher-title small{color:#63708a}.channel-suite .teacher-title>strong{color:#d97706;font-size:13px;white-space:nowrap}.channel-suite .pill{display:inline-flex;align-items:center;min-height:25px;padding:0 12px;border:1px solid #d4dfef;border-radius:999px;color:#63708a;font-size:11px}.channel-suite .pill.solid{background:#123d9a;border-color:#123d9a;color:#fff}.channel-suite .teacher-intro{margin:12px 0;padding:10px 12px;border-radius:8px;background:#f5f8fd;color:#334155;font-size:12px;line-height:1.65}.channel-suite .teacher-columns{display:grid;grid-template-columns:.8fr 1fr 1.2fr;gap:24px;min-height:110px}.channel-suite .teacher-columns label{display:block;margin-bottom:8px;color:#63708a;font-size:11px}.channel-suite .teacher-columns p{margin:5px 0;font-size:12px}.channel-suite .tag-wrap{display:flex;flex-wrap:wrap;gap:5px}.channel-suite .tag-wrap span{display:inline-flex;padding:4px 8px;border-radius:6px;background:#eef4ff;color:#246bfe;font-size:10px;white-space:nowrap}.channel-suite .teacher-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:10px}.channel-suite .quote{display:inline-flex;gap:22px;padding:8px 13px;border-radius:8px;background:#eef4ff;font-size:11px}.channel-suite .quote b{color:var(--channel-blue)}.channel-suite .quote span{color:#63708a}.channel-suite .teacher-actions>div:last-child{display:flex;gap:8px}.channel-suite .teacher-actions button{display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:0 14px;border:1px solid #c9d5e8;border-radius:8px;background:#fff;color:#0f172a}.channel-suite .teacher-actions button.active{color:var(--channel-blue);border-color:var(--channel-blue);background:#ecf2ff}.channel-suite .demand-card{margin-bottom:16px;padding:16px}.channel-suite .section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.channel-suite .section-title h2{font-size:16px}.channel-suite .section-title span{color:#667085;font-size:11px}.channel-suite .demand-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.channel-suite .demand-row textarea{width:100%;min-height:78px;resize:vertical;padding:11px;border:1px solid var(--channel-blue);border-radius:8px;background:#f8faff;color:var(--channel-ink)}.channel-suite .demand-actions{display:flex;gap:8px;align-items:flex-start}.channel-suite .demand-actions button{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 13px;border-radius:8px;font-size:12px;font-weight:700}.channel-suite .demand-actions .secondary{border:1px solid #ccd1d9;background:#f5f6f8;color:#667085}.channel-suite .upload-file{display:flex;align-items:center;gap:10px;max-width:760px;margin-top:10px;padding:10px 12px;border:1px solid #bacff5;border-radius:8px;background:#f9fbff}.channel-suite .upload-file>svg{color:var(--channel-blue)}.channel-suite .upload-file div{display:grid}.channel-suite .upload-file b{font-size:12px}.channel-suite .upload-file small{color:#667085}.channel-suite .upload-file>span{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding:5px 9px;border-radius:6px;background:#e8fbf5;color:#059e6b;font-size:11px;font-weight:700}.channel-suite .upload-file button{border:0;background:none;color:#dc3f4f}.channel-suite .form-help{display:block;margin-top:8px;color:#667085}.channel-suite .task-panel{min-width:0;padding:14px 16px}.channel-suite .original-demand{min-width:0;display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:7px;background:#eef3ff;font-size:11px}.channel-suite .original-demand b{flex:0 0 auto;padding:4px 8px;border-radius:5px;background:var(--channel-blue);color:#fff}.channel-suite .original-demand span{min-width:0;flex:1;overflow-wrap:anywhere;word-break:break-word}.channel-suite .original-demand em{color:var(--channel-blue);font-style:normal;font-weight:700}.channel-suite .task-heading{min-width:0;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:14px 0 12px}.channel-suite .task-heading>div{min-width:0}.channel-suite .task-heading h2{font-size:19px}.channel-suite .task-heading p{margin:2px 0 0;color:#667085;font-size:12px}.channel-suite .task-heading>div:last-child{flex:0 0 auto;display:flex;align-items:center;gap:10px}.channel-suite .task-heading>div:last-child>span{padding:6px 10px;border-radius:6px;background:#eef3ff;color:var(--channel-blue);font-size:11px;font-weight:700}.channel-suite .task-grid{min-width:0;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.channel-suite .task-grid article{min-width:0;max-width:100%;min-height:136px;padding:14px 16px;border:1px solid var(--channel-line);border-radius:10px;background:#fff}.channel-suite .task-grid article.selected{border-color:var(--channel-blue);background:#fbfcff;box-shadow:inset 0 0 0 .25px var(--channel-blue)}.channel-suite .task-top{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:9px}.channel-suite .task-top .check{flex:0 0 auto;width:19px;height:19px;display:grid;place-items:center;padding:0;border:1px solid #c9d3e5;border-radius:4px;background:#fff;color:#fff}.channel-suite .selected .task-top .check{border-color:var(--channel-blue);background:var(--channel-blue)}.channel-suite .task-top>span{min-width:max-content;padding:4px 9px;border-radius:999px;background:#f1f4f9;color:#667085;font-size:11px;font-weight:700}.channel-suite .task-top h3{min-width:0;margin:0;overflow-wrap:anywhere;word-break:break-word;font-size:15px}.channel-suite .task-top em{justify-self:end;margin-left:0;padding:6px 9px;border-radius:7px;font-size:11px;font-style:normal;font-weight:700;white-space:nowrap}.channel-suite .task-top em.done{background:#e8fbf5;color:#059461}.channel-suite .task-top em.matching{background:#fff4d8;color:#d97706}.channel-suite .task-grid article>p{min-width:0;margin:13px 0;overflow-wrap:anywhere;word-break:break-word;color:#66738a;font-size:11px}.channel-suite .task-counts{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:7px}.channel-suite .task-counts small{color:#667085}.channel-suite .task-counts b{padding:5px 9px;border-radius:6px;background:#eef3ff;color:var(--channel-blue);font-size:11px}.channel-suite .task-counts b:nth-of-type(2){background:#eaf8f1;color:#10a66a}.channel-suite .task-counts b:nth-of-type(3){background:#fff4e5;color:#d97706}.channel-suite .message-tabs,.channel-suite .access-tabs{display:flex;gap:10px;align-items:center;min-height:58px;margin-bottom:10px;padding:10px 14px;border:1px solid #e5eaf2;border-radius:12px;background:#fff}.channel-suite .message-tabs button,.channel-suite .access-tabs button,.channel-suite .message-filters button,.channel-suite .access-filter button{min-height:34px;padding:0 18px;border:1px solid #e5eaf2;border-radius:8px;background:#fff;color:#697386}.channel-suite .message-tabs button.active,.channel-suite .access-tabs button.active,.channel-suite .message-filters button.active,.channel-suite .access-filter button.active{border-color:var(--channel-navy);background:var(--channel-navy);color:#fff;font-weight:700}.channel-suite .message-tabs strong{margin-left:auto;color:#d97706;font-size:12px}.channel-suite .message-filters{display:grid;gap:7px;margin-bottom:10px;padding:10px 14px;border:1px solid #e5eaf2;border-radius:12px;background:#fff}.channel-suite .message-filters>div{display:flex;align-items:center;gap:9px}.channel-suite .message-filters label{width:72px;color:#63708a;font-size:12px}.channel-suite .message-layout{display:grid;grid-template-columns:minmax(330px,.72fr) minmax(480px,1.18fr);gap:12px}.channel-suite .message-list{min-height:650px;padding:13px}.channel-suite .list-title{display:flex;justify-content:space-between;padding:0 5px 12px;border-bottom:1px solid #e5eaf2}.channel-suite .list-title span{color:#697386;font-size:12px}.channel-suite .message-list>button{width:100%;min-height:104px;display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;margin-top:10px;padding:12px;border:1px solid #e5eaf2;border-radius:10px;background:#fff;text-align:left}.channel-suite .message-list>button.selected{border-color:#bcd3ff;background:#eaf2ff}.channel-suite .message-list i{width:8px;height:8px;border-radius:50%;background:var(--channel-blue)}.channel-suite .message-list i.read{background:#cbd5e1}.channel-suite .message-list button div{display:grid;gap:5px}.channel-suite .message-list b{font-size:14px}.channel-suite .message-list span,.channel-suite .message-list small{color:#697386;font-size:12px}.channel-suite .message-list em,.channel-suite .message-detail em,.channel-suite .channel-table em{padding:6px 10px;border-radius:7px;font-size:11px;font-style:normal;font-weight:700;white-space:nowrap}.channel-suite .warning{background:#fff4d8;color:#d97706}.channel-suite .success{background:#e9f8f0;color:#20a464}.channel-suite .danger{color:#d64545!important}.channel-suite .message-list em.danger,.channel-suite .message-detail em.danger{background:#fff0f0}.channel-suite .muted{background:#f1f3f6;color:#667085}.channel-suite .message-detail{min-height:650px;position:relative;padding-bottom:78px}.channel-suite .detail-title{display:flex;align-items:center;justify-content:space-between;padding-bottom:13px;border-bottom:1px solid #e5eaf2}.channel-suite .detail-resource{margin-top:20px;padding:15px 18px;border-radius:10px;background:#f1f4f8}.channel-suite .detail-resource h3{margin:0 0 5px}.channel-suite .detail-resource p,.channel-suite .detail-resource small{margin:0;color:#697386}.channel-suite .message-detail h4{margin:20px 0 10px}.channel-suite .reason-tags{display:flex;gap:10px}.channel-suite .reason-tags span{padding:7px 12px;border-radius:8px;background:#e6f0ff;color:#1552f0;font-size:12px;font-weight:700}.channel-suite .scope-note,.channel-suite .wait-note{display:grid;gap:6px;margin-top:18px;padding:14px 16px;border:1px solid #d8e5ff;border-radius:10px;background:#f7faff}.channel-suite .scope-note p,.channel-suite .wait-note p{margin:0;color:#697386;font-size:12px}.channel-suite .wait-note{border:0;background:#fff4d8;color:#d97706}.channel-suite .detail-actions{position:absolute;left:20px;right:20px;bottom:20px;display:flex;justify-content:flex-end;gap:10px}.channel-suite .detail-actions button{min-width:130px;min-height:42px;border:1px solid #c9d3e0;border-radius:8px;background:#fff;color:#165dff;font-weight:700}.channel-suite .message-feedback{margin:-8px 0 10px;padding:9px 12px;border:1px solid #c9dafb;border-radius:8px;background:#f4f8ff;color:#1552f0;font-size:12px}.channel-suite .message-result-note{display:grid;gap:5px;margin-top:18px;padding:14px 16px;border-radius:10px;background:#f1f3f6;color:#667085}.channel-suite .message-result-note p{margin:0;font-size:12px}.channel-suite .message-result-note.success-note{background:#e9f8f0;color:#16875a}.channel-suite .message-result-note.danger-note{background:#fff0f0;color:#d64545}.channel-suite .message-permission-copy{margin-top:24px;color:#697386;font-size:13px}.channel-suite .detail-actions button.primary{border-color:#165dff;background:#165dff;color:#fff}.channel-suite .detail-actions button:disabled{cursor:not-allowed;opacity:.45}.channel-suite .message-card-modal{align-items:center;justify-content:center}.channel-suite .message-card-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;padding:24px;border-radius:16px;background:#fff;box-shadow:0 24px 70px #0f172a3d}.channel-suite .message-card-dialog>header{display:flex;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid #e5eaf2}.channel-suite .message-card-dialog header span{color:#20a464;font-size:12px;font-weight:700}.channel-suite .message-card-dialog header h2{margin:6px 0 4px;font-size:24px}.channel-suite .message-card-dialog header p{margin:0;color:#697386;font-size:13px}.channel-suite .message-card-dialog header button{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;padding:0;border:1px solid #d9e0ea;border-radius:9px;background:#fff;color:#64748b}.channel-suite .message-card-dialog section{margin-top:18px;padding:16px;border-radius:10px;background:#f7f9fc}.channel-suite .message-card-dialog section h3{margin:0 0 12px;font-size:15px}.channel-suite .message-card-dialog dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.channel-suite .message-card-dialog dl div{display:grid;gap:4px}.channel-suite .message-card-dialog dt{color:#697386;font-size:11px}.channel-suite .message-card-dialog dd{margin:0;color:#172033;font-size:14px;font-weight:700;word-break:break-all}.channel-suite .message-card-dialog section>p{margin:0;color:#475569;font-size:13px;line-height:1.75}.channel-suite .message-card-dialog>button{margin-top:18px}.channel-suite--messages{font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.channel-suite--messages .channel-heading{margin-bottom:18px}.channel-suite--messages .channel-heading h1{font-size:28px;line-height:39px;letter-spacing:0}.channel-suite--messages .channel-heading p{margin-top:1px;font-size:14px;line-height:20px}.channel-suite--messages .channel-heading .channel-outline{min-height:42px;padding-inline:20px;font-size:14px;line-height:20px}.channel-suite--messages .message-tabs button,.channel-suite--messages .message-filters button,.channel-suite--messages .message-tabs strong{font-size:13px;line-height:19px}.channel-suite--messages .message-filters label{font-size:12px;line-height:17px}.channel-suite--messages .list-title h2{font-size:18px;line-height:26px}.channel-suite--messages .list-title span{font-size:12px;line-height:17px}.channel-suite--messages .message-list b{font-size:15px;line-height:22px}.channel-suite--messages .message-list span{font-size:13px;line-height:19px}.channel-suite--messages .message-list small{font-size:12px;line-height:17px}.channel-suite--messages .message-list em,.channel-suite--messages .message-detail em{font-size:13px;line-height:19px}.channel-suite--messages .detail-title h2{font-size:20px;line-height:29px}.channel-suite--messages .detail-resource h3{font-size:18px;line-height:26px}.channel-suite--messages .detail-resource p{font-size:14px;line-height:20px}.channel-suite--messages .detail-resource small{font-size:12px;line-height:17px}.channel-suite--messages .message-detail h4{font-size:14px;line-height:20px}.channel-suite--messages .message-detail>p{font-size:14px;line-height:20px}.channel-suite--messages .reason-tags span{font-size:13px;line-height:19px}.channel-suite--messages .scope-note b,.channel-suite--messages .scope-note strong{font-size:14px;line-height:20px}.channel-suite--messages .scope-note p{font-size:13px;line-height:19px}.channel-suite--messages .detail-actions button{font-size:14px;line-height:20px}.channel-suite .marketing-filter,.channel-suite .access-filter{display:flex;align-items:end;gap:12px;margin-bottom:12px;padding:15px}.channel-suite .marketing-filter label,.channel-suite .access-filter label{display:grid;gap:5px;color:#667085;font-size:11px}.channel-suite .marketing-filter label div{height:38px;display:flex;align-items:center;gap:7px;min-width:240px;padding:0 10px;border:1px solid var(--channel-line);border-radius:7px;background:#f8fafd}.channel-suite .marketing-filter input,.channel-suite .access-filter input{border:0;outline:0;background:transparent;color:var(--channel-ink)}.channel-suite .marketing-filter select{min-width:145px;height:38px;padding:0 10px;border:1px solid var(--channel-line);border-radius:7px;background:#f8fafd}.channel-suite .marketing-filter>button,.channel-suite .access-filter>button{min-height:38px;padding:0 16px;border:1px solid var(--channel-line);border-radius:8px;background:#fff}.channel-suite .marketing-filter>button.primary,.channel-suite .access-filter>button.primary{border-color:var(--channel-blue);background:var(--channel-blue);color:#fff}.channel-suite .table-card{padding:0;overflow:hidden}.channel-suite .channel-table-wrap{width:100%;overflow-x:auto}.channel-suite .channel-table{width:100%;border-collapse:collapse;min-width:1060px;font-size:11px}.channel-suite .channel-table th{height:46px;padding:0 10px;background:#f7f9fc;color:#172033;text-align:left;white-space:nowrap}.channel-suite .channel-table td{height:96px;padding:10px;border-top:1px solid var(--channel-line);vertical-align:middle}.channel-suite .channel-table .link,.channel-suite .channel-table .code{color:var(--channel-blue)}.channel-suite .table-link{display:block;margin-top:6px;padding:0;border:0;background:none;color:var(--channel-blue);font-size:10px}.channel-suite .table-intro{width:240px;margin:0;color:#667085;line-height:1.6}.channel-suite .table-footer{min-height:54px;display:flex;justify-content:space-between;align-items:center;padding:0 14px;color:#667085;font-size:12px}.channel-suite .table-footer div{display:flex;gap:7px}.channel-suite .table-footer button{min-width:34px;height:34px;padding:0 10px;border:1px solid #d7dee9;border-radius:7px;background:#fff}.channel-suite .table-footer button.active{background:var(--channel-navy);color:#fff}.channel-suite .marketing-stats .channel-stat strong{color:var(--channel-blue)}.channel-suite .marketing-stats .channel-stat strong.orange{color:#e97800}.channel-suite .marketing-stats .channel-stat strong.green{color:#10a66a}.channel-suite .marketing-stats .channel-stat strong.purple{color:#6d5bd0}.channel-suite .access-tabs span{margin-left:auto;color:#697386;font-size:12px}.channel-suite .access-filter label input{width:230px;height:40px;padding:0 11px;border:1px solid #e5eaf2;border-radius:6px;background:#f8fafd}.channel-suite .access-filter>div{display:flex;gap:8px}.channel-suite .access-filter>button.primary{margin-left:auto}.channel-suite .roles-table th:nth-child(4){width:42%}.channel-suite .roles-table td{height:112px}.channel-suite .row-actions{display:flex;gap:12px}.channel-suite .row-actions button{padding:0;border:0;background:none;color:#165dff;font-weight:700}.channel-suite .muted-text{color:#697386}.channel-suite .admin-empty{min-height:420px;display:grid;place-items:center;align-content:center;text-align:center;color:#667085}.channel-suite .admin-empty svg{color:var(--channel-blue)}.channel-suite .admin-empty p{max-width:520px}.channel-suite .account-overview{display:flex;align-items:center;gap:18px;margin-bottom:16px}.channel-suite .avatar{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#e8f0ff;color:#175cd3;font-size:22px;font-weight:800}.channel-suite .account-overview h2{font-size:20px}.channel-suite .account-overview p{display:flex;gap:8px;margin:7px 0}.channel-suite .account-overview p span,.channel-suite .account-overview p em{padding:4px 9px;border-radius:999px;background:#e8f0ff;color:#175cd3;font-size:11px;font-style:normal}.channel-suite .account-overview p em{background:#e8f7ee;color:#16834e}.channel-suite .account-overview small{color:#64748b}.channel-suite .account-status{margin-left:auto;display:grid;text-align:right}.channel-suite .account-status span{color:#64748b;font-size:12px}.channel-suite .account-status strong{color:#16834e;font-size:18px}.channel-suite .account-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.85fr);gap:16px}.channel-suite .account-info>p,.channel-suite .mini-program>p{color:#64748b;font-size:13px}.channel-suite .account-info dl{display:grid;grid-template-columns:1fr 1fr;margin-top:18px}.channel-suite .account-info dl div{min-height:86px;padding:18px 0;border-top:1px solid #e5ebf4}.channel-suite .account-info dl div:nth-child(odd){padding-right:20px}.channel-suite .account-info dt{margin-bottom:7px;color:#64748b;font-size:12px}.channel-suite .account-info dd{margin:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}.channel-suite .mini-program{display:flex;flex-direction:column;gap:11px}.channel-suite .mini-feature{display:flex;gap:11px;align-items:center;padding:12px;border-radius:8px;background:#f7f9fc}.channel-suite .mini-feature>svg{color:#175cd3}.channel-suite .mini-feature div{display:grid}.channel-suite .mini-feature b{font-size:13px}.channel-suite .mini-feature span{color:#64748b;font-size:11px}.channel-suite .account-note{display:grid;gap:4px;padding:12px 14px;border:1px solid #f3d38a;border-radius:8px;background:#fff8e8;color:#8a5a00;font-size:12px}.channel-suite .full{width:100%;margin-top:auto}.channel-suite .channel-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:grid;place-items:center;padding:20px;background:#0f172a7a}.channel-suite .channel-modal>div{position:relative;width:min(480px,100%);padding:28px;border-radius:14px;background:#fff;box-shadow:0 24px 80px #0f172a47}.channel-suite .channel-modal h2{margin:10px 0 5px}.channel-suite .channel-modal p{color:#64748b}.channel-suite .channel-modal label{display:grid;gap:7px;margin-top:20px;font-size:13px;font-weight:700}.channel-suite .channel-modal input{height:42px;padding:0 12px;border:1px solid var(--channel-line);border-radius:8px}.channel-suite .modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:50%;background:#f1f5f9}.channel-suite .modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.channel-suite .modal-actions button{min-height:40px;padding:0 18px;border:1px solid var(--channel-line);border-radius:8px;background:#fff}.channel-suite .qr-modal{text-align:center}.channel-suite .qr-modal>svg{color:var(--channel-blue)}.channel-suite .qr-modal .primary{margin-top:12px}.channel-suite .permission-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0 0;padding:14px;border:1px solid var(--channel-line);border-radius:10px}.channel-suite .permission-picker legend{padding:0 6px;color:#475467;font-size:12px;font-weight:700}.channel-suite .permission-picker label{display:flex;align-items:center;gap:8px;margin:0;padding:9px;border-radius:7px;background:#f8fafc;font-weight:500}.channel-suite .permission-picker input{width:16px;height:16px;padding:0;accent-color:var(--channel-blue)}.channel-suite .filter-controls input{height:34px;min-width:112px;padding:0 10px;border:1px solid var(--channel-line);border-radius:7px;background:#f7f9fc;color:var(--channel-ink)}.channel-suite .teacher-actions button.selected-action{color:var(--channel-blue);border-color:var(--channel-blue);background:#ecf2ff}.channel-suite .inline-feedback{margin-top:8px;padding:8px 10px;border-radius:7px;background:#f3f7ff;color:#175cd3;font-size:11px}.channel-suite .result-pagination{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:12px 0}.channel-suite .result-pagination button{min-height:36px;padding:0 14px;border:1px solid var(--channel-line);border-radius:7px;background:#fff}.channel-suite .result-pagination button:disabled{opacity:.45;cursor:not-allowed}.channel-suite .marketing-filter label>input{min-width:118px;height:38px;padding:0 10px;border:1px solid var(--channel-line);border-radius:7px;background:#f8fafd}.channel-suite .channel-modal select{height:42px;padding:0 12px;border:1px solid var(--channel-line);border-radius:8px;background:#fff}.channel-suite .channel-modal textarea{min-height:92px;padding:10px 12px;border:1px solid var(--channel-line);border-radius:8px;resize:vertical}.channel-suite .message-filters button{position:relative}.channel-suite .message-count-badge{position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;display:inline-grid;place-items:center;padding:0 5px;border:1px solid #fff;border-radius:999px;background:#246bfe;color:#fff;font-size:11px;font-weight:700;line-height:1;box-sizing:border-box}.channel-suite .notification-unread-total{color:#165dff!important}.channel-suite .notification-filters{min-height:60px;display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:11px 14px;border:1px solid #e5eaf2;border-radius:12px;background:#fff}.channel-suite .notification-filters button{position:relative;min-width:96px;min-height:34px;padding:0 16px;border:1px solid #e5eaf2;border-radius:8px;background:#fff;color:#697386;font-size:13px}.channel-suite .notification-filters button.active{border-color:#123a6d;background:#123a6d;color:#fff;font-weight:700}.channel-suite .notification-filters button.active .message-count-badge{border-color:#246bfe;background:#fff;color:#0b3b72}.channel-suite .message-list em.notice,.channel-suite .message-detail em.notice{background:#123a6d;color:#fff}.channel-suite .notification-hero{display:flex;align-items:center;gap:16px;margin-top:20px;padding:0 0 18px;border-bottom:1px solid #e5eaf2}.channel-suite .notification-hero h3{margin:0 0 7px;font-size:19px}.channel-suite .notification-hero p{margin:0;color:#697386;font-size:12px}.channel-suite .notification-point-icon{width:76px;height:64px;display:grid;place-items:center;align-content:center;flex:0 0 auto;border-radius:10px;background:#eaf2ff;color:#165dff}.channel-suite .notification-point-icon b{font-size:21px;line-height:26px}.channel-suite .notification-point-icon span{font-size:10px;font-weight:700}.channel-suite .notification-point-summary{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px;padding:16px 18px;border:1px solid #d8e5ff;border-radius:10px;background:#f7faff}.channel-suite .notification-point-summary>div{display:grid;gap:6px}.channel-suite .notification-point-summary span{color:#697386;font-size:12px}.channel-suite .notification-point-summary b{color:#172033;font-size:25px}.channel-suite .notification-point-summary>div:first-child b{color:#165dff}.channel-suite .notification-related-copy{color:#697386;font-size:13px!important}.channel-suite .notification-actions button{min-width:124px}.channel-suite .applicant-resource h3{margin-bottom:4px}.channel-suite .applicant-resource small{display:block;margin-top:4px}.channel-suite .incoming-request-target{display:grid;gap:5px;margin-top:18px}.channel-suite .incoming-request-target b{font-size:13px}.channel-suite .incoming-request-target strong{font-size:16px}.channel-suite .reason-tags.incoming-reasons span{background:#123a6d;color:#fff}.channel-suite .incoming-wait{gap:8px}.channel-suite .incoming-wait>div{display:flex;justify-content:space-between;align-items:center;gap:16px}.channel-suite .incoming-wait strong{color:#d97706;font-size:12px}.channel-suite .channel-modal .message-card-dialog,.channel-suite .channel-modal .message-decision-dialog{width:min(560px,calc(100vw - 32px));padding:24px}.channel-suite .message-decision-dialog>header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;border-bottom:1px solid #e5eaf2}.channel-suite .message-decision-dialog header span{color:#165dff;font-size:12px;font-weight:700}.channel-suite .message-decision-dialog header h2{margin:5px 0 0;font-size:22px}.channel-suite .message-decision-dialog header button{width:36px;height:36px;display:grid;place-items:center;flex:0 0 auto;padding:0;border:1px solid #d9e0ea;border-radius:9px;background:#fff;color:#64748b}.channel-suite .decision-summary{display:grid;gap:5px;margin-top:16px;padding:14px 16px;border-radius:10px;background:#f1f4f8}.channel-suite .decision-summary span{color:#697386;font-size:12px}.channel-suite .decision-cost{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-top:16px;padding:16px;border:1px solid #d8e5ff;border-radius:10px;background:#f7faff}.channel-suite .decision-cost>div{display:grid;gap:4px}.channel-suite .decision-cost span{color:#697386;font-size:11px}.channel-suite .decision-cost b{color:#172033;font-size:18px}.channel-suite .decision-cost i{color:#165dff;font-style:normal}.channel-suite .decision-note{margin-top:14px;padding:13px 15px;border-radius:9px;background:#fff4d8;color:#d97706}.channel-suite .decision-note p{margin:5px 0 0;font-size:12px}.channel-suite .message-decision-dialog>h3{margin:18px 0 10px;font-size:14px}.channel-suite .reject-reasons{display:grid;gap:8px}.channel-suite .reject-reasons button{min-height:42px;display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;color:#475569;text-align:left}.channel-suite .reject-reasons button.selected{border-color:#165dff;background:#f4f8ff;color:#1552f0}.channel-suite .reject-reasons i{width:18px;height:18px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #cbd5e1;border-radius:50%;font-style:normal}.channel-suite .reject-reasons button.selected i{border-color:#165dff;background:#165dff;color:#fff}.channel-suite .message-decision-dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.channel-suite .message-decision-dialog footer button{min-height:42px;padding:0 18px;border:1px solid #c9d3e0;border-radius:8px;background:#fff;color:#165dff;font-weight:700}.channel-suite .message-decision-dialog footer button.primary{border-color:#165dff;background:#165dff;color:#fff}.channel-suite .message-decision-dialog footer button.danger-action{border-color:#d64545;background:#d64545;color:#fff}.channel-suite .message-decision-dialog footer button:disabled{cursor:not-allowed;opacity:.45}.channel-suite .channel-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2900;background:#0f172a7a}.channel-suite .channel-drawer{position:absolute;top:0;right:0;width:min(480px,100%);height:100%;overflow-y:auto;padding:28px 24px;background:#fff;box-shadow:-20px 0 60px #0f172a2e}.channel-suite .channel-drawer>p{color:#64748b}.channel-suite .channel-drawer section{margin-top:18px;padding:16px;border:1px solid var(--channel-line);border-radius:10px}.channel-suite .channel-drawer section h3{margin:0 0 10px;font-size:14px}.channel-suite .channel-drawer section p{color:#475467;line-height:1.65}.channel-suite .application-detail-backdrop{left:220px;background:#0d172975}.channel-suite .application-detail-drawer{width:min(590px,100%);display:flex;flex-direction:column;padding:0;overflow:hidden;box-shadow:-16px 0 50px #0f172a2e}.channel-suite .application-drawer-header{min-height:79px;display:flex;align-items:center;justify-content:space-between;flex:0 0 auto;padding:0 30px;border-bottom:1px solid #e5eaf2}.channel-suite .application-drawer-header h2{margin:0;font-size:22px}.channel-suite .application-drawer-header button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;background:transparent;color:#94a0b2}.channel-suite .application-drawer-body{flex:1;overflow-y:auto;padding:25px 30px 28px}.channel-suite .application-detail-drawer .application-person-card{min-height:126px;display:flex;justify-content:space-between;align-items:flex-start;margin:0;padding:15px 17px;border-color:#cfe0ff;border-radius:12px;background:#f7faff}.channel-suite .application-person-card h3{margin:0 0 12px!important;font-size:18px!important}.channel-suite .application-person-card p{margin:0;color:#172033!important;font-size:14px;font-weight:700}.channel-suite .application-person-card em{padding:6px 12px;border-radius:7px;background:#fff4d8;color:#d97706;font-size:12px;font-style:normal;font-weight:700}.channel-suite .application-drawer-target{display:grid;gap:7px;margin-top:25px}.channel-suite .application-drawer-target span{color:#697386;font-size:13px}.channel-suite .application-drawer-target strong{font-size:16px}.channel-suite .application-detail-drawer .application-drawer-reasons{min-height:86px;margin-top:28px;padding:13px 16px;border:0;background:#f4f7fb}.channel-suite .application-drawer-reasons>span{color:#697386;font-size:13px}.channel-suite .application-drawer-reasons>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.channel-suite .application-drawer-reasons b{padding:7px 13px;border-radius:8px;background:#eaf2ff;color:#165dff;font-size:12px}.channel-suite .application-drawer-reasons p{margin:0;color:#697386!important;font-size:12px}.channel-suite .application-detail-drawer .application-drawer-scope{min-height:116px;margin-top:24px;padding:13px 15px;border-color:#cfe0ff;background:#f7faff}.channel-suite .application-drawer-scope h3{margin-bottom:10px!important}.channel-suite .application-drawer-scope strong{display:block;font-size:14px}.channel-suite .application-drawer-scope p{margin:10px 0 0;color:#697386!important;font-size:13px}.channel-suite .application-detail-drawer .application-drawer-deadline{min-height:78px;margin-top:24px;padding:13px 16px;border:0;background:#fff4d8}.channel-suite .application-drawer-deadline>div{display:flex;justify-content:space-between;gap:16px;color:#d97706;font-size:13px}.channel-suite .application-drawer-deadline p{margin:10px 0 0;color:#697386!important;font-size:12px}.channel-suite .application-drawer-hint{margin:28px 0 0;color:#697386;font-size:13px}.channel-suite .application-drawer-actions{min-height:94px;display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:0 0 auto;padding:0 30px;border-top:1px solid #eef1f5}.channel-suite .application-drawer-actions button{min-width:126px;min-height:44px;padding:0 16px;border:1px solid #c9d3e0;border-radius:8px;background:#fff;color:#165dff;font-weight:700}.channel-suite .application-drawer-actions button.primary{min-width:154px;border-color:#165dff;background:#165dff;color:#fff}.channel-suite .application-drawer-actions button:disabled{cursor:not-allowed;opacity:.45}.channel-suite .contact-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.channel-suite .contact-mode button{min-height:42px;border:1px solid var(--channel-line);border-radius:8px;background:#fff}.channel-suite .contact-mode button.active{border-color:var(--channel-blue);background:#edf3ff;color:var(--channel-blue);font-weight:700}.channel-suite .teacher-contact-modal{overflow-y:auto;padding:24px}.channel-suite .teacher-contact-modal>.teacher-contact-dialog{width:min(1040px,100%);height:min(856px,calc(100vh - 48px));display:flex;flex-direction:column;gap:16px;padding:28px;overflow:hidden;border-radius:16px;box-shadow:0 18px 20px #0f172a2e}.channel-suite .teacher-contact-dialog>header{min-height:44px;display:flex;align-items:center;justify-content:space-between}.channel-suite .teacher-contact-dialog>header h2{margin:0;color:#111827;font-size:24px;line-height:36px}.channel-suite .teacher-contact-dialog>header button{width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:20px;background:#f1f5f9;color:#64748b}.channel-suite .teacher-contact-dialog .contact-dialog-intro{min-height:24px;margin:0;color:#64748b;font-size:15px;line-height:24px}.channel-suite .contact-point-alert{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 16px;border:1px solid #f6c768;border-radius:8px;background:#fff7e6;color:#9a5b00}.channel-suite .contact-point-alert b{font-size:15px;font-weight:500}.channel-suite .contact-point-alert span{font-size:14px;font-weight:500;white-space:nowrap}.channel-suite .contact-choice-heading{min-height:30px;display:flex;align-items:center;justify-content:space-between}.channel-suite .contact-choice-heading b{color:#111827;font-size:16px;font-weight:500}.channel-suite .contact-choice-heading span{color:#64748b;font-size:13px}.channel-suite .contact-action-feedback{margin:-8px 0 0;padding:9px 12px;border:1px solid #f6c768;border-radius:8px;background:#fff7e6;color:#9a5b00;font-size:13px;line-height:20px}.channel-suite .contact-paths{min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:16px;flex:1}.channel-suite .contact-paths>section{min-width:0;height:100%;display:flex;flex-direction:column;gap:14px;padding:22px;border:1px solid #d7e0ef;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.channel-suite .contact-paths>.contact-point-path{gap:16px}.channel-suite .contact-paths>section.selected-path{border:2px solid #2161f5;background:#f7faff;box-shadow:0 0 0 2px #2161f514}.channel-suite .contact-paths section>header{min-height:48px;display:flex;align-items:center;justify-content:space-between}.channel-suite .contact-paths h3{margin:0;color:#111827;font-size:19px;line-height:28px}.channel-suite .contact-paths header p{margin:0;color:#64748b;font-size:13px;line-height:20px}.channel-suite .contact-paths header em{min-height:26px;display:grid;place-items:center;padding:0 9px;border-radius:13px;background:#fff0d5;color:#b86800;font-size:12px;font-style:normal;white-space:nowrap}.channel-suite .contact-apply-path header em{background:#eaf8f0;color:#16804a}.channel-suite .contact-path-title{display:flex;align-items:center;gap:12px}.channel-suite .contact-path-title>i{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:#2161f5;color:#fff;font-size:25px;font-style:normal;font-weight:700}.channel-suite .contact-point-cost{min-height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-radius:8px;background:#e8f0ff}.channel-suite .contact-point-cost span{color:#475569;font-size:14px}.channel-suite .contact-point-cost b{color:#175cd3;font-size:17px}.channel-suite .contact-balance-change{min-height:92px;display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;padding:0 16px;border-radius:8px;background:#fff}.channel-suite .contact-balance-change>div{display:grid;gap:4px}.channel-suite .contact-balance-change>div:last-child{text-align:right}.channel-suite .contact-balance-change span{color:#64748b;font-size:13px}.channel-suite .contact-balance-change b{color:#111827;font-size:24px}.channel-suite .contact-balance-change>div:last-child b{color:#2161f5}.channel-suite .contact-balance-change>i{color:#94a3b8;text-align:center;font-size:24px;font-style:normal}.channel-suite .contact-visible-scope{display:grid;gap:9px;padding:14px 16px;border-radius:8px;background:#fff;color:#475569;font-size:14px}.channel-suite .contact-visible-scope b{color:#111827;font-weight:500}.channel-suite .contact-visible-scope span{line-height:22px}.channel-suite .contact-submit{width:100%;min-height:48px;margin-top:auto;border:0;border-radius:8px;background:#2161f5;color:#fff;font-size:16px;font-weight:500}.channel-suite .contact-point-path>small{color:#64748b;text-align:center;font-size:12px;line-height:20px}.channel-suite .contact-apply-path>label{display:grid;gap:8px;margin:0;color:#334155;font-size:14px;font-weight:500}.channel-suite .contact-apply-path>label input{width:100%;height:48px;padding:0 14px;border-color:#cbd5e1;background:#f8fafd;font-size:14px}.channel-suite .contact-apply-path input,.channel-suite .contact-apply-path button,.channel-suite .contact-point-path button{position:relative;z-index:1}.channel-suite .contact-field-help{min-height:34px;margin:0;color:#64748b;font-size:12px;line-height:17px}.channel-suite .contact-reason-label{color:#334155;font-size:14px;font-weight:500}.channel-suite .contact-reason-options{min-height:70px;display:flex;align-content:flex-start;flex-wrap:wrap;gap:8px}.channel-suite .contact-reason-options button{min-height:32px;padding:0 16px;border:1px solid #bfd0ea;border-radius:16px;background:#fff;color:#475569;font-size:13px}.channel-suite .contact-reason-options button.selected{border-color:#2161f5;background:#2161f5;color:#fff}.channel-suite .contact-apply-note{padding:12px 14px;border:1px solid #f6d58a;border-radius:8px;background:#fff9e9}.channel-suite .contact-apply-note b{color:#9a5b00;font-size:13px;font-weight:500}.channel-suite .contact-apply-note p{margin:5px 0 0;color:#8a620b;font-size:12px;line-height:19px}.channel-suite .recent-modal{width:min(760px,100%)!important}.channel-suite .recent-list{max-height:520px;overflow-y:auto;margin-top:18px}.channel-suite .recent-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 4px;border-top:1px solid var(--channel-line)}.channel-suite .recent-list article div{display:grid;gap:5px}.channel-suite .recent-list article span{color:#667085;font-size:11px}.channel-suite .recent-list article button{min-height:36px;padding:0 14px;border:1px solid var(--channel-blue);border-radius:7px;background:#fff;color:var(--channel-blue)}.channel-suite .related-resource-result footer>div{display:flex;gap:8px}.channel-suite .task-counts{flex-wrap:wrap}.channel-suite .task-counts button{margin-left:auto;min-height:32px;padding:0 10px;border:1px solid var(--channel-blue);border-radius:7px;background:#fff;color:var(--channel-blue)}.channel-suite .channel-drawer>.full{display:flex;margin-top:18px;text-decoration:none}.channel-suite .current-task-select{min-height:34px;padding:0 28px 0 10px;border:1px solid #b9cdf8;border-radius:7px;background:#edf3ff;color:#175cd3;font-size:12px;font-weight:700}.channel-suite .filter-trigger-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;min-height:38px;margin-top:8px}.channel-suite .filter-trigger-label{flex:0 0 auto;margin-right:0;font-size:12px;white-space:nowrap}.channel-suite .filter-control-group{min-width:0;display:inline-flex;flex:0 0 auto;align-items:center;gap:8px}.channel-suite .filter-control-group>span{flex:0 0 auto;color:#172033;font-size:11px;font-weight:700;white-space:nowrap}.channel-suite .filter-control-group>button.filter-picker{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;border:1px solid var(--channel-line);border-radius:7px;background:#f7f9fc;color:#1d5bff;text-align:left}.channel-suite .filter-control-group>button.filter-picker b{min-width:0;overflow:hidden;color:#172033;font-size:11px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.channel-suite .filter-control-group>button.filter-picker.active{border-color:#7ba3ff;background:#f1f6ff}.channel-suite .direction-picker{width:clamp(150px,13vw,188px)}.channel-suite .region-filter-trigger{width:clamp(92px,8vw,116px)}.channel-suite .sort-picker{width:112px}.channel-suite .fee-picker{width:94px}.channel-suite .channel-filter-pills{display:flex;gap:8px}.channel-suite .channel-filter-pills button{min-height:30px;padding:0 12px;border:1px solid #d8e0ef;border-radius:999px;background:#fff;color:#667085;font-size:11px}.channel-suite .channel-filter-pills button.selected{border-color:#1d5bff;background:#1d5bff;color:#fff;font-weight:700}.channel-suite .filter-entry-hint{display:block;margin-top:4px;color:#667085;font-size:10px}.channel-suite .filter-entry-hint span{color:#1d5bff;font-weight:700}.channel-suite .search-filter-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3100;display:grid;place-items:center;padding:24px;background:#17203347}.channel-suite .search-filter-panel{position:relative;width:min(940px,100%);height:min(704px,92vh);display:grid;grid-template-rows:74px 44px 52px minmax(300px,1fr) 64px;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 10px 28px #00000029}.channel-suite .search-filter-panel>header{padding:18px 22px 8px}.channel-suite .search-filter-panel>header h2{margin:0;font-size:20px}.channel-suite .search-filter-panel>header p{margin:2px 0 0;color:#697386;font-size:12px}.channel-suite .search-filter-panel>nav{display:flex;align-items:center;gap:8px;margin:0 22px;padding:7px 6px;border:0;border-radius:8px;background:#f3f5f8}.channel-suite .search-filter-panel>nav button{min-width:88px;min-height:30px;padding:0 14px;border:1px solid #e5eaf2;border-radius:7px;background:#fff;color:#697386;font-size:12px}.channel-suite .search-filter-panel>nav button.active{border-color:#165dff;background:#eaf2ff;color:#165dff;font-weight:700}.channel-suite .filter-modal-search{display:flex;align-items:center;gap:8px;margin:12px 22px 0;padding:0 13px;border:1px solid #e5eaf2;border-radius:7px;background:#f7f9fc;color:#9aa5b4}.channel-suite .filter-modal-search input{width:100%;height:40px;border:0;outline:0;background:transparent;font-size:13px}.channel-suite .filter-modal-content{min-height:300px;overflow-y:auto;padding:6px 22px 12px}.channel-suite .filter-modal-content h3{margin:0 0 7px;font-size:15px}.channel-suite .filter-note{margin:0 0 16px;color:#667085;font-size:12px}.channel-suite .selected-chips{min-height:38px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:15px}.channel-suite .selected-chips>span{color:#667085;font-size:12px}.channel-suite .selected-chips button{padding:6px 9px;border:0;border-radius:999px;background:#eaf1ff;color:#175cd3;font-size:11px}.channel-suite .filter-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.channel-suite .filter-choice-grid label,.channel-suite .region-picker section label{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #e1e7ef;border-radius:8px;color:#475467;font-size:12px}.channel-suite .filter-choice-grid label.selected,.channel-suite .region-picker section label.selected{border-color:#78a1ff;background:#edf3ff;color:#175cd3;font-weight:700}.channel-suite .region-picker,.channel-suite .direction-cascade{display:grid;grid-template-columns:176px 1fr;height:396px;border:1px solid #e5eaf2;border-radius:10px;overflow:hidden}.channel-suite .region-picker aside,.channel-suite .direction-cascade aside{padding:0;overflow-y:auto;background:#f3f5f8}.channel-suite .region-picker aside button,.channel-suite .direction-cascade aside button{width:100%;min-height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border:0;border-radius:0;background:transparent;color:#697386;text-align:left;font-size:13px}.channel-suite .region-picker aside button.active,.channel-suite .direction-cascade aside button.active{background:#eaf2ff;color:#165dff;font-weight:700}.channel-suite .region-picker aside small{color:#175cd3}.channel-suite .region-picker section,.channel-suite .direction-cascade section{padding:16px 18px}.channel-suite .region-picker section h3,.channel-suite .direction-cascade section h3{font-size:14px}.channel-suite .region-picker section h3 small{margin-left:28px;color:#98a2b3;font-weight:400}.channel-suite .region-picker section>div,.channel-suite .direction-cascade section>div{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 28px;margin-top:15px}.channel-suite .direction-cascade label,.channel-suite .region-picker section label{min-height:38px;display:flex;align-items:center;gap:8px;border:0;padding:0;font-size:13px}.channel-suite .direction-cascade label.selected,.channel-suite .region-picker section label.selected{color:#165dff;font-weight:700;background:transparent}.channel-suite .source-grid,.channel-suite .sort-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 12px}.channel-suite .source-grid label,.channel-suite .sort-grid label{min-height:80px;display:grid;grid-template-columns:20px 1fr;align-content:center;column-gap:8px;padding:13px 15px;border:1px solid #d7dee9;border-radius:10px}.channel-suite .source-grid label.selected,.channel-suite .sort-grid label.selected{border-color:#8cb4ff;background:#f3f7ff}.channel-suite .source-grid input,.channel-suite .sort-grid input{grid-row:1 / 3;accent-color:#175cd3}.channel-suite .source-grid b{font-size:14px}.channel-suite .source-grid span,.channel-suite .sort-grid span{margin-top:4px;color:#64748b;font-size:12px;line-height:18px}.channel-suite .fee-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0 24px}.channel-suite .fee-quick button{min-height:42px;border:1px solid #e1e7ef;border-radius:8px;background:#fff}.channel-suite .fee-quick button.active{border-color:#175cd3;background:#edf3ff;color:#175cd3;font-weight:700}.channel-suite .fee-custom{display:flex;align-items:center;gap:10px}.channel-suite .fee-custom label{display:flex;align-items:center;gap:7px;color:#667085;font-size:12px}.channel-suite .fee-custom input{height:42px;padding:0 10px;border:1px solid #dce4f0;border-radius:8px}.channel-suite .fee-flags{display:flex;gap:22px;margin-top:20px}.channel-suite .fee-flags label{display:flex;gap:7px;font-size:12px}.channel-suite .search-filter-panel>footer{min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:10px 22px 14px;border-top:0}.channel-suite .search-filter-panel>footer span{color:#165dff;font-size:12px;font-weight:700}.channel-suite .search-filter-panel>footer div{display:flex;gap:12px}.channel-suite .search-filter-panel>footer button{min-height:40px;padding:0 20px;border:1px solid #c9d3e0;border-radius:8px;background:#fff;color:#123a6d;font-weight:700}.channel-suite .search-filter-panel>footer button.primary{min-width:106px;border-color:#123a6d;background:#123a6d;color:#fff}.channel-suite .filter-panel--sort{height:min(556px,92vh);grid-template-rows:76px 46px minmax(0,1fr) 74px;border-radius:14px;box-shadow:0 8px 24px #00000029}.channel-suite .filter-panel--sort>header{padding:17px 24px 6px}.channel-suite .filter-panel--sort>header h2{color:#172033;font-size:22px;line-height:27px}.channel-suite .filter-panel--sort>header p{margin-top:1px;color:#6e7b91;font-size:13px;line-height:18px}.channel-suite .filter-panel--sort>nav{gap:14px;margin:0 24px;padding:6px 0;border-radius:0;background:transparent}.channel-suite .filter-panel--sort>nav button{width:118px;min-width:118px;min-height:34px;padding:0;border-color:transparent;background:#f7f9fc;color:#6e7b91;font-size:13px;font-weight:400}.channel-suite .filter-panel--sort>nav button.active{border-color:#78a2ff;background:#eef4ff;color:#246bfe;font-weight:500}.channel-suite .filter-panel--sort .filter-modal-content{min-height:0;overflow:hidden;padding:10px 24px 0}.channel-suite .filter-panel--sort .filter-modal-content h3{margin:0 0 5px;color:#172033;font-size:18px;line-height:24px}.channel-suite .filter-panel--sort .filter-note{margin:0 0 20px;color:#6e7b91;font-size:13px;line-height:18px}.channel-suite .filter-panel--sort .sort-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px;padding:18px;border-radius:10px;background:#f7f9fc}.channel-suite .filter-panel--sort .sort-grid label{min-height:58px;grid-template-columns:18px minmax(0,1fr);grid-template-rows:20px 18px;align-content:center;column-gap:10px;padding:8px 17px;border-color:#e2e8f0;border-radius:8px;background:#fff;cursor:pointer}.channel-suite .filter-panel--sort .sort-grid label.selected{border-color:#78a2ff;background:#eef4ff}.channel-suite .filter-panel--sort .sort-grid input{width:18px;height:18px;margin:0;accent-color:#246bfe}.channel-suite .filter-panel--sort .sort-grid b{color:#172033;font-size:14px;line-height:20px;font-weight:400}.channel-suite .filter-panel--sort .sort-grid label.selected b{color:#246bfe;font-weight:500}.channel-suite .filter-panel--sort .sort-grid span{margin:0;overflow:hidden;color:#6e7b91;font-size:12px;line-height:18px;white-space:nowrap;text-overflow:ellipsis}.channel-suite .filter-panel--sort>footer{min-height:74px;align-items:flex-end;padding:10px 24px 20px}.channel-suite .filter-panel--sort>footer span{padding-bottom:12px;color:#246bfe;font-size:13px;font-weight:400}.channel-suite .filter-panel--sort>footer div{gap:12px}.channel-suite .filter-panel--sort>footer button{width:92px;min-height:42px;padding:0;border-color:#c8d3e2;color:#0b3b72;font-size:14px;font-weight:500}.channel-suite .filter-panel--sort>footer button.primary{width:112px;min-width:112px;border-color:#0b3b72;background:#0b3b72}.channel-suite .filter-panel--fee{height:min(704px,92vh);grid-template-rows:76px 46px minmax(0,1fr) 104px;border-radius:14px;box-shadow:0 8px 24px #00000029}.channel-suite .filter-panel--fee>header{padding:17px 24px 6px}.channel-suite .filter-panel--fee>header h2{color:#172033;font-size:22px;line-height:27px}.channel-suite .filter-panel--fee>header p{margin-top:1px;color:#6e7b91;font-size:13px;line-height:18px}.channel-suite .filter-panel--fee>nav{gap:14px;margin:0 24px;padding:6px 0;border-radius:0;background:transparent}.channel-suite .filter-panel--fee>nav button{width:118px;min-width:118px;min-height:34px;padding:0;border-color:transparent;background:#f7f9fc;color:#6e7b91;font-size:13px;font-weight:400}.channel-suite .filter-panel--fee>nav button.active{border-color:#78a2ff;background:#eef4ff;color:#246bfe;font-weight:500}.channel-suite .filter-panel--fee .filter-modal-content{min-height:0;overflow:hidden;padding:10px 24px 0}.channel-suite .filter-panel--fee .filter-modal-content>h3{margin:0 0 5px;color:#172033;font-size:18px;line-height:24px}.channel-suite .filter-panel--fee .filter-note{margin:0 0 20px;color:#6e7b91;font-size:13px;line-height:18px}.channel-suite .fee-filter-box{height:382px;padding:18px;border-radius:10px;background:#f7f9fc}.channel-suite .fee-filter-box h4{margin:0;color:#172033;font-size:15px;line-height:21px}.channel-suite .filter-panel--fee .fee-quick{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;margin:17px 0 18px}.channel-suite .filter-panel--fee .fee-quick button{min-height:42px;border-color:#d7dfea;border-radius:8px;color:#172033;font-size:13px}.channel-suite .filter-panel--fee .fee-quick button.active{border-color:#78a2ff;background:#eef4ff;color:#246bfe;font-weight:500}.channel-suite .filter-panel--fee .fee-custom{gap:20px;margin-top:15px}.channel-suite .filter-panel--fee .fee-custom label{position:relative;flex:0 1 360px;height:50px;display:block;color:#6e7b91}.channel-suite .filter-panel--fee .fee-custom input{width:100%;height:50px;padding:0 78px 0 15px;border-color:#d7dfea;border-radius:8px;color:#172033;font-size:14px}.channel-suite .filter-panel--fee .fee-custom label>span{position:absolute;top:16px;right:15px;color:#6e7b91;font-size:13px;pointer-events:none}.channel-suite .filter-panel--fee .fee-custom>em{color:#6e7b91;font-size:16px;font-style:normal}.channel-suite .filter-panel--fee .fee-flags{gap:32px;margin-top:23px}.channel-suite .filter-panel--fee .fee-flags label{min-width:300px;align-items:center;gap:12px;color:#172033;font-size:14px}.channel-suite .filter-panel--fee .fee-flags label:last-child{min-width:120px}.channel-suite .filter-panel--fee .fee-flags input{width:18px;height:18px;margin:0;accent-color:#2060ff}.channel-suite .filter-panel--fee>footer{position:relative;min-height:104px;align-items:flex-end;padding:10px 24px 20px}.channel-suite .filter-panel--fee>footer span{position:absolute;top:7px;left:24px;color:#246bfe;font-size:13px;font-weight:500}.channel-suite .filter-panel--fee>footer div{gap:12px;margin-left:auto}.channel-suite .filter-panel--fee>footer button{width:92px;min-height:42px;padding:0;border-color:#c8d3e2;color:#0b3b72;font-size:14px;font-weight:500}.channel-suite .filter-panel--fee>footer button.primary{width:112px;min-width:112px;border-color:#0b3b72;background:#0b3b72}.channel-suite .recent-filter-bar{display:flex;align-items:center;gap:18px;margin-bottom:12px;padding:13px 17px}.channel-suite .recent-filter-bar h2{font-size:16px}.channel-suite .recent-filter-bar>div{display:flex;gap:7px}.channel-suite .recent-filter-bar>div button{min-height:34px;padding:0 13px;border:1px solid #e0e7f0;border-radius:999px;background:#fff;color:#667085}.channel-suite .recent-filter-bar>div button.active{border-color:#175cd3;background:#175cd3;color:#fff}.channel-suite .clear-history{margin-left:auto;border:0;background:transparent;color:#d64545}.channel-suite .recent-page-card{padding:0;overflow:hidden}.channel-suite .recent-page-card>header{min-height:66px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid #e5ebf4}.channel-suite .recent-page-card>header h2{font-size:16px}.channel-suite .recent-page-card>header span{color:#667085;font-size:12px}.channel-suite .recent-page-card>header button{margin-left:auto;min-height:36px;padding:0 13px;border:1px solid #d6deea;border-radius:8px;background:#fff}.channel-suite .recent-records article{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 210px auto;align-items:center;gap:18px;min-height:120px;padding:18px 20px;border-bottom:1px solid #e5ebf4}.channel-suite .recent-check{position:absolute;left:6px}.channel-suite .recent-record-copy h3,.channel-suite .recent-record-copy p{margin:0}.channel-suite .recent-record-copy p{margin-top:7px;color:#667085;font-size:12px}.channel-suite .recent-record-copy span{display:inline-block;margin-top:8px;color:#175cd3;font-size:11px}.channel-suite .recent-record-meta{display:grid;gap:7px;color:#667085;font-size:11px}.channel-suite .recent-record-meta em{width:max-content;padding:4px 8px;border-radius:999px;font-style:normal}.channel-suite .recent-record-meta em.complete{background:#eaf8f1;color:#16834e}.channel-suite .recent-record-meta em.progress{background:#fff4d8;color:#b56d00}.channel-suite .recent-record-meta em.draft{background:#f1f3f6}.channel-suite .recent-records article>button{min-height:38px;padding:0 15px;border:1px solid #175cd3;border-radius:8px;background:#fff;color:#175cd3}.channel-suite .recent-batch-bar,.channel-suite .recent-pagination{min-height:54px;display:flex;align-items:center;gap:14px;padding:0 20px;background:#f8fafc;color:#667085;font-size:12px}.channel-suite .recent-batch-bar button{margin-left:auto;border:0;background:transparent}.channel-suite .recent-pagination{justify-content:space-between;border-top:1px solid #e5ebf4}.channel-suite .recent-pagination>div,.channel-suite .result-pagination label{display:flex;align-items:center;gap:7px}.channel-suite .recent-pagination button{min-height:34px;padding:0 11px;border:1px solid #d6deea;border-radius:7px;background:#fff}.channel-suite .recent-pagination input,.channel-suite .result-pagination input{width:54px;height:34px;padding:0 6px;border:1px solid #d6deea;border-radius:7px}.channel-suite .demand-input-shell{position:relative}.channel-suite .demand-input-shell textarea{padding-bottom:30px}.channel-suite .demand-input-shell>span{position:absolute;right:12px;bottom:9px;color:#98a2b3;font-size:10px}.channel-suite .upload-file .file-reupload,.channel-suite .upload-file .file-delete{min-height:30px;border:0;background:transparent;color:#175cd3}.channel-suite .upload-file .file-delete{display:inline-flex;align-items:center;gap:4px;color:#d64545}.channel-suite .teacher-profile-drawer{width:min(584px,100%);padding:0;background:#f6f8fb}.channel-suite .teacher-profile-header{position:sticky;top:0;z-index:2;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-bottom:1px solid #e2e8f0;background:#fff}.channel-suite .teacher-profile-header h2{margin:0;font-size:18px}.channel-suite .teacher-profile-header span{display:block;margin-top:4px;color:#98a2b3;font-size:10px}.channel-suite .teacher-profile-header>button{min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:0;border-radius:8px;background:#f1f5f9}.channel-suite .teacher-profile-header.nested{justify-content:flex-start}.channel-suite .teacher-profile-header.nested>button:last-child{margin-left:auto}.channel-suite .teacher-profile-header.nested>div{text-align:center}.channel-suite .teacher-profile-body{display:grid;gap:12px;padding:16px}.channel-suite .teacher-profile-body>section{margin:0;padding:16px;background:#fff}.channel-suite .profile-identity{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:12px}.channel-suite .profile-avatar{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#dfe9ff,#f2f6ff);color:#175cd3;font-size:20px;font-weight:800}.channel-suite .profile-identity h2{display:flex;align-items:center;gap:7px;font-size:20px}.channel-suite .profile-identity p{margin:5px 0;color:#475467}.channel-suite .profile-identity small{color:#98a2b3}.channel-suite .profile-identity>button,.channel-suite .profile-contact button{min-height:36px;padding:0 11px;border:1px solid #d6deea;border-radius:8px;background:#fff;color:#175cd3}.channel-suite .profile-contact{display:flex;align-items:center;justify-content:space-between}.channel-suite .profile-contact div{display:grid;gap:5px}.channel-suite .profile-contact span{color:#667085;font-size:12px}.channel-suite .profile-section-title{display:flex;align-items:center;justify-content:space-between}.channel-suite .profile-section-title h3{margin:0!important}.channel-suite .profile-section-title span{color:#98a2b3;font-size:11px}.channel-suite .profile-section-title button{display:inline-flex;align-items:center;gap:3px;border:0;background:transparent;color:#175cd3;font-size:11px}.channel-suite .profile-ratings{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.channel-suite .profile-ratings div{display:grid;gap:3px;padding:11px;border-radius:8px;background:#f7f9fc}.channel-suite .profile-ratings span{color:#667085;font-size:10px}.channel-suite .profile-ratings b{font-size:18px}.channel-suite .profile-ratings small{color:#f59e0b;font-size:8px;letter-spacing:-1px}.channel-suite .profile-teaching{display:grid;grid-template-columns:1fr 1fr;margin:0}.channel-suite .profile-teaching div{padding:10px 0;border-top:1px solid #edf0f4}.channel-suite .profile-teaching dt{color:#98a2b3;font-size:10px}.channel-suite .profile-teaching dd{margin:4px 0 0;font-size:12px;font-weight:700}.channel-suite .profile-resource-list{display:grid;margin-top:9px}.channel-suite .profile-resource-list>button,.channel-suite .profile-resource-list>div{min-height:58px;display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;padding:7px 0;border:0;border-top:1px solid #edf0f4;background:transparent;color:#172033;text-align:left}.channel-suite .profile-resource-list svg{color:#175cd3}.channel-suite .profile-resource-list span{display:grid;gap:4px}.channel-suite .profile-resource-list small{color:#98a2b3}.channel-suite .profile-intro{white-space:pre-wrap}.channel-suite .course-list-search{height:44px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #dce4f0;border-radius:8px;background:#fff;color:#98a2b3}.channel-suite .course-list-search input{width:100%;border:0;outline:0}.channel-suite .course-attachment-list{display:grid;gap:10px}.channel-suite .course-attachment-list article{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:11px;padding:15px;border:1px solid #dfe6ef;border-radius:10px;background:#fff}.channel-suite .course-file-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:9px;background:#edf3ff;color:#175cd3}.channel-suite .course-attachment-list h3,.channel-suite .course-attachment-list p{margin:0}.channel-suite .course-attachment-list p,.channel-suite .course-attachment-list span{margin-top:4px;color:#667085;font-size:10px}.channel-suite .course-attachment-list article>button{display:inline-flex;align-items:center;gap:3px;min-height:36px;padding:0 10px;border:1px solid #175cd3;border-radius:7px;background:#fff;color:#175cd3}.channel-suite .course-detail-body>h2{margin:0}.channel-suite .course-detail-body>p{margin:-6px 0 2px;color:#667085}.channel-suite .course-detail-body .resource-kind{width:max-content;padding:5px 9px;border-radius:999px;background:#eaf1ff;color:#175cd3;font-size:11px;font-weight:700}.channel-suite .course-detail-body>a{text-decoration:none}.channel-suite .resource-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.channel-suite .resource-result-grid .related-resource-result{min-height:310px;margin:0;padding:18px;box-shadow:0 4px 12px #0f214a0f}.channel-suite .related-resource-result>div:first-child em{padding:5px 9px;border-radius:8px;background:#e9f8f2;color:#12a36d;font-size:10px;font-style:normal}.channel-suite .resource-subline{color:#70809b;font-size:11px}.channel-suite .resource-teacher{display:flex;align-items:center;gap:8px;padding-top:10px;border-top:1px solid #e2e8f0;color:#70809b;font-size:11px}.channel-suite .resource-teacher b{color:#172033;font-size:13px}.channel-suite .resource-teacher em{padding:5px 9px;border-radius:7px;background:#eaf1ff;color:#1f64f5;font-style:normal}.channel-suite .resource-teacher small{margin-left:auto}.channel-suite .resource-teacher-intro{min-height:36px}.channel-suite .related-resource-result footer strong{font-size:15px;color:#15213b}.channel-suite .resource-file{min-height:42px;display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #dce5f3;border-radius:8px;background:#f8fafd}.channel-suite .resource-file svg{color:#1f64f5}.channel-suite .resource-file b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-suite .resource-file button,.channel-suite .resource-file a{margin-left:auto;padding:7px 12px;border:1px solid #cfe0ff;border-radius:7px;background:#fff;color:#1f64f5;text-decoration:none}.channel-suite .unlocked-file.available{border-color:#a7e7d0;background:#ecfbf5}.channel-suite .resource-detail-drawer{width:min(580px,100%);padding:0;background:#f7f9fc}.channel-suite .resource-detail-drawer>header,.channel-suite .marketing-detail-drawer>header{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid #e2e8f0;background:#fff}.channel-suite .resource-detail-drawer>header h2,.channel-suite .resource-detail-drawer>header p,.channel-suite .marketing-detail-drawer>header h2,.channel-suite .marketing-detail-drawer>header p{margin:0}.channel-suite .resource-detail-drawer>header p,.channel-suite .marketing-detail-drawer>header p{margin-top:4px;color:#697386;font-size:11px}.channel-suite .resource-detail-drawer>header button,.channel-suite .marketing-detail-drawer>header button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:8px;background:#f1f5f9}.channel-suite .resource-detail-body{display:grid;gap:10px;padding:16px}.channel-suite .resource-detail-body>section{margin:0;background:#fff}.channel-suite .resource-detail-title{display:grid;grid-template-columns:1fr auto;gap:6px;padding:3px 0 7px}.channel-suite .resource-detail-title button{width:max-content;display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:#1f61ff}.channel-suite .resource-detail-title em{padding:5px 10px;border-radius:999px;background:#fff4e5;color:#b56d00;font-size:10px;font-style:normal}.channel-suite .resource-detail-title em.unlocked{background:#e9f8f0;color:#16834e}.channel-suite .resource-detail-title h2,.channel-suite .resource-detail-title p{grid-column:1/-1;margin:0}.channel-suite .resource-detail-title p{color:#697386;font-size:11px}.channel-suite .resource-detail-body dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.channel-suite .resource-detail-body dt{color:#98a2b3;font-size:10px}.channel-suite .resource-detail-body dd{margin:5px 0 0;font-weight:700}.channel-suite .linked-teacher{display:grid;gap:8px}.channel-suite .linked-teacher>div{display:flex;gap:8px;align-items:center}.channel-suite .linked-teacher span{padding:5px 9px;border-radius:7px;background:#eaf1ff;color:#1f64f5;font-size:10px}.channel-suite .linked-teacher p{margin:0!important}.channel-suite .resource-unlock-modal>div{width:min(720px,100%)}.channel-suite .unlock-balance{padding:11px 13px;border:1px solid #f3cf78;border-radius:8px;background:#fff8e8;color:#9a6500}.channel-suite .unlock-point-card{display:grid;grid-template-columns:1fr auto;gap:8px;margin:18px 0;padding:16px;border-radius:10px;background:#f2f6ff}.channel-suite .unlock-point-card strong{color:#1f64f5}.channel-suite .unlock-point-card p{grid-column:1/-1;margin:0}.channel-suite .marketing-filter select,.channel-suite .marketing-filter-trigger{min-width:132px;height:38px;padding:0 10px;border:1px solid var(--channel-line);border-radius:7px;background:#f8fafd;color:#172033;text-align:left}.channel-suite .marketing-filter-trigger{min-width:180px;display:flex;align-items:center;justify-content:space-between;white-space:nowrap}.channel-suite .marketing-filter label>input{width:145px}.channel-suite .marketing-table{min-width:1248px;table-layout:fixed;font-size:10px}.channel-suite .marketing-table th{height:46px;font-size:11px}.channel-suite .marketing-table td{height:120px;padding:12px 10px;vertical-align:middle}.channel-suite .marketing-table th:nth-child(1),.channel-suite .marketing-table td:nth-child(1){width:78px}.channel-suite .marketing-table th:nth-child(2),.channel-suite .marketing-table td:nth-child(2){width:86px}.channel-suite .marketing-table th:nth-child(3),.channel-suite .marketing-table td:nth-child(3){width:104px}.channel-suite .marketing-table th:nth-child(4),.channel-suite .marketing-table td:nth-child(4){width:250px}.channel-suite .marketing-table th:nth-child(5),.channel-suite .marketing-table td:nth-child(5){width:300px}.channel-suite .marketing-table th:nth-child(6),.channel-suite .marketing-table td:nth-child(6){width:72px}.channel-suite .marketing-table th:nth-child(7),.channel-suite .marketing-table td:nth-child(7){width:68px}.channel-suite .marketing-table th:nth-child(8),.channel-suite .marketing-table td:nth-child(8){width:70px}.channel-suite .marketing-table th:nth-child(9),.channel-suite .marketing-table td:nth-child(9){width:80px}.channel-suite .marketing-table th:nth-child(10),.channel-suite .marketing-table td:nth-child(10){width:64px}.channel-suite .marketing-table th:nth-child(11),.channel-suite .marketing-table td:nth-child(11){width:76px}.channel-suite .marketing-table .table-intro{width:286px;max-height:72px;display:block;overflow-y:auto;overflow-x:hidden;padding-right:8px;color:#667085;font-size:10px;line-height:18px;text-align:left;white-space:normal;overflow-wrap:anywhere;overscroll-behavior:contain;scrollbar-gutter:stable}.channel-suite .marketing-table .tag-wrap{align-content:center}.channel-suite .marketing-table .tag-wrap span{padding:4px 7px;border-radius:999px;font-size:9px}.channel-suite .table-code-link,.channel-suite .table-name-link,.channel-suite .table-intro-button,.channel-suite .table-detail-action{padding:0;border:0;background:transparent}.channel-suite .table-code-link{color:#1d5bff;font-size:11px;font-weight:700}.channel-suite .table-name-link{color:#172033;font-size:10px;font-weight:500}.channel-suite .table-intro-button{width:100%;display:block}.channel-suite .table-detail-action{color:#1552f0;font-size:10px;font-weight:600;white-space:nowrap}.channel-suite .table-code-link:hover,.channel-suite .table-name-link:hover,.channel-suite .table-intro-button:hover .table-intro,.channel-suite .table-detail-action:hover{color:#1d5bff;text-decoration:underline}.channel-suite .marketing-pagination{min-height:54px;padding:0;background:#eef3fb}.channel-suite .marketing-pagination>span{font-size:12px}.channel-suite .marketing-pagination>div{align-items:center;gap:8px}.channel-suite .marketing-pagination button{min-width:32px;height:32px;padding:0 10px;border:1px solid #d7dee9;border-radius:8px;background:#fff;color:#475569;font-size:12px}.channel-suite .marketing-pagination button.active{border-color:#143d78;background:#143d78;color:#fff}.channel-suite .marketing-pagination button.confirm{min-width:48px;border-color:#0d3b75;background:#0d3b75;color:#fff}.channel-suite .marketing-page-item{display:inline-flex;align-items:center;gap:8px}.channel-suite .marketing-page-item i{color:#475569;font-style:normal}.channel-suite .marketing-pagination label{display:flex;align-items:center;gap:6px;color:#33425c;font-size:12px;font-weight:500}.channel-suite .marketing-pagination input{width:42px;height:32px;padding:0 4px;border:1px solid #bac7de;border-radius:6px;text-align:center}.channel-suite .marketing-detail-drawer{width:min(480px,100%);height:100vh;height:100dvh;max-height:100dvh;padding:0;overflow:hidden;display:grid;grid-template-rows:84px minmax(0,1fr);background:#fff}.channel-suite .marketing-detail-drawer>header{min-height:84px;padding:20px 24px 10px;border:0}.channel-suite .marketing-detail-drawer>header h2{color:#172033;font-size:22px;line-height:28px;font-weight:700;letter-spacing:0}.channel-suite .marketing-detail-drawer>header p{margin-top:2px;color:#697386;font-size:12px;line-height:18px}.channel-suite .marketing-detail-drawer>header button{position:relative;z-index:3;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:#94a0b2;cursor:pointer}.channel-suite .marketing-detail-drawer>header button:hover{background:#f4f6f9;color:#475467}.channel-suite .marketing-detail-drawer>header button svg{width:22px;height:22px}.channel-suite .marketing-detail-body{min-height:0;display:grid;align-content:start;gap:16px;padding:0 24px 24px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.channel-suite .marketing-detail-body>section{box-sizing:border-box;margin:0;padding:14px 16px;border:0;border-radius:10px;background:#f7f9fc;overflow:hidden}.channel-suite .marketing-detail-body h2,.channel-suite .marketing-detail-body h3,.channel-suite .marketing-detail-body p{margin:0}.channel-suite .marketing-detail-body h3{margin-bottom:8px;color:#172033;font-size:15px;line-height:20px;font-weight:700}.channel-suite .marketing-detail-body p{color:#697386;font-size:13px;line-height:20px}.channel-suite .marketing-identity{min-height:86px;background:#f3f7ff!important}.channel-suite .marketing-identity h2{display:flex;align-items:center;gap:9px;color:#172033;font-size:22px;line-height:28px;font-weight:700}.channel-suite .marketing-identity h2 span{min-height:24px;display:inline-flex;align-items:center;padding:0 9px;border-radius:6px;background:#eaf2ff;color:#165dff;font-size:11px;line-height:24px;font-weight:700}.channel-suite .marketing-identity p{margin-top:8px;font-size:12px;line-height:18px}.channel-suite .marketing-directions{min-height:80px}.channel-suite .marketing-directions .tag-wrap{gap:6px}.channel-suite .marketing-directions .tag-wrap span{min-height:24px;padding:3px 9px;border-radius:6px;background:#eaf2ff;color:#165dff;font-size:11px;line-height:18px;font-weight:700}.channel-suite .marketing-teaching{min-height:112px}.channel-suite .marketing-teaching>p:first-of-type{display:flex;align-items:center;gap:22px}.channel-suite .marketing-teaching>p:first-of-type b{color:#172033;font-size:13px;font-weight:700}.channel-suite .marketing-teaching>p:last-child{margin-top:8px;font-size:12px}.channel-suite .marketing-courses{min-height:120px}.channel-suite .marketing-courses p,.channel-suite .marketing-qualifications p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-suite .marketing-courses p:first-of-type{color:#172033;font-weight:700}.channel-suite .marketing-qualifications{min-height:120px}.channel-suite .marketing-intro{min-height:142px}.channel-suite .marketing-intro p{box-sizing:border-box;height:108px;display:block;overflow-y:auto;overflow-x:hidden;padding:0 10px 16px 0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding-bottom:16px}.channel-suite .marketing-table .table-intro::-webkit-scrollbar,.channel-suite .marketing-intro p::-webkit-scrollbar,.channel-suite .marketing-detail-body::-webkit-scrollbar{width:7px}.channel-suite .marketing-table .table-intro::-webkit-scrollbar-thumb,.channel-suite .marketing-intro p::-webkit-scrollbar-thumb,.channel-suite .marketing-detail-body::-webkit-scrollbar-thumb{border-radius:999px;background:#c5cfdd}.channel-suite .marketing-table .table-intro::-webkit-scrollbar-track,.channel-suite .marketing-intro p::-webkit-scrollbar-track,.channel-suite .marketing-detail-body::-webkit-scrollbar-track{background:transparent}.channel-suite .readonly-note{box-sizing:border-box;min-height:48px;display:flex;align-items:center;padding:0 16px;border-radius:8px;background:#e9f8f0;color:#20a464;font-size:12px;line-height:18px;font-weight:700}.channel-suite .marketing-copy-button{width:100%;min-height:48px;margin:0;border-radius:10px;background:#1f64f5;color:#fff;font-size:14px;font-weight:500}.channel-suite .marketing-copy-modal>div{width:min(680px,100%)}.channel-suite .marketing-copy-modal section{margin-top:18px;padding:16px;border:1px solid #cddbf2;border-radius:10px;background:#f8faff}.channel-suite .marketing-copy-modal pre{max-height:320px;overflow:auto;white-space:pre-wrap;color:#475569;font:inherit;font-size:12px;line-height:1.65}.channel-suite .copy-warning{margin-top:12px;padding:12px;border-radius:8px;background:#fff6df;color:#986300;font-size:11px}.channel-suite .marketing-copy-modal .modal-actions{align-items:center}.channel-suite .marketing-copy-modal .marketing-copy-action{min-width:96px;border-color:#1f64f5;background:#1f64f5;color:#fff;font-size:14px;font-weight:700}.channel-suite .copy-status{margin-top:12px;padding:10px 12px;border-radius:8px;font-size:12px;line-height:18px}.channel-suite .copy-status.success{background:#e9f8f0;color:#16804a}.channel-suite .copy-status.error{background:#fff1f2;color:#b42318}.channel-suite .marketing-direction-modal>div,.channel-suite .marketing-period-modal>div{width:min(940px,calc(100vw - 48px))}.channel-suite .marketing-direction-modal .filter-modal-search{margin:16px 0 10px}.channel-suite .marketing-direction-layout{display:grid;grid-template-columns:176px minmax(0,1fr);min-height:330px;margin-top:12px;border:1px solid #e5eaf2;border-radius:10px;overflow:hidden}.channel-suite .marketing-direction-layout aside{display:grid;align-content:start;background:#f3f5f8}.channel-suite .marketing-direction-layout aside button{box-sizing:border-box;width:100%;min-height:44px;display:flex;align-items:center;padding:0 18px;border:0;border-radius:0;background:transparent;color:#697386;font-size:12px;text-align:left}.channel-suite .marketing-direction-layout aside button:hover{background:#edf1f7;color:#334155}.channel-suite .marketing-direction-layout aside button.active{background:#eaf2ff;color:#165dff;font-weight:700}.channel-suite .marketing-direction-layout section{min-width:0;padding:16px 18px}.channel-suite .marketing-direction-layout section>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:38px;column-gap:18px;row-gap:4px}.channel-suite .marketing-direction-layout label{min-width:0;height:38px;display:flex;align-items:center;gap:8px;margin:0;padding:0 10px;border-radius:7px}.channel-suite .marketing-direction-layout label.selected{background:#edf3ff;color:#165dff;font-weight:700}.channel-suite .marketing-direction-modal .modal-actions span,.channel-suite .marketing-period-modal .modal-actions span{margin-right:auto;color:#165dff;font-size:11px;font-weight:700}.channel-suite .marketing-period-modal>div{box-sizing:border-box;min-height:640px;padding:18px 20px 22px;border:1px solid #d6e0f2;border-radius:12px;box-shadow:0 12px 28px #0a142929}.channel-suite .marketing-period-modal h2{margin:0;color:#0e1a38;font-size:22px;line-height:30px}.channel-suite .marketing-period-modal>div>p{margin:0;color:#637594;font-size:13px;line-height:21px}.channel-suite .marketing-period-modal h3{margin:20px 0 10px;color:#0e1a38;font-size:15px;line-height:24px}.channel-suite .marketing-period-modal .modal-close{top:16px;right:16px;background:transparent;color:#7a8ca8}.channel-suite .period-presets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.channel-suite .period-presets button{min-height:44px;border:1px solid #d6e0f2;border-radius:8px;background:#fff;color:#0e1a38;font-size:14px}.channel-suite .period-presets button.active{border-color:#145cf2;background:#ebf2ff;color:#145cf2;font-weight:700}.channel-suite .custom-dates{display:grid;grid-template-columns:1fr 1fr;gap:20px}.channel-suite .custom-dates input{box-sizing:border-box;width:100%;height:52px;padding:0 14px;border:1px solid #d6e0f2;border-radius:8px;background:#f7faff;color:#0e1a38;font-size:14px}.channel-suite .period-current-range{min-height:54px;display:flex;align-items:center;margin-top:20px;padding:0 16px;border-radius:8px;background:#f0f7ff;color:#145cf2;font-size:13px;font-weight:700}.channel-suite .period-scope-note{min-height:112px;box-sizing:border-box;margin-top:20px;padding:13px 15px;border:1px solid #d6e0f2;border-radius:8px;background:#f7faff}.channel-suite .period-scope-note b{color:#0e1a38;font-size:14px}.channel-suite .period-scope-note p{margin:6px 0 0;color:#637594;font-size:13px;line-height:20px}.channel-suite .marketing-period-modal .modal-actions{align-items:center;margin-top:24px}.channel-suite .marketing-period-modal .modal-actions span{font-size:13px}.channel-suite .marketing-period-modal .modal-actions button{min-width:96px;min-height:42px;border-color:#d6e0f2;color:#06337a;font-size:14px;font-weight:700}.channel-suite .marketing-period-modal .modal-actions button.primary{min-width:110px;border-color:#06337a;background:#06337a;color:#fff}.channel-suite--ai-search{width:100%;max-width:none;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:#172033;font-synthesis:none}.channel-suite--ai-search .channel-heading{margin-bottom:20px}.channel-suite--ai-search .channel-heading h1{color:#0f172a;font-size:30px;line-height:42px;letter-spacing:0;font-weight:700}.channel-suite--ai-search .channel-heading p{margin-top:4px;color:#63708a;font-size:14px;line-height:20px;font-weight:400}.channel-suite--ai-search .channel-heading .channel-primary{width:168px;min-height:44px;border-radius:9px;background:#1d5bff;border-color:#1d5bff}.channel-suite--ai-search .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.channel-suite--ai-search .demand-card,.channel-suite--ai-search .task-panel{border-color:#d8e0ef;border-radius:10px;box-shadow:none}.channel-suite--ai-search .demand-card{padding:14px 16px}.channel-suite--ai-search .section-title h2{font-size:16px;line-height:22px;font-weight:700}.channel-suite--ai-search .section-title span{font-size:11px;line-height:16px;font-weight:400}.channel-suite--ai-search .demand-row textarea{box-sizing:border-box;height:76px;min-height:76px;resize:vertical;background:#f6f8fc;font-family:inherit;font-size:12px;line-height:18px;font-weight:400}.channel-suite--ai-search .demand-actions button{height:36px;min-height:36px}.channel-suite--ai-search .demand-actions .reset{border-color:#b8ccf2;background:#fff;color:#1f61ff}.channel-suite--ai-search .demand-actions button:disabled{cursor:not-allowed;opacity:.48}.channel-suite--ai-search .form-help{margin-top:8px;color:#667085;font-size:10px;line-height:15px;font-weight:400}.channel-suite--ai-search .upload-file{box-sizing:border-box;max-width:calc(100% - 210px);min-height:60px;padding:9px 11px}.channel-suite--ai-search .upload-file-type{width:40px;height:40px;display:grid;place-content:center;flex:0 0 auto;border-radius:7px;background:#e6f0ff;color:#1f61ff;text-align:center}.channel-suite--ai-search .upload-file-type b{font-size:9px;line-height:12px}.channel-suite--ai-search .upload-file-type small{color:#66738a;font-size:8px;line-height:11px}.channel-suite--ai-search .upload-file-copy{min-width:0;flex:1}.channel-suite--ai-search .upload-file-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-suite--ai-search .upload-file.success>span{background:#e8fbf5;color:#059e6b}.channel-suite--ai-search .upload-file.parsing>span{background:#fff4d8;color:#9a5b00}.channel-suite--ai-search .upload-file.failed{border-color:#f5c2c4;background:snow}.channel-suite--ai-search .upload-file.failed>span{background:#fff1f2;color:#d64545}.channel-suite--ai-search .upload-file .file-reupload,.channel-suite--ai-search .upload-file .file-delete{padding:0 12px;border:1px solid #b8ccf2;border-radius:7px;background:#fff;font-size:11px;font-weight:700}.channel-suite--ai-search .upload-file .file-delete{border-color:#f5c2c4;background:#fff5f5}.channel-suite--ai-search .original-demand button{flex:0 0 auto;padding:5px 8px;border:0;border-radius:5px;background:#fff;color:#1d5bff;font-size:11px;font-weight:700}.channel-suite--ai-search .original-demand{min-height:42px;font-size:12px;line-height:18px;font-weight:400}.channel-suite--ai-search .original-demand b{font-size:11px;line-height:16px;font-weight:700}.channel-suite--ai-search .task-heading h2{font-size:18px;line-height:26px;font-weight:700}.channel-suite--ai-search .task-heading p{font-size:12px;line-height:18px;font-weight:400}.channel-suite--ai-search .ai-generated-badge{display:inline-flex;align-items:center;min-height:20px;margin-right:5px;padding:0 7px;border-radius:5px;background:#eef3ff;color:#1d5bff;font-size:10px;font-weight:700}.channel-suite--ai-search .task-grid article{box-sizing:border-box}.channel-suite--ai-search .task-top{min-width:0}.channel-suite--ai-search .task-top h3{min-width:0;overflow:visible;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;word-break:break-word;font-size:16px;line-height:23px;font-weight:700}.channel-suite--ai-search .task-grid article>p{font-size:11px;line-height:18px;font-weight:400}.channel-suite--ai-search .task-view{justify-self:end;margin-left:0;min-width:96px;min-height:28px;padding:0 12px;border:0;border-radius:8px;background:#eef3ff;color:#1d5bff;font-size:11px;font-weight:700;white-space:nowrap}.channel-suite--ai-search .task-counts button{margin-left:auto;min-height:28px;padding:0 10px;border:0;border-radius:7px;background:#eef3ff;color:#1d5bff;font-size:11px;font-weight:700}.channel-suite--ai-search .ai-project-insight{padding:22px 24px}.channel-suite--ai-search .ai-project-insight>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.channel-suite--ai-search .ai-project-insight h2{margin:0 0 5px;font-size:20px}.channel-suite--ai-search .ai-project-insight header p{margin:0;color:#667085;font-size:13px}.channel-suite--ai-search .ai-elapsed{flex:0 0 auto;padding:7px 11px;border-radius:999px;background:#eef8f4;color:#14725e;font-size:13px;font-weight:700}.channel-suite--ai-search .ai-insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.channel-suite--ai-search .ai-insight-grid>div{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid #e1e9e6;border-radius:12px;background:#fbfdfc}.channel-suite--ai-search .ai-insight-grid b{color:#53615d;font-size:13px}.channel-suite--ai-search .ai-insight-grid span{color:#18211f;font-size:15px;line-height:1.55}.channel-suite--ai-search .ai-insight-grid small{color:#6c7975;line-height:1.55}.channel-suite--ai-search .ai-insight-wide{grid-column:1 / -1}.channel-suite--ai-search .ai-direction-groups{display:flex;flex-wrap:wrap;gap:8px}.channel-suite--ai-search .ai-direction-groups span{padding:5px 9px;border-radius:8px;background:#eef7f4;color:#176a59;font-size:13px}.channel-suite--ai-search .hard-conditions{border-color:#f2d5aa;background:#fffaf2}@media (max-width: 760px){.channel-suite--ai-search .ai-project-insight>header{flex-direction:column}.channel-suite--ai-search .ai-insight-grid{grid-template-columns:1fr}.channel-suite--ai-search .ai-insight-wide{grid-column:auto}}.channel-suite .recent-filter-bar{min-height:72px;gap:22px;margin-bottom:14px;padding:15px 18px;border-color:#d9e2f0;border-radius:14px;box-shadow:none}.channel-suite .recent-filter-bar h2{font-size:18px;color:#10234a}.channel-suite .recent-filter-bar>div{gap:8px}.channel-suite .recent-filter-bar>div button{min-width:86px;min-height:40px;padding:0 16px;border-color:#d9e2f0;border-radius:8px;background:#f2f6fc;color:#53627b;font-size:14px;font-weight:600}.channel-suite .recent-filter-bar>div button.active{border-color:#10234a;background:#10234a;color:#fff}.channel-suite .clear-history{min-width:112px;min-height:40px;margin-left:auto;border:1px solid #b9cdf4;border-radius:8px;background:#fff;color:#1d5bff;font-size:14px;font-weight:600}.channel-suite .recent-page-card{padding:0;border-color:#d9e2f0;border-radius:14px;box-shadow:none}.channel-suite .recent-page-card>header{min-height:60px;padding:0 17px;border-bottom:0}.channel-suite .recent-page-card>header h2{color:#10234a;font-size:18px}.channel-suite .recent-page-card>header span{color:#70809b;font-size:13px}.channel-suite .recent-page-card>header button{min-width:116px;min-height:36px;border-color:#b9cdf4;color:#1d5bff;font-size:13px;font-weight:600}.channel-suite .recent-records{display:grid;gap:10px;padding:0 12px 14px}.channel-suite .recent-records article{grid-template-columns:minmax(0,1fr) 244px 122px;gap:20px;min-height:112px;padding:16px 17px;border:1px solid #e1e7f0;border-radius:10px;background:#fbfcfe}.channel-suite .recent-record-copy h3{color:#172033;font-size:17px;line-height:1.4}.channel-suite .recent-record-copy p{margin-top:6px;overflow:hidden;color:#667085;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.channel-suite .recent-record-copy span{margin-top:8px;color:#1d5bff;font-size:13px}.channel-suite .recent-record-meta{grid-template-columns:max-content max-content;align-items:center;gap:8px 10px;font-size:13px}.channel-suite .recent-record-meta b{color:#1d5bff;font-weight:600}.channel-suite .recent-record-meta em{width:84px;height:28px;display:grid;place-items:center;padding:0;border-radius:14px}.channel-suite .recent-record-meta time{grid-column:1 / -1;color:#70809b}.channel-suite .recent-records article>button{width:122px;min-height:38px;padding:0;font-size:13px;font-weight:600}.channel-suite .recent-records article>button.primary{background:#1d5bff;color:#fff}.channel-suite .recent-batch-bar{margin:0 14px 10px;border-radius:8px}.channel-suite .recent-pagination{min-height:60px;margin:0 14px 14px;padding:0 16px;border:1px solid #e1e7f0;border-radius:10px;background:#fff;color:#64748b}.channel-suite .recent-pagination button{min-width:84px;min-height:40px;color:#155eef}.channel-suite .recent-pagination b{width:44px;height:40px;display:grid;place-items:center;border-radius:8px;background:#10234a;color:#fff}.channel-suite .recent-pagination input{width:48px;height:36px}.channel-suite .recent-pagination>div>button:last-child{min-width:48px;min-height:36px;border-color:#10234a;background:#10234a;color:#fff}.channel-suite--ai-search .recent-search-view{font-family:Noto Sans SC,Noto Sans CJK SC,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none}.channel-suite--ai-search .recent-search-view .channel-heading{min-height:57px;margin-bottom:16px}.channel-suite--ai-search .recent-search-view .channel-heading h1{font-weight:500}.channel-suite--ai-search .recent-search-view .channel-heading .channel-primary{background:#0f4fc9;border-color:#0f4fc9;font-size:15px;font-weight:500}.channel-suite--ai-search .recent-filter-bar .clear-history{border-color:#d9e2f0;color:#0f4fc9}.channel-suite--ai-search .recent-page-card>header button{border-color:#d9e2f0;color:#0f4fc9}.channel-suite--ai-search .recent-records article:hover{border-color:#b8c7de;background:#fff}.channel-suite--ai-search .recent-records article>button{border-color:#b8c7de;color:#0f4fc9}.channel-suite--ai-search .recent-records article>button.primary{border-color:#0f4fc9;background:#0f4fc9}.channel-suite--ai-search .recent-record-copy p{color:#52627d}.channel-suite--ai-search .recent-record-copy span{color:#536886}.channel-suite--ai-search .recent-record-meta{color:#8794aa}.channel-suite--ai-search .recent-record-meta b{color:#0f4fc9}.channel-suite--ai-search .recent-record-meta em.complete{background:#e9f7f0;color:#16845b}.channel-suite--ai-search .recent-record-meta em.matched{background:#eaf1ff;color:#175cd3}.channel-suite--ai-search .recent-record-meta em.progress{background:#fff3d6;color:#b86600}.channel-suite--ai-search .recent-record-meta em.draft{background:#f0f3f8;color:#70809b}.channel-suite--ai-search .recent-check{width:18px;height:18px;accent-color:#0f4fc9}.channel-suite--ai-search .recent-batch-bar label{display:inline-flex;align-items:center;gap:8px}.channel-suite--ai-search .recent-batch-bar input{width:18px;height:18px;accent-color:#0f4fc9}.channel-suite--ai-search .recent-batch-bar button.danger{min-height:34px;padding:0 12px;border:1px solid #f3c6ca;border-radius:7px;background:#fff5f5;color:#d64545;font-weight:700}.channel-suite--ai-search .recent-feedback{margin-bottom:14px;padding:11px 14px;border:1px solid #b7ead7;border-radius:9px;background:#ecfbf5;color:#16845b;font-size:13px}.channel-suite--ai-search .recent-empty{min-height:220px;display:grid;place-content:center;gap:8px}.channel-suite--ai-search .recent-empty b{color:#10234a;font-size:17px}.channel-suite--ai-search .recent-empty span{color:#70809b}.channel-suite--ai-search .recent-empty button{width:max-content;min-height:38px;margin:8px auto 0;padding:0 16px;border:1px solid #0f4fc9;border-radius:8px;background:#0f4fc9;color:#fff}.channel-suite--ai-search .recent-delete-modal{z-index:3100}.channel-suite--ai-search .recent-delete-dialog{width:min(480px,calc(100vw - 32px));padding:24px;border-radius:14px;background:#fff;box-shadow:0 20px 56px #0f234a38}.channel-suite--ai-search .recent-delete-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.channel-suite--ai-search .recent-delete-dialog>header span{color:#d64545;font-size:12px;font-weight:700}.channel-suite--ai-search .recent-delete-dialog h2{margin:5px 0 0;color:#10234a;font-size:22px}.channel-suite--ai-search .recent-delete-dialog>header button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;border-radius:8px;background:#f2f6fc;color:#70809b}.channel-suite--ai-search .recent-delete-dialog>p{margin:20px 0 12px;color:#52627d;line-height:1.65}.channel-suite--ai-search .recent-delete-warning{padding:12px 14px;border-radius:8px;background:#fff3d6;color:#9a5b00;font-size:12px;line-height:18px}.channel-suite--ai-search .recent-delete-dialog>footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.channel-suite--ai-search .recent-delete-dialog>footer button{min-width:96px;min-height:40px;border:1px solid #d9e2f0;border-radius:8px;background:#fff;color:#0f4fc9;font-weight:700}.channel-suite--ai-search .recent-delete-dialog>footer .danger-action{border-color:#d64545;background:#d64545;color:#fff}.channel-suite .ai-results-view{display:grid;gap:14px}.channel-suite .ai-results-view .results-hero{margin:0;padding:22px 26px;border-radius:14px;background:#1742b8}.channel-suite .ai-results-view .results-hero h1{font-size:26px}.channel-suite .ai-results-view .results-hero button{min-width:126px;justify-content:center}.channel-suite .ai-results-view .result-context{min-height:116px;margin:0;padding:12px 16px;border-radius:10px;box-shadow:none}.channel-suite .ai-results-view .result-context>div:first-child{min-height:36px}.channel-suite .ai-results-view .result-context>div:last-child{min-height:46px}.channel-suite .ai-results-view .result-context h2{font-size:17px}.channel-suite .ai-results-view .filters{margin:0;padding:14px 16px;border-radius:10px;box-shadow:none}.channel-suite .ai-results-view .filter-row{min-height:38px;margin-top:8px}.channel-suite .ai-results-view .filter-trigger-row{margin-top:8px}.channel-suite .ai-results-view .result-count{margin:-4px 2px 0}.channel-suite .ai-results-view .teacher-result{margin:0 0 10px;padding:14px 20px;border-color:#dce5f3;border-radius:12px;box-shadow:none}.channel-suite .ai-results-view .teacher-result-clickable{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.channel-suite .ai-results-view .teacher-result-clickable:hover{border-color:#9bb9f5;box-shadow:0 6px 18px #1742b814}.channel-suite .ai-results-view .teacher-result-clickable:focus-visible{outline:3px solid rgba(29,91,255,.22);outline-offset:2px}.channel-suite .ai-results-view .teacher-title h3{font-size:18px}.channel-suite .ai-results-view .teacher-intro{display:block;min-height:68px;max-height:170px;margin:9px 0;overflow-y:auto;overscroll-behavior:contain;padding:10px 28px 10px 12px;color:#334155;font-size:12px;line-height:17px;scrollbar-color:#b9c7dc transparent;scrollbar-width:thin;white-space:pre-wrap}.channel-suite .ai-results-view .teacher-intro::-webkit-scrollbar{width:6px}.channel-suite .ai-results-view .teacher-intro::-webkit-scrollbar-thumb{border-radius:999px;background:#b9c7dc}.channel-suite .ai-results-view .teacher-intro::-webkit-scrollbar-track{background:transparent}.channel-suite .ai-results-view .teacher-columns{grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr) minmax(260px,1.2fr);gap:28px;min-height:132px}.channel-suite .ai-results-view .teacher-columns label{margin-bottom:8px}.channel-suite .ai-results-view .teacher-columns p{margin:0;overflow:hidden;font-size:12px;line-height:22px;text-overflow:ellipsis;white-space:nowrap}.channel-suite .ai-results-view .teacher-reasons{min-width:0}.channel-suite .ai-results-view .teacher-reasons p{overflow:visible;color:#334155;line-height:1.7;overflow-wrap:anywhere;text-overflow:clip;white-space:pre-wrap;word-break:break-word}.channel-suite .ai-results-view .teacher-courses{max-height:156px;overflow:hidden}.channel-suite .ai-results-view .tag-wrap{gap:6px}.channel-suite .ai-results-view .tag-wrap span{min-height:24px;align-items:center;padding:0 10px;font-size:11px}.channel-suite .ai-results-view .teacher-actions{min-height:36px;margin-top:9px}.channel-suite .ai-results-view .quote{padding:8px 14px}.channel-suite .ai-results-view .teacher-actions button{min-height:36px;font-size:12px}.channel-suite .ai-results-view .teacher-actions button:first-child{justify-content:center;min-width:86px;gap:6px;line-height:1}.channel-suite .ai-results-view .teacher-actions button:first-child svg{flex:0 0 auto;display:block}.channel-suite .ai-results-view .teacher-actions button:first-child span{display:inline-flex;align-items:center;line-height:16px}.channel-suite .ai-results-view .teacher-actions button.primary{min-width:124px;background:#1a5ef5;color:#fff}.channel-suite .ai-results-view .result-pagination{justify-content:flex-end;min-height:44px;padding:0;color:#64748b}.channel-suite .ai-results-view .result-pagination>span{margin-right:auto}.channel-suite .ai-results-view .result-pagination b{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#143d78;color:#fff}.channel-suite .ai-results-view .result-pagination button{min-height:32px}.channel-suite .teacher-profile-backdrop{background:#1f2d445c}.channel-suite .teacher-profile-drawer{width:min(584px,100%);background:#fff;box-shadow:-18px 0 48px #182a4b2e}.channel-suite .teacher-profile-header{min-height:60px;padding:13px 20px;border-bottom:0}.channel-suite .teacher-profile-header h2{color:#172033;font-size:18px}.channel-suite .teacher-profile-header span{color:#70809b;font-size:10px}.channel-suite .teacher-profile-header>button{background:transparent;color:#8b9bb4}.channel-suite .teacher-profile-body{gap:12px;padding:0 20px 24px;background:#fff}.channel-suite .teacher-profile-body>section{margin:0;padding:14px 16px;border:0;border-radius:12px;background:#f7f9fc}.channel-suite .profile-identity{grid-template-columns:1fr auto;min-height:76px}.channel-suite .profile-identity h2{margin:0;color:#172033;font-size:18px}.channel-suite .profile-identity p{margin:7px 0 0;color:#63708a;font-size:11px}.channel-suite .profile-identity>button{min-height:32px;border-color:#c9d5e8;color:#0f172a}.channel-suite .profile-identity>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1;white-space:nowrap}.channel-suite .profile-identity>button svg{flex:0 0 auto;display:block}.channel-suite .profile-identity>button span{display:inline-flex;align-items:center;line-height:16px}.channel-suite .profile-identity>button.selected-action{border-color:#2161f5;background:#eef4ff;color:#2161f5}.channel-suite .profile-action-feedback{margin:-4px 0 0;padding:8px 12px;border-radius:8px;background:#eef4ff;color:#175cd3;font-size:11px;line-height:16px}.channel-suite .profile-contact{min-height:62px}.channel-suite .profile-contact b{color:#172033;font-size:14px}.channel-suite .profile-contact button{min-height:32px;background:#1d5bff;border-color:#1d5bff;color:#fff}.channel-suite .profile-ratings{gap:8px}.channel-suite .profile-ratings div{grid-template-columns:1fr auto;align-items:center;padding:9px 10px;background:#edf5ff}.channel-suite .profile-ratings b{color:#1f61ff;font-size:12px}.channel-suite .profile-ratings small{display:none}.channel-suite .profile-teaching{grid-template-columns:1fr 1fr}.channel-suite .profile-teaching div{border-top:0}.channel-suite .profile-resource-list{gap:8px;margin-top:10px}.channel-suite .profile-resource-list>button,.channel-suite .profile-resource-list>div{min-height:52px;grid-template-columns:1fr auto;gap:10px;padding:6px 10px 6px 14px;border:1px solid #d6e0f2;border-radius:7px;background:#fff;box-shadow:0 3px 10px #1a2e5714}.channel-suite .profile-resource-list>button>svg{display:none}.channel-suite .profile-resource-list span{gap:2px}.channel-suite .profile-resource-list b{color:#0e1a38;font-size:12px}.channel-suite .profile-resource-list small{color:#637594;font-size:10px}.channel-suite .profile-resource-list em{min-width:78px;min-height:32px;display:grid;place-items:center;border-radius:7px;background:#f0f6ff;color:#1f61ff;font-size:11px;font-style:normal;font-weight:700}.channel-suite .profile-section-title h3{color:#172033;font-size:15px}.channel-suite .profile-section-title button{min-height:32px;padding:0 10px;border:1px solid #c9d5e8;border-radius:8px;background:#fff;color:#0f172a;font-size:11px}.channel-suite .profile-intro{margin-bottom:0;color:#475569;font-size:12px;line-height:20px}.channel-suite .profile-readonly-note{margin:4px 16px 0;color:#64748b;font-size:12px}.channel-suite .teacher-profile-drawer{font-size:12px}.channel-suite .teacher-profile-drawer .teacher-profile-header h2{font-size:18px;line-height:25px}.channel-suite .teacher-profile-drawer .teacher-profile-header span{font-size:10px;line-height:14px}.channel-suite .teacher-profile-drawer .teacher-profile-body>section>h3,.channel-suite .teacher-profile-drawer .profile-section-title h3{margin:0 0 10px;font-size:15px;line-height:21px}.channel-suite .teacher-profile-drawer .profile-identity h2{gap:6px;font-size:18px;line-height:25px}.channel-suite .teacher-profile-drawer .profile-identity .pill{min-height:22px;padding:0 10px;font-size:10px;line-height:14px}.channel-suite .teacher-profile-drawer .profile-identity p{font-size:10px;line-height:15px}.channel-suite .teacher-profile-drawer .profile-identity>button,.channel-suite .teacher-profile-drawer .profile-contact button,.channel-suite .teacher-profile-drawer .profile-section-title button{font-size:11px;line-height:16px}.channel-suite .teacher-profile-drawer .profile-contact b{font-size:12px;line-height:18px}.channel-suite .teacher-profile-drawer .profile-contact span{font-size:10px;line-height:15px}.channel-suite .teacher-profile-drawer .profile-ratings span{font-size:10px;line-height:14px}.channel-suite .teacher-profile-drawer .profile-ratings b{font-size:11px;line-height:16px}.channel-suite .teacher-profile-drawer .tag-wrap span{min-height:22px;padding:0 9px;font-size:10px;line-height:14px}.channel-suite .teacher-profile-drawer .profile-teaching dt{font-size:10px;line-height:14px}.channel-suite .teacher-profile-drawer .profile-teaching dd,.channel-suite .teacher-profile-drawer .profile-resource-list b{font-size:11px;line-height:16px}.channel-suite .teacher-profile-drawer .profile-resource-list small{font-size:9px;line-height:13px}.channel-suite .teacher-profile-drawer .profile-resource-list em{font-size:10px;line-height:14px}.channel-suite .teacher-profile-drawer .profile-intro{font-size:11px;line-height:18px}.channel-suite .teacher-profile-drawer .profile-readonly-note{font-size:10px;line-height:16px}.channel-suite .course-attachments-body{align-content:start;gap:12px;padding:0 20px 24px}.channel-suite .course-attachment-toolbar{min-height:28px;display:flex;align-items:center;justify-content:space-between}.channel-suite .course-attachment-toolbar button,.channel-suite .course-back-link{display:inline-flex;align-items:center;gap:3px;padding:0;border:0;background:transparent;color:#1f61ff;font-size:13px}.channel-suite .course-attachment-toolbar>span{padding:5px 10px;border-radius:12px;background:#e5f5ff;color:#1f61ff;font-size:12px}.channel-suite .course-attachments-body>h2{margin:0;color:#172133;font-size:22px;line-height:1.35}.channel-suite .course-attachments-body>p{margin:-4px 0 0;color:#6b7a94;font-size:13px;line-height:18px}.channel-suite .course-attachments-body .course-list-search{height:44px;border-color:#d1dbed;background:#f7faff}.channel-suite .course-attachments-body .course-list-search input{color:#33425c;font-size:13px;background:transparent}.channel-suite .course-attachment-count{color:#475770;font-size:13px;font-weight:400}.channel-suite .course-attachments-body .course-attachment-list{gap:10px}.channel-suite .course-attachments-body .course-attachment-list article{min-height:84px;grid-template-columns:1fr 78px;gap:16px;padding:14px 16px;border-color:#d6e0f2;border-radius:10px;background:#fff}.channel-suite .course-attachments-body .course-attachment-list article:first-child{background:#f9fbff}.channel-suite .course-attachments-body .course-attachment-list h3{color:#0e1a38;font-size:13px}.channel-suite .course-attachments-body .course-attachment-list p{margin-top:9px;color:#637594;font-size:10px}.channel-suite .course-attachments-body .course-attachment-list article>button{min-width:78px;min-height:32px;justify-content:center;padding:0;border:0;border-radius:8px;background:#f0f6ff;color:#1f61ff;font-size:11px;font-weight:700}.channel-suite .course-detail-body .course-back-link{width:max-content;margin-bottom:2px}@media (max-width: 1180px){.channel-suite .channel-stats.four{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-suite .dashboard-main,.channel-suite .dashboard-lower,.channel-suite .message-layout,.channel-suite .account-grid{grid-template-columns:1fr}.channel-suite .message-list,.channel-suite .message-detail{min-height:auto}.channel-suite .message-detail{padding-bottom:88px}.channel-suite .marketing-filter,.channel-suite .access-filter{flex-wrap:wrap}.channel-suite .access-filter>button.primary{margin-left:0}.channel-suite .teacher-columns{grid-template-columns:1fr 1fr}.channel-suite .teacher-columns>div:last-child{grid-column:1 / -1}.channel-suite .resource-result-grid{grid-template-columns:1fr}.channel-suite .ai-results-view .filter-trigger-label{flex-basis:100%}.channel-suite .ai-results-view .filter-trigger-row{align-items:flex-start}.channel-suite--ai-search .recent-filter-bar{flex-wrap:wrap}.channel-suite--ai-search .recent-filter-bar .clear-history{margin-left:0}.channel-suite--ai-search .recent-records article{grid-template-columns:minmax(0,1fr) 190px 112px;gap:14px}.channel-suite--ai-search .recent-records article>button{width:112px}}@media (max-width: 760px){.channel-suite .application-detail-backdrop{left:0}.channel-suite .application-detail-drawer{width:100%}.channel-suite{min-width:0}.channel-suite .channel-heading,.channel-suite .teacher-title,.channel-suite .teacher-actions,.channel-suite .task-heading{align-items:stretch;flex-direction:column}.channel-suite .channel-stats.four,.channel-suite .task-grid,.channel-suite .teacher-columns{grid-template-columns:1fr}.channel-suite .channel-stat{min-height:96px}.channel-suite .demand-row{grid-template-columns:1fr}.channel-suite .demand-actions{flex-wrap:wrap}.channel-suite .result-context>div,.channel-suite .original-demand{align-items:flex-start!important;flex-direction:column}.channel-suite .result-context>div:last-child span{margin-left:0}.channel-suite .teacher-columns>div:last-child{grid-column:auto}.channel-suite .teacher-actions>div:last-child,.channel-suite .quote,.channel-suite .message-tabs,.channel-suite .access-tabs,.channel-suite .message-filters>div{flex-wrap:wrap}.channel-suite .filter-controls label,.channel-suite .filter-controls select{width:100%}.channel-suite .message-tabs strong,.channel-suite .access-tabs span{width:100%;margin-left:0}.channel-suite .account-info dl{grid-template-columns:1fr}.channel-suite .account-info dl div:nth-child(odd){padding-right:0}.channel-suite .hot-list>div{grid-template-columns:72px 1fr 60px}.channel-suite .hot-list small{grid-column:2 / -1;text-align:left}.channel-suite .task-switcher{grid-template-columns:1fr}.channel-suite .task-switcher>div:last-child{grid-template-columns:1fr}.channel-suite .related-resource-result footer{align-items:flex-start;flex-direction:column}.channel-suite-badge{margin-bottom:9px}.channel-suite .filter-controls input{width:100%;min-height:44px}.channel-suite .related-resource-result footer>div{flex-wrap:wrap}.channel-suite .marketing-filter label,.channel-suite .marketing-filter label div,.channel-suite .marketing-filter select,.channel-suite .marketing-filter label>input,.channel-suite .access-filter label,.channel-suite .access-filter label input{width:100%;min-width:0}.channel-suite .channel-drawer{width:100%}.channel-suite .message-card-dialog dl{grid-template-columns:1fr}.channel-suite .detail-actions{position:static;margin-top:24px;flex-direction:column}.channel-suite .detail-actions button{width:100%}.channel-suite .notification-filters{flex-wrap:wrap}.channel-suite .notification-filters button{flex:1 1 110px}.channel-suite .notification-point-summary,.channel-suite .marketing-direction-layout{grid-template-columns:1fr}.channel-suite .marketing-direction-layout aside{display:none}.channel-suite .period-presets{grid-template-columns:repeat(2,1fr)}.channel-suite .custom-dates{grid-template-columns:1fr}.channel-suite .ai-results-view .filter-control-group{width:100%;justify-content:space-between}.channel-suite .ai-results-view .filter-control-group>span{width:64px}.channel-suite .ai-results-view .filter-control-group>button.filter-picker{width:auto;min-width:0;flex:1;min-height:44px}.channel-suite .ai-results-view .channel-control-group{align-items:flex-start}.channel-suite .ai-results-view .channel-filter-pills{flex:1;flex-wrap:wrap}.channel-suite .ai-results-view .channel-filter-pills button{min-height:44px}.channel-suite .teacher-contact-modal{align-items:start;padding:12px}.channel-suite .teacher-contact-modal>.teacher-contact-dialog{height:auto;min-height:calc(100vh - 24px);padding:20px;overflow:visible}.channel-suite .teacher-contact-dialog>header h2{font-size:20px}.channel-suite .contact-point-alert{align-items:flex-start;flex-direction:column;gap:4px;padding:12px 14px}.channel-suite .contact-paths{grid-template-columns:1fr}.channel-suite .contact-paths>section{min-height:590px}.channel-suite--ai-search .upload-file{max-width:none;flex-wrap:wrap}.channel-suite--ai-search .upload-file-copy{flex:1 1 calc(100% - 54px)}.channel-suite--ai-search .upload-file>span{margin-left:50px}.channel-suite--ai-search .task-top{grid-template-columns:auto auto minmax(0,1fr)}.channel-suite--ai-search .task-top h3{min-width:0}.channel-suite--ai-search .task-top .task-view,.channel-suite--ai-search .task-top em{grid-column:2 / -1;justify-self:start;margin-left:0}.channel-suite--ai-search .task-counts{flex-wrap:wrap}.channel-suite--ai-search .recent-filter-bar{align-items:stretch}.channel-suite--ai-search .recent-filter-bar h2{width:100%}.channel-suite--ai-search .recent-filter-bar>div{width:100%;overflow-x:auto;padding-bottom:2px}.channel-suite--ai-search .recent-filter-bar>div button{flex:0 0 auto;min-height:44px}.channel-suite--ai-search .recent-filter-bar .clear-history{min-height:44px}.channel-suite--ai-search .recent-page-card>header{align-items:flex-start;flex-wrap:wrap;padding:14px}.channel-suite--ai-search .recent-page-card>header h2{width:100%}.channel-suite--ai-search .recent-page-card>header span{flex:1}.channel-suite--ai-search .recent-page-card>header button{min-height:44px}.channel-suite--ai-search .recent-records article{grid-template-columns:1fr;gap:10px;min-height:0;padding:16px}.channel-suite--ai-search .recent-record-copy p{white-space:normal;line-height:20px}.channel-suite--ai-search .recent-record-meta{grid-template-columns:max-content max-content}.channel-suite--ai-search .recent-records article>button{width:100%;min-height:44px}.channel-suite--ai-search .recent-check{top:16px;right:16px;left:auto}.channel-suite--ai-search .recent-batch-bar{flex-wrap:wrap;padding:10px 14px}.channel-suite--ai-search .recent-batch-bar button.danger{min-height:44px}.channel-suite--ai-search .recent-pagination{align-items:flex-start;flex-direction:column;padding:12px 14px}.channel-suite--ai-search .recent-pagination>div{width:100%;flex-wrap:wrap}.channel-suite--ai-search .recent-pagination button{min-height:44px}}@media (max-height: 760px){.channel-suite .marketing-direction-modal,.channel-suite .marketing-period-modal{align-items:start;overflow-y:auto;padding-block:16px}.channel-suite .marketing-direction-modal>div,.channel-suite .marketing-period-modal>div{margin:auto}}@media (prefers-reduced-motion: reduce){.channel-suite *,.channel-suite *:before,.channel-suite *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.layout-main.channel-mode .layout-content{font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:#172033;background:#f5f7fb}.layout-main.channel-mode .channel-suite{max-width:none;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.layout-main.channel-mode .channel-suite--access .channel-suite-badge,.layout-main.channel-mode .channel-suite--account .channel-suite-badge{display:none}.layout-main.channel-mode .channel-suite--access .channel-heading,.layout-main.channel-mode .channel-suite--account .channel-heading{margin:0 8px 12px}.layout-main.channel-mode .channel-suite--access .channel-heading{min-height:70px}.layout-main.channel-mode .channel-suite--access .access-add-button{margin-top:8px}.layout-main.channel-mode .channel-suite--access .channel-heading h1{font-size:28px;line-height:40px}.layout-main.channel-mode .channel-suite--account .channel-heading h1{font-size:30px;line-height:42px}.layout-main.channel-mode .channel-suite--access .channel-heading p,.layout-main.channel-mode .channel-suite--account .channel-heading p{margin-top:0;font-size:14px;line-height:22px;color:#697386}.layout-main.channel-mode .channel-suite--access .channel-primary,.layout-main.channel-mode .channel-suite--account .channel-primary{min-height:40px;border-color:#123a6d;background:#123a6d;font-size:14px}.layout-main.channel-mode .channel-suite--access .access-tabs{min-height:58px;margin:0 0 14px;padding:11px 18px 11px 0;border-color:#e5eaf2;box-shadow:none}.layout-main.channel-mode .channel-suite--access .access-tabs button{min-width:132px;min-height:34px;border-radius:7px;font-size:12px}.layout-main.channel-mode .channel-suite--access .access-tabs button:nth-child(2){min-width:144px}.layout-main.channel-mode .channel-suite--access .access-tabs span{font-size:13px}.layout-main.channel-mode .channel-suite--access .access-filter{min-height:80px;align-items:flex-end;margin-bottom:16px;padding:10px 18px;border-color:#e5eaf2;border-radius:12px;box-shadow:none}.layout-main.channel-mode .channel-suite--access .access-filter label{gap:5px;font-size:12px;line-height:17px}.layout-main.channel-mode .channel-suite--access .access-filter label>input{width:200px;height:40px;padding:0 12px;font-size:13px}.layout-main.channel-mode .channel-suite--access .access-role-types{align-items:center;gap:12px;margin-left:12px}.layout-main.channel-mode .channel-suite--access .access-role-types button{min-width:96px;height:40px;font-size:12px}.layout-main.channel-mode .channel-suite--access .access-role-types button:first-child{min-width:72px}.layout-main.channel-mode .channel-suite--access .admin-role-filter{margin-left:12px}.layout-main.channel-mode .channel-suite--access .admin-role-filter select{width:150px;height:40px;padding:0 36px 0 12px;border:1px solid #123a6d;border-radius:7px;background:#123a6d;color:#fff;font-size:12px}.layout-main.channel-mode .channel-suite--access .access-filter-actions{display:flex;gap:26px;margin-right:44px;margin-left:auto}.layout-main.channel-mode .channel-suite--access .access-filter-actions button{min-width:76px;min-height:40px;padding:0 12px;border:1px solid #c9d3e0;border-radius:8px;background:#fff;color:#123a6d;font-size:14px;font-weight:700}.layout-main.channel-mode .channel-suite--access .access-filter-actions button.primary{border-color:#123a6d;background:#123a6d;color:#fff}.layout-main.channel-mode .channel-suite--access .access-table-card{height:694px;min-height:694px;display:flex;flex-direction:column;border-color:#e5eaf2;border-radius:12px;box-shadow:none}.layout-main.channel-mode .channel-suite--access .channel-table{min-width:980px;font-size:13px}.layout-main.channel-mode .channel-suite--access .channel-table th{height:58px;padding:0 18px;background:#fff;font-size:13px;font-weight:700}.layout-main.channel-mode .channel-suite--access .channel-table td{height:92px;padding:16px 18px;border-color:#e5eaf2;font-size:13px}.layout-main.channel-mode .channel-suite--access .roles-table td{height:142px}.layout-main.channel-mode .channel-suite--access .roles-table th:nth-child(1){width:64px}.layout-main.channel-mode .channel-suite--access .roles-table th:nth-child(2){width:140px}.layout-main.channel-mode .channel-suite--access .roles-table th:nth-child(3){width:150px}.layout-main.channel-mode .channel-suite--access .roles-table th:nth-child(4){width:auto}.layout-main.channel-mode .channel-suite--access .roles-table th:nth-child(5){width:160px}.layout-main.channel-mode .channel-suite--access .roles-table th:nth-child(6){width:110px}.layout-main.channel-mode .channel-suite--access .channel-table .code{color:#123a6d;font-size:12px}.layout-main.channel-mode .channel-suite--access .channel-table strong{font-size:14px}.layout-main.channel-mode .channel-suite--access .role-permission-tags{align-content:center;gap:6px 10px}.layout-main.channel-mode .channel-suite--access .role-permission-tags span{min-height:26px;align-items:center;padding:0 12px;background:#eaf2ff;color:#165dff;font-size:11px}.layout-main.channel-mode .channel-suite--access .row-actions{gap:20px}.layout-main.channel-mode .channel-suite--access .row-actions button{min-height:32px;font-size:13px}.layout-main.channel-mode .channel-suite--access .admin-role-badge{display:inline-flex;min-height:32px;align-items:center;padding:0 14px;border-radius:7px;background:#123a6d;color:#fff;font-size:12px;font-weight:700}.layout-main.channel-mode .channel-suite--access .admin-role-badge.super{background:#fff4d8;color:#d97706}.layout-main.channel-mode .channel-suite--access .access-pagination{min-height:68px;margin-top:auto;padding:0 18px;border-top:1px solid #e5eaf2}.layout-main.channel-mode .channel-suite--access .access-pagination>div{align-items:center}.layout-main.channel-mode .channel-suite--access .access-pagination>div>button:first-child,.layout-main.channel-mode .channel-suite--access .access-pagination>div>button:nth-child(3){width:72px;height:36px}.layout-main.channel-mode .channel-suite--access .access-pagination>div>button.active{width:36px;min-width:36px;height:36px;padding:0}.layout-main.channel-mode .channel-suite--access .access-pagination label{display:flex;align-items:center;gap:6px}.layout-main.channel-mode .channel-suite--access .access-pagination input{width:42px;height:36px;border:1px solid #bac7de;border-radius:6px;text-align:center}.layout-main.channel-mode .channel-suite--access .access-pagination .confirm{width:48px;min-width:48px;height:36px;padding:0;border-color:#0d3b75;background:#0d3b75;color:#fff}.layout-main.channel-mode .channel-suite--access .access-modal{background:#0d172975}.layout-main.channel-mode .channel-suite--access .access-modal>div{padding:0;overflow:hidden;border-radius:12px}.layout-main.channel-mode .channel-suite--access .access-modal .role-form-dialog{width:min(720px,calc(100vw - 32px));height:min(880px,calc(100vh - 40px));max-height:min(880px,calc(100vh - 40px));display:grid;grid-template-rows:64px minmax(0,1fr) 88px}.layout-main.channel-mode .channel-suite--access .access-modal .admin-form-dialog{width:min(680px,calc(100vw - 32px));max-height:min(764px,calc(100vh - 40px))}.layout-main.channel-mode .channel-suite--access .access-modal header{min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid #e5eaf2}.layout-main.channel-mode .channel-suite--access .access-modal header h2{margin:0;font-size:20px}.layout-main.channel-mode .channel-suite--access .access-modal header button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:0;background:transparent;color:#94a0b2}.layout-main.channel-mode .channel-suite--access .access-form-body{max-height:calc(100vh - 168px);overflow-y:auto;padding:18px 28px 20px}.layout-main.channel-mode .channel-suite--access .access-form-body>label{display:grid;gap:7px;margin:0 0 12px;color:#172033;font-size:13px;font-weight:700}.layout-main.channel-mode .channel-suite--access .access-form-body>label input,.layout-main.channel-mode .channel-suite--access .access-form-body>label select{width:100%;height:42px;margin:0;padding:0 12px;border:1px solid #e5eaf2;border-radius:7px;background:#fafbfd;color:#172033;font-size:13px;font-weight:400}.layout-main.channel-mode .channel-suite--access .access-form-body>label input:disabled{color:#697386;background:#f1f4f8}.layout-main.channel-mode .channel-suite--access .access-form-body>label small{color:#697386;font-size:11px;font-weight:400}.layout-main.channel-mode .channel-suite--access .permission-heading{display:flex;align-items:center;gap:16px;margin:12px 0}.layout-main.channel-mode .channel-suite--access .permission-heading b{font-size:13px}.layout-main.channel-mode .channel-suite--access .permission-heading span{color:#697386;font-size:12px}.layout-main.channel-mode .channel-suite--access .role-form-dialog .access-form-body{max-height:none;min-height:0;box-sizing:border-box}.layout-main.channel-mode .channel-suite--access .role-form-dialog .access-form-body>label{width:max-content}.layout-main.channel-mode .channel-suite--access .role-form-dialog .access-form-body>label:first-child input{width:253px;padding:0 20px}.layout-main.channel-mode .channel-suite--access .role-form-dialog .access-form-body>label:nth-child(2) input{width:212px;padding:0 20px}.layout-main.channel-mode .channel-suite--access .permission-groups{display:grid;gap:10px;margin:0;padding:0;border:0}.layout-main.channel-mode .channel-suite--access .permission-group{height:70px;display:grid;grid-template-columns:repeat(4,150px);align-content:start;align-items:center;column-gap:8px;row-gap:8px;padding:13px;border:1px solid #e5eaf2;border-radius:8px;background:#f8fafd;box-sizing:border-box}.layout-main.channel-mode .channel-suite--access .permission-group:nth-child(2){height:92px}.layout-main.channel-mode .channel-suite--access .permission-group label{display:flex;align-items:center;gap:10px;margin:0;font-size:13px;line-height:18px;font-weight:400;cursor:pointer}.layout-main.channel-mode .channel-suite--access .permission-group input{width:18px;height:18px;margin:0;padding:0;accent-color:#165dff}.layout-main.channel-mode .channel-suite--access .permission-module b{font-weight:500}.layout-main.channel-mode .channel-suite--access .admin-role-note{display:grid;gap:8px;margin-top:18px;padding:15px;border:1px solid #d8e5ff;border-radius:9px;background:#f7faff}.layout-main.channel-mode .channel-suite--access .admin-role-note b{font-size:13px}.layout-main.channel-mode .channel-suite--access .admin-role-note span{color:#697386;font-size:12px}.layout-main.channel-mode .channel-suite--access .access-form-error{margin-top:12px;padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fff1f2;color:#b42318;font-size:12px}.layout-main.channel-mode .channel-suite--access .access-modal footer{min-height:72px;display:flex;align-items:center;justify-content:flex-end;gap:30px;padding:0 44px;border-top:1px solid #e2e8f0}.layout-main.channel-mode .channel-suite--access .role-form-dialog footer{min-height:88px;padding:0 64px}.layout-main.channel-mode .channel-suite--access .role-form-dialog footer button:first-child{width:76px}.layout-main.channel-mode .channel-suite--access .role-form-dialog footer button.primary{width:96px}.layout-main.channel-mode .channel-suite--access .access-modal footer button{min-width:76px;min-height:40px;border:1px solid #c9d3e0;border-radius:8px;background:#fff;color:#123a6d;font-size:14px;font-weight:700}.layout-main.channel-mode .channel-suite--access .access-modal footer button.primary{border-color:#123a6d;background:#123a6d;color:#fff}.layout-main.channel-mode .channel-suite--account .account-overview{min-height:142px;margin-bottom:16px;padding:24px;border-color:#dde5f0;border-radius:10px;box-shadow:none}.layout-main.channel-mode .channel-suite--account .account-overview h2{font-size:22px;line-height:32px}.layout-main.channel-mode .channel-suite--account .account-overview p span,.layout-main.channel-mode .channel-suite--account .account-overview p em{font-size:12px}.layout-main.channel-mode .channel-suite--account .account-overview small{font-size:13px}.layout-main.channel-mode .channel-suite--account .account-grid{grid-template-columns:minmax(0,1.9fr) minmax(330px,1fr);gap:24px}.layout-main.channel-mode .channel-suite--account .account-info,.layout-main.channel-mode .channel-suite--account .mini-program{min-height:706px;padding:22px 24px;border-color:#dde5f0;border-radius:10px;box-shadow:none}.layout-main.channel-mode .channel-suite--account .account-info h2,.layout-main.channel-mode .channel-suite--account .mini-program h2{font-size:20px;line-height:30px}.layout-main.channel-mode .channel-suite--account .account-info>p,.layout-main.channel-mode .channel-suite--account .mini-program>p{margin:8px 0 0;font-size:13px;line-height:22px}.layout-main.channel-mode .channel-suite--account .account-readonly-list{margin-top:12px;border-top:1px solid #e6ebf2}.layout-main.channel-mode .channel-suite--account .account-readonly-row{min-height:104px;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:16px 0;border-bottom:1px solid #eef2f7}.layout-main.channel-mode .channel-suite--account .account-readonly-row>div{display:grid;align-content:start;gap:7px;min-width:0}.layout-main.channel-mode .channel-suite--account .account-readonly-row span{color:#64748b;font-size:13px}.layout-main.channel-mode .channel-suite--account .account-readonly-row strong{overflow-wrap:anywhere;font-size:15px;line-height:22px;font-weight:500}.layout-main.channel-mode .channel-suite--account .mini-program h3{margin:2px 0 0;font-size:14px;font-weight:500}.layout-main.channel-mode .channel-suite--account .mini-feature{min-height:72px;padding:12px}.layout-main.channel-mode .channel-suite--account .mini-feature-icon{width:24px;height:24px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#e8f0ff;color:#175cd3}.layout-main.channel-mode .channel-suite--account .mini-feature b{font-size:14px;font-weight:500}.layout-main.channel-mode .channel-suite--account .mini-feature span{font-size:12px}.layout-main.channel-mode .channel-suite--account .account-note{min-height:76px}.layout-main.channel-mode .channel-suite--account .account-logout{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:transparent;color:#697386;font-size:12px}.layout-main.channel-mode .channel-suite--account .mini-program-hint{color:#64748b;text-align:center;font-size:12px}.layout-main.channel-mode .channel-suite--account .mini-program-qr-modal .qr-modal{width:min(420px,calc(100vw - 32px))}.layout-main.channel-mode .channel-suite--account .qr-code-box{width:240px;height:240px;display:grid;place-items:center;margin:18px auto;border:1px solid #dde5f0;border-radius:12px;background:#f7f9fc;color:#64748b;font-size:13px}.layout-main.channel-mode .channel-suite--account .qr-code-box img{width:220px;height:220px;object-fit:contain}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page){--primary-color: #123a6d;--primary-light: #175cd3;--surface: #fff;--background: #f5f7fb;--border-color: #e5eaf2;--text-primary: #172033;--text-secondary: #697386;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page){width:100%;max-width:100%;min-width:0}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .page-header{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,auto);align-items:start;gap:16px;margin-bottom:18px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .page-header>:first-child{min-width:190px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .resource-header-actions,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-header-left{min-width:190px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .page-title{margin:0 0 2px;color:#172033;font-size:28px;line-height:40px;font-weight:700}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .page-title,.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .page-description{white-space:nowrap}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .page-description{margin:0;color:#697386;font-size:14px;line-height:20px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) :is(.btn-primary,.btn-secondary){min-height:40px;padding:0 14px;border-radius:8px;font-size:13px;line-height:18px;box-shadow:none;transform:none}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .btn-primary{background:#123a6d}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) .btn-secondary{border-color:#c9d3e0;color:#123a6d}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-bar,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-adv-search-bar{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:12px;margin-bottom:12px;padding:14px 18px;border:1px solid #e5eaf2;border-radius:12px;background:#fff;box-shadow:none}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-row,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:12px;width:100%;min-width:0}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-field,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-field{min-width:0;width:auto}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-field{grid-column:span 2}.layout-main:is(.channel-mode,.resource-v1-mode) .courses-page .adv-search-field:nth-child(5),.layout-main:is(.channel-mode,.resource-v1-mode) .qual-page .adv-search-field:nth-child(4){grid-column:span 4}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-actions{grid-column:span 2;align-self:end;min-width:0;padding-bottom:0}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-field{grid-column:span 1}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page :is(.tch-region-field,.tch-search-field:nth-child(8),.tch-search-range){grid-column:span 2}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-actions{grid-column:span 2;align-self:end;min-width:0;padding-bottom:0}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-field label,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-field label{color:#697386;font-size:12px;line-height:17px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-field :is(input,select),.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-field :is(input,select),.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-region-selector{width:100%;min-width:0;min-height:40px;border-color:#e5eaf2;border-radius:7px;background-color:#f8fafd;color:#172033;font-size:13px;box-sizing:border-box}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-datetime-range,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-range-inputs{width:100%;min-width:0}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-datetime-range input,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-range-inputs input{width:0;min-width:0;flex:1 1 0}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-field select,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-field select{padding-right:34px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-table-container,.qual-table-container,.tch-table-container){max-width:100%;min-width:0;border-color:#e5eaf2;border-radius:12px;box-shadow:none}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-table-container,.qual-table-container){overflow-x:auto}.layout-main:is(.channel-mode,.resource-v1-mode) .courses-table,.layout-main:is(.channel-mode,.resource-v1-mode) .qual-table{min-width:1380px;table-layout:auto}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-table,.qual-table,.hl-table) thead{background:#fff}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-table,.qual-table,.hl-table) th{height:58px;padding:0 12px;border-bottom:1px solid #e5eaf2;background:#fff;color:#172033;font-size:13px;font-weight:700}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-table,.qual-table,.hl-table) td{padding:14px 12px;border-bottom-color:#e5eaf2;color:#172033;font-size:13px;line-height:20px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) :is(.action-btn,.tch-action-btn){border-radius:6px;font-size:12px}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) :is(input,select,button):focus-visible{outline:3px solid rgba(22,93,255,.2);outline-offset:2px}@media (max-width: 1800px){.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page>.page-header{grid-template-columns:1fr}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-header-actions{justify-content:flex-start}}@media (max-width: 1180px){.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page)>.page-header{grid-template-columns:1fr}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .resource-header-actions{justify-content:flex-start}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-field,.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-field{grid-column:span 3}.layout-main:is(.channel-mode,.resource-v1-mode) .courses-page .adv-search-field:nth-child(5),.layout-main:is(.channel-mode,.resource-v1-mode) .qual-page .adv-search-field:nth-child(4),.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page :is(.tch-region-field,.tch-search-field:nth-child(8),.tch-search-range){grid-column:span 6}}.layout-main:is(.channel-mode,.resource-v1-mode) .layout-content{background:#eef3fb}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page){color:#172033}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) :is(.page-description,label,.adv-search-helper,.tch-search-helper,.pagination-info,.tch-page-info,.datetime-cell){color:#667085}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page,.tch-page) :is(input,select)::placeholder{color:#98a2b3}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .resource-header-actions>button:nth-child(4),.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .adv-search-actions .btn-primary,.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .channel-pagination .page-btn.active,.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .page-jump-confirm{border-color:#1d5bff;background:#1d5bff}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .teacher-name-link,.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .teachers-cell .status-tag,.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .toggle-switch.on .toggle-label{color:#059461}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .toggle-switch.on .toggle-knob{background:#059461}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .teacher-actions .user-btn{background:#e8fbf5;color:#059461}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .action-buttons .edit-btn{background:#eef4ff}.layout-main:is(.channel-mode,.resource-v1-mode) :is(.courses-page,.qual-page) .action-buttons .delete-btn{background:#fff1f0}.layout-main.resource-v1-mode .tch-page .tch-channel-batch-tools{display:flex;flex-wrap:wrap;align-items:center;gap:9px;width:100%;margin:0 0 14px;padding:0}.layout-main.resource-v1-mode .tch-page .tch-channel-batch-tools>button{min-height:40px;justify-content:center;border-color:#d8e0ef;color:#172033}.layout-main.channel-mode .tch-page{min-width:0;min-height:0;height:auto;overflow:visible;gap:0}.layout-main.channel-mode .tch-page>.page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;height:52px;min-height:52px;margin:0;padding:0;background:#fff}.layout-main.channel-mode .tch-page .page-title{margin:0;color:#172033;font-size:28px;line-height:34px;font-weight:700}.layout-main.channel-mode .tch-page .page-description{margin:0;font-size:13px;line-height:18px}.layout-main.channel-mode .tch-page .tch-header-actions{display:flex;gap:10px}.layout-main.channel-mode .tch-page .tch-header-actions>button{width:158px;height:38px;min-height:38px;justify-content:center;padding:0 12px;border-radius:7px;font-size:13px}.layout-main.channel-mode .tch-page .tch-header-actions .btn-primary,.layout-main.channel-mode .tch-page .tch-search-actions .btn-primary,.layout-main.channel-mode .tch-page .tch-page-current,.layout-main.channel-mode .tch-page .tch-page-jump-confirm{border-color:#1d5bff;background:#1d5bff;color:#fff}.layout-main.channel-mode .tch-page .tch-channel-batch-tools{display:flex;height:38px;gap:9px;margin:0 0 14px;padding:10px 0 4px;background:#fff;box-sizing:content-box}.layout-main.channel-mode .tch-page .tch-channel-batch-tools>button{height:38px;min-height:38px;justify-content:center;padding:0 10px;border-color:#d8e0ef;border-radius:7px;color:#172033;font-size:12px;white-space:nowrap}.layout-main.channel-mode .tch-page .tch-channel-batch-tools>button:nth-child(1){width:104px}.layout-main.channel-mode .tch-page .tch-channel-batch-tools>button:nth-child(2){width:224px}.layout-main.channel-mode .tch-page .tch-channel-batch-tools>button:nth-child(3){width:154px}.layout-main.channel-mode .tch-page .tch-channel-batch-tools>button:nth-child(4){width:188px}.layout-main.channel-mode .tch-page .tch-channel-batch-tools>button:nth-child(5){width:142px}.layout-main.channel-mode .tch-page .tch-adv-search-bar{display:flex;flex-direction:column;width:100%;height:206px;min-height:206px;align-items:stretch;gap:14px;margin:0 0 14px;padding:18px 20px;border:1px solid #d8e0ef;border-radius:12px;background:#fff;box-sizing:border-box}.layout-main.channel-mode .tch-page .tch-search-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));width:100%;min-width:0;align-items:flex-end;gap:10px}.layout-main.channel-mode .tch-page .tch-search-field{display:flex;grid-column:span 1;width:auto;height:62px;min-width:0;flex-direction:column;gap:5px}.layout-main.channel-mode .tch-page .tch-search-row-primary :is(.tch-search-field:nth-child(4),.tch-search-field:nth-child(8),.tch-search-field:nth-child(9)){grid-column:span 2}.layout-main.channel-mode .tch-page .tch-search-row-secondary .tch-search-field{grid-column:span 2;width:auto}.layout-main.channel-mode .tch-page .tch-search-field label{color:#667085;font-size:11px;line-height:19px}.layout-main.channel-mode .tch-page .tch-search-field :is(input,select),.layout-main.channel-mode .tch-page .tch-region-selector{width:100%;height:38px;min-height:38px;padding:0 10px;border:1px solid #d8e0ef;border-radius:7px;background:#f8fafd;color:#172033;font-size:12px;box-sizing:border-box}.layout-main.channel-mode .tch-page .tch-range-inputs{height:38px;gap:4px}.layout-main.channel-mode .tch-page .tch-range-inputs input{min-width:0}.layout-main.channel-mode .tch-page .tch-search-actions{display:flex;grid-column:span 2;align-items:flex-end;gap:8px;padding:0}.layout-main.channel-mode .tch-page .tch-search-actions>button{height:38px;min-height:38px;justify-content:center;padding:0;border-radius:7px;font-size:13px}.layout-main.channel-mode .tch-page .tch-search-actions .btn-primary{width:88px}.layout-main.channel-mode .tch-page .tch-search-actions .btn-secondary{width:72px}.layout-main.channel-mode .tch-page .tch-search-helper{grid-column:span 5;align-self:center;margin:0;font-size:12px;line-height:19px;white-space:nowrap}.layout-main.channel-mode .tch-page .tch-ledger{display:flex;width:100%;min-width:0;height:638px;flex-direction:column;overflow:hidden;border:1px solid #d8e0ef;border-radius:12px;background:#fff;box-sizing:border-box}.layout-main.channel-mode .tch-page .tch-table-container{width:100%;height:584px;min-height:0;flex:1 1 auto;overflow:auto;border:0;border-radius:0}.layout-main.channel-mode .tch-page .hl-table{min-width:2656px!important;border-collapse:collapse;table-layout:fixed;font-size:12px}.layout-main.channel-mode .tch-page .hl-table th{height:52px;padding:0 6px;border-bottom:1px solid #d8e0ef;background:#fff;color:#172033;font-size:12px;font-weight:600;box-sizing:border-box}.layout-main.channel-mode .tch-page .hl-table td{height:102px;padding:10px 6px;vertical-align:middle;color:#172033;font-size:12px;line-height:18px;box-sizing:border-box}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(1){width:36px;min-width:36px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(2){width:90px;min-width:90px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(3){width:140px;min-width:140px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(4){width:100px;min-width:100px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(5){width:70px;min-width:70px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(6),.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(7){width:90px;min-width:90px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(8){width:120px;min-width:120px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(9){width:110px;min-width:110px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(10){width:140px;min-width:140px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(11){width:180px;min-width:180px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(12){width:150px;min-width:150px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(13){width:160px;min-width:160px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(14){width:180px;min-width:180px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(15){width:100px;min-width:100px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(16){width:90px;min-width:90px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(17),.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(18),.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(19),.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(21){width:100px;min-width:100px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(20){width:90px;min-width:90px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(22){width:220px;min-width:220px!important}.layout-main.channel-mode .tch-page .hl-table :is(th,td):nth-child(23){width:100px;min-width:100px!important}.layout-main.channel-mode .tch-page .tch-dir-tag{border:0;background:#eef4ff;color:#1d5bff;font-size:11px}.layout-main.channel-mode .tch-page .tch-public-status{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:#667085;font-size:12px;cursor:pointer}.layout-main.channel-mode .tch-page .tch-public-status:disabled{cursor:default}.layout-main.channel-mode .tch-page .tch-public-status-dot{width:8px;height:8px;border-radius:50%;background:#98a2b3}.layout-main.channel-mode .tch-page .tch-public-status--public{color:#059461}.layout-main.channel-mode .tch-page .tch-public-status--public .tch-public-status-dot{background:#059461}.layout-main.channel-mode .tch-page .tch-public-status--pending{color:#d97706}.layout-main.channel-mode .tch-page .tch-public-status--pending .tch-public-status-dot{background:#f59e0b}.layout-main.channel-mode .tch-page .tch-embed-tag{border-radius:6px;padding:3px 9px;font-size:11px}.layout-main.channel-mode .tch-page .tch-embed-yes{background:#e8fbf5;color:#059461}.layout-main.channel-mode .tch-page .tch-embed-no{background:#fff7e6;color:#d97706}.layout-main.channel-mode .tch-page .tch-created-by-cell{overflow:hidden;padding-right:14px;padding-left:14px}.layout-main.channel-mode .tch-page .tch-created-by-stack{width:100%;min-width:0;align-items:flex-start}.layout-main.channel-mode .tch-page :is(.tch-created-by-text,.tch-created-by-name){width:100%;overflow:hidden;text-overflow:ellipsis}.layout-main.channel-mode .tch-page .hl-action-icons{flex-direction:row;gap:8px}.layout-main.channel-mode .tch-page .hl-icon-btn{width:38px;height:30px;border-radius:6px}.layout-main.channel-mode .tch-page .hl-icon-edit{background:#eef4ff;color:#1d5bff}.layout-main.channel-mode .tch-page .hl-icon-delete{background:#fff1f0;color:#e5484d}.layout-main.channel-mode .tch-page .tch-table-container::-webkit-scrollbar{width:8px;height:8px}.layout-main.channel-mode .tch-page .tch-table-container::-webkit-scrollbar-track{background:#eef1f6}.layout-main.channel-mode .tch-page .tch-table-container::-webkit-scrollbar-thumb{border-radius:8px;background:#aeb8c8}.layout-main.channel-mode .tch-page .tch-pagination{height:54px;min-height:54px;margin:0;padding:9px 16px;border-top:1px solid #d8e0ef;background:#fff;box-sizing:border-box}.layout-main.channel-mode .tch-page .tch-page-btns{gap:8px}.layout-main.channel-mode .tch-page :is(.tch-page-btn,.tch-page-current,.tch-page-jump-confirm){height:36px;min-height:36px;border-radius:7px;font-size:12px}.layout-main.channel-mode .tch-page .tch-page-btn{width:66px}.layout-main.channel-mode .tch-page .tch-page-current{width:42px;border:0}.layout-main.channel-mode .tch-page .tch-page-jump-input{width:46px;height:36px;border-color:#d8e0ef;border-radius:7px}.layout-main.channel-mode .tch-page .tch-page-jump-confirm{width:52px;border:0}.layout-main.channel-mode .tch-page .tch-page-jump-label{color:#667085;font-size:12px}@media (max-width: 1180px){.layout-main.channel-mode .tch-page>.page-header{height:auto;grid-template-columns:1fr;gap:8px}.layout-main.channel-mode .tch-page .tch-channel-batch-tools,.layout-main.channel-mode .tch-page .tch-search-row{height:auto;flex-wrap:wrap}.layout-main.channel-mode .tch-page .tch-adv-search-bar{height:auto}}.layout-main.channel-mode .qual-page{color:#0e1a33;font-synthesis:none}.layout-main.channel-mode .qual-page>.page-header{min-height:64px;display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:18px;margin:0 0 14px;padding:0;border:0;background:#fff}.layout-main.channel-mode .qual-page .page-title{margin:0;color:#0e1a33;font-size:28px;line-height:39px}.layout-main.channel-mode .qual-page .page-description{color:#6b7a96;line-height:20px}.layout-main.channel-mode .qual-page .resource-header-actions{flex-wrap:nowrap;gap:10px}.layout-main.channel-mode .qual-page .resource-header-actions>button{min-height:42px;justify-content:center;padding:0 14px;border-color:#d8e0ef;color:#0a275d;font-size:14px}.layout-main.channel-mode .qual-page .resource-header-actions>button:nth-child(1){width:120px}.layout-main.channel-mode .qual-page .resource-header-actions>button:nth-child(2){width:148px}.layout-main.channel-mode .qual-page .resource-header-actions>button:nth-child(3){width:140px}.layout-main.channel-mode .qual-page .resource-header-actions>button:nth-child(4){width:136px;background:#0a275d;color:#fff}.layout-main.channel-mode .qual-page .adv-search-bar{min-height:188px;display:flex;flex-direction:column;align-items:stretch;gap:14px;margin:0 0 14px;padding:18px 20px;border-color:#d8e0ef;border-radius:12px;box-sizing:border-box}.layout-main.channel-mode .qual-page .adv-search-row{min-width:0;display:flex;align-items:flex-end;gap:12px}.layout-main.channel-mode .qual-page .adv-search-field{flex:0 0 auto;min-width:0;height:66px;gap:6px}.layout-main.channel-mode .qual-page .adv-search-row-primary .adv-search-field:nth-child(1){width:150px}.layout-main.channel-mode .qual-page .adv-search-row-primary .adv-search-field:nth-child(2),.layout-main.channel-mode .qual-page .adv-search-row-primary .adv-search-field:nth-child(3){width:190px}.layout-main.channel-mode .qual-page .adv-search-row-primary .adv-search-field:nth-child(4){width:min(354px,calc(100% - 756px))}.layout-main.channel-mode .qual-page .adv-search-row-primary .adv-search-field:nth-child(5){width:140px}.layout-main.channel-mode .qual-page .adv-search-row-secondary .adv-search-field:nth-child(1){width:190px}.layout-main.channel-mode .qual-page .adv-search-field label{color:#6b7a96;font-size:12px;line-height:19px}.layout-main.channel-mode .qual-page .adv-search-field :is(input,select){width:100%;height:40px;min-height:40px;padding:0 12px;border-color:#d8e0ef;border-radius:7px;background:#f8fafd;color:#0e1a33;box-sizing:border-box}.layout-main.channel-mode .qual-page .adv-search-datetime-range{gap:4px}.layout-main.channel-mode .qual-page .adv-search-datetime-range span{color:#6b7a96}.layout-main.channel-mode .qual-page .adv-search-actions{flex:0 0 auto;gap:8px;padding:0}.layout-main.channel-mode .qual-page .adv-search-actions .btn-primary{width:88px}.layout-main.channel-mode .qual-page .adv-search-actions .btn-secondary{width:72px}.layout-main.channel-mode .qual-page .adv-search-actions>button{min-height:42px;justify-content:center;padding:0!important;font-size:14px!important}.layout-main.channel-mode .qual-page .adv-search-helper{align-self:center;margin:0;color:#6b7a96;font-size:12px;line-height:19px;white-space:nowrap}.layout-main.channel-mode .qual-page .qual-ledger{overflow:hidden;border:1px solid #d8e0ef;border-radius:12px;background:#fff}.layout-main.channel-mode .qual-page .qual-table-container{overflow-x:auto;border:0;border-radius:0}.layout-main.channel-mode .qual-page .qual-table{min-width:1210px;table-layout:fixed}.layout-main.channel-mode .qual-page .qual-table :is(th,td){box-sizing:border-box}.layout-main.channel-mode .qual-page .qual-table th{height:52px;padding:0 8px;border-bottom:1px solid #d8e0ef;background:#f9fafc;color:#0e1a33;font-size:12px}.layout-main.channel-mode .qual-page .qual-table td{height:112px;padding:12px 8px;vertical-align:middle;color:#0e1a33;font-size:13px;line-height:20px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(1){width:32px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(2){width:80px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(3){width:130px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(4){width:190px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(5){width:150px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(6){width:170px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(7){width:220px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(8){width:90px}.layout-main.channel-mode .qual-page .qual-table :is(th,td):nth-child(9){width:148px}.layout-main.channel-mode .qual-page .id-cell{color:#0e1a33;font-family:inherit;font-weight:700}.layout-main.channel-mode .qual-page .datetime-cell{color:#6b7a96;font-size:12px}.layout-main.channel-mode .qual-page .title-cell{font-weight:500}.layout-main.channel-mode .qual-page .file-link{color:#14478c;font-size:12px}.layout-main.channel-mode .qual-page .teacher-row{align-items:center;margin-bottom:6px}.layout-main.channel-mode .qual-page .teacher-name-link{color:#0e1a33;font-size:12px;font-weight:500;text-decoration:none}.layout-main.channel-mode .qual-page .teachers-cell .status-tag{display:none}.layout-main.channel-mode .qual-page .teacher-actions .user-btn{min-height:28px;padding:0 10px;border-radius:7px;background:#e0ffe8;color:#10ad4f;font-size:12px}.layout-main.channel-mode .qual-page .cell-created-by-openid{overflow:hidden;padding-right:14px;padding-left:14px}.layout-main.channel-mode .qual-page .created-by-stack{width:100%;min-width:0;align-items:flex-start}.layout-main.channel-mode .qual-page :is(.created-by-openid-text,.created-by-name-text){width:100%;overflow:hidden;text-overflow:ellipsis}.layout-main.channel-mode .qual-page .created-by-openid-text{color:#6b7a96}.layout-main.channel-mode .qual-page .toggle-switch{padding:0;background:transparent}.layout-main.channel-mode .qual-page .toggle-knob{width:12px;height:12px}.layout-main.channel-mode .qual-page .toggle-switch.on .toggle-knob{background:#10ad4f}.layout-main.channel-mode .qual-page .toggle-label{font-size:12px}.layout-main.channel-mode .qual-page .toggle-switch.on .toggle-label{color:#10ad4f}.layout-main.channel-mode .qual-page .action-buttons{flex-direction:column;align-items:center;gap:7px}.layout-main.channel-mode .qual-page .action-buttons .action-btn{width:72px;min-height:30px;justify-content:center;padding:0}.layout-main.channel-mode .qual-page .action-buttons .edit-btn{background:#e8f5ff;color:#0f75b8}.layout-main.channel-mode .qual-page .action-buttons .delete-btn{background:#ffe5e5;color:#f53833}.layout-main.channel-mode .qual-page .channel-pagination{min-height:54px;margin:0;padding:6px 10px;border-top:1px solid #d8e0ef;background:#fff;box-sizing:border-box}.layout-main.channel-mode .qual-page .channel-pagination .pagination-info{color:#6b7a96;font-size:12px}.layout-main.channel-mode .qual-page .channel-pagination .pagination-btns{align-items:center;gap:8px}.layout-main.channel-mode .qual-page .channel-pagination .page-btn{min-width:66px;height:42px;border-color:#d8e0ef;border-radius:8px;color:#0a275d;font-size:14px}.layout-main.channel-mode .qual-page .channel-pagination .page-btn.active{min-width:42px;background:#0a275d;border-color:#0a275d;color:#fff}.layout-main.channel-mode .qual-page .page-jump-label{color:#6b7a96;font-size:12px}.layout-main.channel-mode .qual-page .page-jump-input{width:46px;height:36px;padding:0 6px;border:1px solid #d8e0ef;border-radius:7px;color:#0e1a33;text-align:center}.layout-main.channel-mode .qual-page .page-jump-confirm{width:52px;height:42px;border:0;border-radius:8px;background:#0a275d;color:#fff;font-size:14px;cursor:pointer}@media (max-width: 1180px){.layout-main.channel-mode .qual-page>.page-header{grid-template-columns:1fr;height:auto;padding:10px 0}.layout-main.channel-mode .qual-page .resource-header-actions{flex-wrap:wrap;justify-content:flex-start}.layout-main.channel-mode .qual-page .adv-search-bar{height:auto}.layout-main.channel-mode .qual-page .adv-search-row{flex-wrap:wrap}.layout-main.channel-mode .qual-page .adv-search-row-primary .adv-search-field:nth-child(n),.layout-main.channel-mode .qual-page .adv-search-row-secondary .adv-search-field:nth-child(n){width:min(220px,100%)}.layout-main.channel-mode .qual-page .adv-search-helper{width:100%}}@media (max-width: 980px){.layout-main.channel-mode .channel-suite--access .access-filter{flex-wrap:wrap}.layout-main.channel-mode .channel-suite--access .access-filter-actions{margin-left:0}.layout-main.channel-mode .channel-suite--access .permission-group{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-main.channel-mode .channel-suite--account .account-grid{grid-template-columns:1fr}}@media (max-width: 640px){.layout-main.channel-mode .channel-suite--access .permission-group,.layout-main.channel-mode .channel-suite--account .account-readonly-row{grid-template-columns:1fr}}.layout-main.channel-mode .courses-page{color:#0e1a33;font-synthesis:none}.layout-main.channel-mode .courses-page>.page-header{min-height:64px;display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:18px;margin:0 0 14px;padding:0;border:0;background:#fff}.layout-main.channel-mode .courses-page .page-title{margin:0;color:#0e1a33;font-size:28px;line-height:39px}.layout-main.channel-mode .courses-page .page-description{color:#6b7a96;line-height:20px}.layout-main.channel-mode .courses-page .resource-header-actions{flex-wrap:nowrap;gap:10px}.layout-main.channel-mode .courses-page .resource-header-actions>button{min-height:42px;justify-content:center;padding:0 14px;border-color:#d8e0ef;color:#0a275d;font-size:14px}.layout-main.channel-mode .courses-page .resource-header-actions>button:nth-child(1){width:120px}.layout-main.channel-mode .courses-page .resource-header-actions>button:nth-child(2){width:148px}.layout-main.channel-mode .courses-page .resource-header-actions>button:nth-child(3){width:140px}.layout-main.channel-mode .courses-page .resource-header-actions>button:nth-child(4){width:136px;background:#0a275d;color:#fff}.layout-main.channel-mode .courses-page .adv-search-bar{min-height:188px;display:flex;flex-direction:column;align-items:stretch;gap:14px;margin:0 0 14px;padding:18px 20px;border-color:#d8e0ef;border-radius:12px;box-sizing:border-box}.layout-main.channel-mode .courses-page .adv-search-row{min-width:0;display:flex;align-items:flex-end;gap:12px}.layout-main.channel-mode .courses-page .adv-search-field{flex:0 0 auto;min-width:0;height:66px;gap:6px}.layout-main.channel-mode .courses-page .adv-search-row-primary .adv-search-field:nth-child(1){width:130px}.layout-main.channel-mode .courses-page .adv-search-row-primary .adv-search-field:nth-child(2),.layout-main.channel-mode .courses-page .adv-search-row-primary .adv-search-field:nth-child(3){width:160px}.layout-main.channel-mode .courses-page .adv-search-row-primary .adv-search-field:nth-child(4){width:176px}.layout-main.channel-mode .courses-page .adv-search-row-primary .adv-search-field:nth-child(5){width:min(354px,calc(100% - 674px))}.layout-main.channel-mode .courses-page .adv-search-row-secondary .adv-search-field:nth-child(1){width:140px}.layout-main.channel-mode .courses-page .adv-search-row-secondary .adv-search-field:nth-child(2){width:190px}.layout-main.channel-mode .courses-page .adv-search-field label{color:#6b7a96;font-size:12px;line-height:19px}.layout-main.channel-mode .courses-page .adv-search-field :is(input,select){width:100%;height:40px;min-height:40px;padding:0 12px;border-color:#d8e0ef;border-radius:7px;background:#f8fafd;color:#0e1a33;box-sizing:border-box}.layout-main.channel-mode .courses-page .adv-search-datetime-range{gap:4px}.layout-main.channel-mode .courses-page .adv-search-datetime-range span{color:#6b7a96}.layout-main.channel-mode .courses-page .adv-search-actions{flex:0 0 auto;gap:8px;padding:0}.layout-main.channel-mode .courses-page .adv-search-actions .btn-primary{width:88px}.layout-main.channel-mode .courses-page .adv-search-actions .btn-secondary{width:72px}.layout-main.channel-mode .courses-page .adv-search-actions>button{min-height:42px;justify-content:center;padding:0!important;font-size:14px!important}.layout-main.channel-mode .courses-page .adv-search-helper{align-self:center;margin:0;color:#6b7a96;font-size:12px;line-height:19px;white-space:nowrap}.layout-main.channel-mode .courses-page .courses-ledger{overflow:hidden;border:1px solid #d8e0ef;border-radius:12px;background:#fff}.layout-main.channel-mode .courses-page .courses-table-container{overflow-x:auto;border:0;border-radius:0}.layout-main.channel-mode .courses-page .courses-table{min-width:1210px;table-layout:fixed}.layout-main.channel-mode .courses-page .courses-table :is(th,td){box-sizing:border-box}.layout-main.channel-mode .courses-page .courses-table th{height:52px;padding:0 8px;border-bottom:1px solid #d8e0ef;background:#f9fafc;color:#0e1a33;font-size:12px}.layout-main.channel-mode .courses-page .courses-table td{height:112px;padding:12px 8px;vertical-align:middle;color:#0e1a33;font-size:13px;line-height:20px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(1){width:32px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(2){width:80px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(3){width:130px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(4){width:140px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(5){width:110px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(6){width:130px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(7){width:150px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(8){width:220px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(9){width:90px}.layout-main.channel-mode .courses-page .courses-table :is(th,td):nth-child(10){width:128px}.layout-main.channel-mode .courses-page .id-cell{color:#0e1a33;font-family:inherit;font-weight:700}.layout-main.channel-mode .courses-page .datetime-cell{color:#6b7a96;font-size:12px}.layout-main.channel-mode .courses-page .title-cell{font-weight:500}.layout-main.channel-mode .courses-page .outline-preview{max-height:60px;overflow:hidden;padding:0;background:transparent;color:#6b7a96;font-size:12px;line-height:20px}.layout-main.channel-mode .courses-page .file-link{color:#14478c;font-size:12px}.layout-main.channel-mode .courses-page .teacher-row{align-items:center;margin-bottom:6px}.layout-main.channel-mode .courses-page .teacher-name-link{color:#10ad4f;font-size:12px;font-weight:500;text-decoration:none}.layout-main.channel-mode .courses-page .teachers-cell .status-tag{padding:0;background:transparent;color:#10ad4f}.layout-main.channel-mode .courses-page .teacher-actions .edit-btn{display:none}.layout-main.channel-mode .courses-page .teacher-actions .user-btn{min-height:28px;padding:0 10px;border-radius:7px;background:#e0ffe8;color:#10ad4f;font-size:12px}.layout-main.channel-mode .courses-page .cell-created-by-openid{overflow:hidden;padding-right:14px;padding-left:14px}.layout-main.channel-mode .courses-page .created-by-stack{width:100%;min-width:0;align-items:flex-start}.layout-main.channel-mode .courses-page :is(.created-by-openid-text,.created-by-name-text){width:100%;overflow:hidden;text-overflow:ellipsis}.layout-main.channel-mode .courses-page .created-by-openid-text{color:#6b7a96}.layout-main.channel-mode .courses-page .toggle-switch{padding:0;background:transparent}.layout-main.channel-mode .courses-page .toggle-knob{width:12px;height:12px}.layout-main.channel-mode .courses-page .toggle-switch.on .toggle-knob{background:#10ad4f}.layout-main.channel-mode .courses-page .toggle-label{font-size:12px}.layout-main.channel-mode .courses-page .toggle-switch.on .toggle-label{color:#10ad4f}.layout-main.channel-mode .courses-page .action-buttons{flex-direction:column;align-items:center;gap:7px}.layout-main.channel-mode .courses-page .action-buttons .action-btn{width:72px;min-height:30px;justify-content:center;padding:0}.layout-main.channel-mode .courses-page .action-buttons .edit-btn{background:#e8f5ff;color:#0f75b8}.layout-main.channel-mode .courses-page .action-buttons .delete-btn{background:#ffe5e5;color:#f53833}.layout-main.channel-mode .courses-page .channel-pagination{min-height:54px;margin:0;padding:6px 10px;border-top:1px solid #d8e0ef;background:#fff;box-sizing:border-box}.layout-main.channel-mode .courses-page .channel-pagination .pagination-info{color:#6b7a96;font-size:12px}.layout-main.channel-mode .courses-page .channel-pagination .pagination-btns{align-items:center;gap:8px}.layout-main.channel-mode .courses-page .channel-pagination .page-btn{min-width:66px;height:42px;border-color:#d8e0ef;border-radius:8px;color:#0a275d;font-size:14px}.layout-main.channel-mode .courses-page .channel-pagination .page-btn.active{min-width:42px;background:#0a275d;border-color:#0a275d;color:#fff}.layout-main.channel-mode .courses-page .page-jump-label{color:#6b7a96;font-size:12px}.layout-main.channel-mode .courses-page .page-jump-input{width:46px;height:36px;padding:0 6px;border:1px solid #d8e0ef;border-radius:7px;color:#0e1a33;text-align:center}.layout-main.channel-mode .courses-page .page-jump-confirm{width:52px;height:42px;border:0;border-radius:8px;background:#0a275d;color:#fff;font-size:14px;cursor:pointer}@media (max-width: 1180px){.layout-main.channel-mode .courses-page>.page-header{grid-template-columns:1fr;height:auto;padding:10px 0}.layout-main.channel-mode .courses-page .resource-header-actions{flex-wrap:wrap;justify-content:flex-start}.layout-main.channel-mode .courses-page .adv-search-bar{height:auto}.layout-main.channel-mode .courses-page .adv-search-row{flex-wrap:wrap}.layout-main.channel-mode .courses-page .adv-search-row-primary .adv-search-field:nth-child(n),.layout-main.channel-mode .courses-page .adv-search-row-secondary .adv-search-field:nth-child(n){width:min(220px,100%)}.layout-main.channel-mode .courses-page .adv-search-helper{width:100%}}.layout-main.channel-mode .layout-content{background:#eef3fb}.layout-main.channel-mode :is(.courses-page,.qual-page,.tch-page){color:#172033}.layout-main.channel-mode :is(.courses-page,.qual-page,.tch-page) :is(.page-description,label,.adv-search-helper,.tch-search-helper,.pagination-info,.tch-page-info,.datetime-cell){color:#667085}.layout-main.channel-mode :is(.courses-page,.qual-page) .resource-header-actions>button:nth-child(4),.layout-main.channel-mode :is(.courses-page,.qual-page) .adv-search-actions .btn-primary,.layout-main.channel-mode :is(.courses-page,.qual-page) .channel-pagination .page-btn.active,.layout-main.channel-mode :is(.courses-page,.qual-page) .page-jump-confirm{border-color:#1d5bff;background:#1d5bff}.layout-main.channel-mode :is(.courses-page,.qual-page) .teacher-name-link,.layout-main.channel-mode :is(.courses-page,.qual-page) .teachers-cell .status-tag,.layout-main.channel-mode :is(.courses-page,.qual-page) .toggle-switch.on .toggle-label{color:#059461}.layout-main.channel-mode :is(.courses-page,.qual-page) .toggle-switch.on .toggle-knob{background:#059461}.layout-main.channel-mode :is(.courses-page,.qual-page) .teacher-actions .user-btn{background:#e8fbf5;color:#059461}.layout-main.channel-mode :is(.courses-page,.qual-page) .action-buttons .edit-btn{background:#eef4ff}.layout-main.channel-mode :is(.courses-page,.qual-page) .action-buttons .delete-btn{background:#fff1f0}.layout-main.channel-mode :is(.courses-page,.qual-page) .channel-pagination .page-btn{color:#172033}.layout-main.channel-mode :is(.courses-page,.qual-page) .channel-pagination .page-btn.active{color:#fff}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page :is(.btn-primary,.tch-search-actions .btn-primary,.tch-page-current,.tch-page-jump-confirm){border-color:#1d5bff;background:#1d5bff;color:#fff}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .btn-secondary{border-color:#d8e0ef;background:#fff;color:#172033}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page :is(.tch-adv-search-bar,.tch-ledger,.tch-table-container){border-color:#d8e0ef;background:#fff}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-search-field :is(input,select),.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-region-selector{border-color:#d8e0ef;background:#f8fafd;color:#172033}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-dir-tag{border:0;background:#eef4ff;color:#1d5bff}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-toggle-on{background:#059461}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-embed-yes{background:#e8fbf5;color:#059461}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .tch-embed-no{background:#fff7e6;color:#d97706}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .hl-icon-edit{background:#eef4ff;color:#1d5bff}.layout-main:is(.channel-mode,.resource-v1-mode) .tch-page .hl-icon-delete{background:#fff1f0;color:#e5484d}.layout-main.channel-mode .tch-page .tch-channel-batch-tools>button:nth-child(2){width:188px}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #083265;--primary-light: #0a4a8a;--primary-dark: #052145;--secondary-color: #1e88e5;--background: #f5f7fa;--surface: #ffffff;--text-primary: #1a1a1a;--text-secondary: #6b7280;--border-color: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--sidebar-width: 220px;--header-height: 70px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background);color:var(--text-primary);line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}
