@import"https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;700;900&family=DM+Sans:wght@300;400;500;600&display=swap";.page-wrapper{width:100%;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#f4f0fa}.top-nav{height:72px;background:linear-gradient(135deg,#954580,#7a3368);display:flex;align-items:center;padding:0 32px;flex-shrink:0;box-shadow:0 2px 12px #9545804d;z-index:10}.nav-logo{height:80px;width:auto;object-fit:contain;margin-right:24px;flex-shrink:0;filter:drop-shadow(0 1px 4px rgba(0,0,0,.15))}.nav-logo-text{color:#fff;font-size:18px;font-weight:600;white-space:nowrap;margin-right:24px;flex-shrink:0;text-shadow:0 1px 3px rgba(0,0,0,.2)}.nav-links{display:flex;align-items:center;gap:6px;margin-left:8px}.nav-links a{color:#ffffffb3;text-decoration:none;font-size:16px;font-weight:400;padding:8px 18px;transition:all .25s;white-space:nowrap;position:relative;cursor:pointer;line-height:56px}.nav-links a:hover{color:#fff}.nav-links a.active{color:#fff;font-weight:600}.nav-links a.active:after{content:"";position:absolute;bottom:0;left:18px;right:18px;height:2.5px;background:#fff;border-radius:2px}.nav-right{margin-left:auto;display:flex;align-items:center;gap:12px}.nav-tag{display:flex;align-items:center;gap:5px;color:#fffc;font-size:14px;background:#ffffff1f;padding:4px 10px;border-radius:6px}.nav-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:#5cb531;flex-shrink:0}.nav-bell{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;transition:background .2s;position:relative}.nav-bell:hover{background:#ffffff1f}.nav-bell svg{width:18px;height:18px;fill:#fffc}.nav-bell .dot{position:absolute;top:5px;right:5px;width:7px;height:7px;background:#e8373e;border-radius:50%;border:1.5px solid #954580}.nav-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.35);cursor:pointer;transition:border-color .2s}.nav-avatar:hover{border-color:#ffffffb3}.sub-nav{background:#5e2550;display:flex;align-items:center;padding:0 32px;height:44px;flex-shrink:0}.sub-nav-item{font-size:14px;color:#ffffffa6;padding:10px 24px;cursor:pointer;transition:all .2s;position:relative;font-weight:400;height:100%;display:flex;align-items:center}.sub-nav-item:hover{color:#ffffffe6}.sub-nav-item.active{color:#fff;font-weight:600;background:#ffffff1a;border-radius:6px 6px 0 0}.main-content{flex:1;overflow-y:auto;background:transparent;animation:fadeIn .4s ease-out}.main-content::-webkit-scrollbar{width:6px}.main-content::-webkit-scrollbar-thumb{background:#f0e4ed;border-radius:10px}.main-content::-webkit-scrollbar-thumb:hover{background:#d0b8c8}.main-content::-webkit-scrollbar-track{background:transparent}@media (max-width: 768px){.top-nav{padding:0 16px;height:56px}.nav-logo{height:48px}.nav-links a{font-size:14px;padding:8px 12px;line-height:40px}.nav-tag{display:none}.sub-nav{padding:0 16px}.sub-nav-item{padding:10px 16px;font-size:13px}}.login-container{display:flex;justify-content:center;align-items:center;height:100vh;position:relative;overflow:hidden;background:linear-gradient(135deg,#a64791,#823273)}.login-container:before{content:"";position:absolute;top:-50%;right:-10%;width:500px;height:500px;background:#ffffff1a;border-radius:50%;animation:float 6s ease-in-out infinite}.login-container:after{content:"";position:absolute;bottom:-30%;left:-5%;width:400px;height:400px;background:#ffffff14;border-radius:50%;animation:float 8s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}.login-card{width:450px;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0003;border-radius:16px;border:1px solid rgba(255,255,255,.3);z-index:1;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-card .ant-card-head{display:none}.login-logo{text-align:center;margin-bottom:24px}.login-logo img{max-width:280px;height:auto}.login-logo-text{font-size:32px;font-weight:600;color:#a64791;letter-spacing:2px}.login-card .ant-card-body{padding:40px 32px}.login-card .ant-form-item{margin-bottom:24px}.login-card .ant-input,.login-card .ant-input-password input,.login-card .ant-select-selector{height:35px;border-radius:8px;border:1px solid #e0e0e0;transition:all .3s ease}.login-card .ant-input-password{height:44px;border-radius:8px;padding:0}.login-card .ant-input-password input{border:none}.login-card .ant-input:focus,.login-card .ant-input-password:focus,.login-card .ant-input-password.ant-input-affix-wrapper-focused,.login-card .ant-select-selector:focus{border-color:#a64791;box-shadow:0 0 0 2px #a647911a}.login-card .ant-select-selector{padding:6px 11px!important}.login-card .ant-input-affix-wrapper{padding:4px 11px}.login-card .ant-btn-primary{height:44px;border-radius:8px;font-size:16px;font-weight:500;background:linear-gradient(135deg,#a64791,#823273);border:none;box-shadow:0 4px 12px #a647914d;transition:all .3s ease}.login-card .ant-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #a6479166}.login-card .ant-input-prefix{color:#a64791;font-size:16px}.login-footer{position:absolute;bottom:30px;left:0;right:0;text-align:center;color:#ffffffe6;font-size:14px;z-index:1;text-shadow:0 2px 4px rgba(0,0,0,.1)}.login-footer p{margin:4px 0}:root{--db-purple: #954580;--db-purple-deep: #7A3368;--db-purple-dark: #5E2550;--db-purple-light: #B06A9A;--db-purple-pale: #F8F0F6;--db-purple-soft: #F0E4ED;--db-purple-muted: #A8899E;--db-red: #E8373E;--db-red-light: #FDEAEA;--db-green: #5CB531;--db-green-light: #EEF8E6;--db-yellow: #F9C41A;--db-yellow-light: #FFF8E0;--db-blue: #00A3E4;--db-blue-deep: #0086BE;--db-surface: #FFFFFF;--db-surface-2: #FAF8FF;--db-text-primary: #1E1533;--db-text-secondary: #6B5B7B;--db-text-muted: #9B8DAB;--db-radius-sm: 10px;--db-radius-md: 14px;--db-radius-lg: 20px;--db-shadow-soft: 0 2px 12px rgba(149,69,128,.06);--db-shadow-card: 0 4px 20px rgba(149,69,128,.08);--db-shadow-hover: 0 8px 32px rgba(149,69,128,.14);--db-border-light: #F0EAF5}.db-content{flex:1;overflow-y:auto;padding:24px 40px;max-width:1400px;margin:0 auto;width:100%;scrollbar-width:thin;scrollbar-color:var(--db-purple-soft) transparent}.db-content::-webkit-scrollbar{width:6px}.db-content::-webkit-scrollbar-thumb{background:var(--db-purple-soft);border-radius:10px}.db-assign-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.db-assign-title{font-size:20px;font-weight:700;color:var(--db-text-primary)}.db-assign-meta{font-size:14px;color:var(--db-text-muted);display:flex;align-items:center;gap:4px}.db-assign-meta svg{width:12px;height:12px;fill:var(--db-text-muted)}.db-task-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}.db-task-card{border-radius:var(--db-radius-md);padding:18px 20px;color:#fff;position:relative;overflow:hidden;cursor:pointer;transition:transform .25s,box-shadow .25s;min-height:78px;display:flex;flex-direction:column;justify-content:center;animation:dbFadeInUp .4s ease both}.db-task-card:hover{transform:translateY(-2px);box-shadow:var(--db-shadow-hover)}.db-task-card:after{content:"";position:absolute;top:-20px;right:-20px;width:80px;height:80px;border-radius:50%;background:#ffffff1a}.db-task-card .db-card-title{font-size:17px;font-weight:600;margin-bottom:3px;position:relative;z-index:1}.db-task-card .db-card-sub{font-size:13px;opacity:.75;position:relative;z-index:1}.db-tc-purple{background:linear-gradient(135deg,#A04D8A 0%,var(--db-purple-deep) 100%)}.db-tc-blue{background:linear-gradient(135deg,#00b8f0,#00a3e4)}.db-tc-red{background:linear-gradient(135deg,#f04850,#e8373e)}.db-tc-green{background:linear-gradient(135deg,#6cc832,#5cb531)}.db-tc-mixed{background:linear-gradient(135deg,#B06A9A 0%,var(--db-purple) 100%)}.db-tc-yellow{background:linear-gradient(135deg,#ffd640,#f9c41a)}.db-tc-yellow .db-card-sub{opacity:.8}.db-task-cards-row2{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.db-task-card:nth-child(1){animation-delay:0s}.db-task-card:nth-child(2){animation-delay:.05s}.db-task-card:nth-child(3){animation-delay:.1s}.db-task-cards-row2 .db-task-card:nth-child(1){animation-delay:.15s}.db-task-cards-row2 .db-task-card:nth-child(2){animation-delay:.2s}.db-task-cards-row2 .db-task-card:nth-child(3){animation-delay:.25s}.db-two-col{display:flex;gap:20px}.db-col-main{flex:1;min-width:0}.db-col-side{width:360px;flex-shrink:0;display:flex;flex-direction:column;gap:14px}.db-panel{background:var(--db-surface);border-radius:var(--db-radius-md);box-shadow:var(--db-shadow-soft);overflow:hidden;animation:dbFadeInUp .5s ease both;animation-delay:.3s}.db-col-side .db-panel:nth-child(1){animation-delay:.2s}.db-col-side .db-panel:nth-child(2){animation-delay:.35s}.db-col-side .db-panel:nth-child(3){animation-delay:.45s}.db-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 10px}.db-panel-title{font-size:18px;font-weight:600;color:var(--db-text-primary)}.db-panel-link{font-size:14px;color:var(--db-purple);text-decoration:none;display:flex;align-items:center;gap:2px;font-weight:500;transition:opacity .2s;cursor:pointer;background:none;border:none;font-family:inherit}.db-panel-link:hover{opacity:.7}.db-panel-link svg{width:14px;height:14px;fill:var(--db-purple)}.db-tabs{display:flex;gap:0;padding:0 20px;border-bottom:1px solid var(--db-border-light)}.db-tab{font-size:15px;color:var(--db-text-muted);padding:8px 16px;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;font-weight:400;background:none;border-top:none;border-left:none;border-right:none;font-family:inherit;-webkit-user-select:none;user-select:none}.db-tab:hover{color:var(--db-text-secondary)}.db-tab.active{color:var(--db-purple);font-weight:600;border-bottom-color:var(--db-purple)}.db-hw-list{padding:16px 20px 20px;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.db-hw-item{padding:20px 22px;border:1px solid var(--db-border-light);border-radius:var(--db-radius-md);cursor:pointer;transition:all .2s;position:relative}.db-hw-item:hover{background:var(--db-purple-pale);box-shadow:var(--db-shadow-card);transform:translateY(-1px)}.db-hw-item-title{font-size:16px;font-weight:600;color:var(--db-text-primary);margin-bottom:14px;display:flex;align-items:center;gap:10px}.db-hw-badge{font-size:13px;padding:3px 12px;border-radius:5px;font-weight:500;white-space:nowrap}.db-badge-published{background:#f0e6f6;color:var(--db-purple)}.db-badge-draft{background:#f0f0f0;color:#888}.db-badge-expired{background:var(--db-red-light);color:var(--db-red)}.db-badge-ongoing{background:var(--db-green-light);color:var(--db-green)}.db-badge-grading{background:var(--db-yellow-light);color:#c49800}.db-badge-completed{background:var(--db-green-light);color:var(--db-green)}.db-hw-stats{display:flex;gap:28px;margin-bottom:12px}.db-hw-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.db-hw-stat-val{font-size:22px;font-weight:700;color:var(--db-text-primary);font-family:DM Sans,sans-serif;line-height:1.2}.db-hw-stat-val span{font-size:14px;font-weight:400;color:var(--db-text-muted)}.db-hw-stat-label{font-size:13px;color:var(--db-text-muted)}.db-hw-meta{font-size:14px;color:var(--db-text-muted);display:flex;align-items:center;gap:12px;margin-top:4px}.db-hw-more-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.db-hw-more-btn:hover{background:var(--db-border-light)}.db-hw-more-btn svg{width:20px;height:20px;fill:var(--db-text-muted)}.db-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:10px 16px 18px}.db-quick-item{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;padding:10px 4px;border-radius:10px;transition:background .2s}.db-quick-item:hover{background:var(--db-purple-pale)}.db-quick-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.db-quick-icon svg{flex-shrink:0}.db-qi-purple{background:linear-gradient(135deg,#f0e6f6,#e6d4f0)}.db-qi-red{background:linear-gradient(135deg,#fdeaea,#f8d4d4)}.db-qi-green{background:linear-gradient(135deg,#eef8e6,#d4f0d4)}.db-qi-yellow{background:linear-gradient(135deg,#fff8e0,#f0e8c4)}.db-quick-label{font-size:13px;color:var(--db-text-secondary);white-space:nowrap}.db-promo-banner{border-radius:var(--db-radius-sm);overflow:hidden;background:linear-gradient(135deg,var(--db-purple-pale) 0%,#F8E6FF 50%,var(--db-yellow-light) 100%);padding:16px 18px;position:relative;animation:dbFadeInUp .5s ease both;animation-delay:.3s}.db-promo-banner:before{content:"";position:absolute;top:-10px;right:-10px;width:70px;height:70px;background:radial-gradient(circle,rgba(149,69,128,.08) 0%,transparent 70%);border-radius:50%}.db-promo-title{font-size:16px;font-weight:700;color:var(--db-purple);margin-bottom:4px}.db-promo-desc{font-size:13px;color:var(--db-text-secondary);line-height:1.5}.db-todo-empty{padding:24px;text-align:center;font-size:14px;color:var(--db-text-muted)}.db-notice-list{padding:6px 18px 14px}.db-notice-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid #F5F0FA;cursor:pointer}.db-notice-item:last-child{border-bottom:none}.db-notice-dot{width:8px;height:8px;border-radius:50%;background:var(--db-purple-light);flex-shrink:0;margin-top:6px}.db-notice-text{font-size:14px;color:var(--db-text-secondary);line-height:1.5}.db-notice-text strong{color:var(--db-purple);font-weight:500}.db-loading{display:flex;justify-content:center;align-items:center;min-height:400px}@keyframes dbFadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.db-content{padding:20px 24px}.db-two-col{flex-direction:column}.db-col-side{width:100%}.db-quick-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.db-task-cards,.db-task-cards-row2,.db-hw-list{grid-template-columns:1fr}.db-content{padding:16px}}.db-hw-menu-wrap{position:absolute;top:12px;right:12px}.db-hw-dropdown{position:absolute;right:0;top:32px;background:#fff;border:1px solid #f0eaf5;border-radius:10px;box-shadow:0 8px 24px #9545801f;z-index:100;min-width:110px;overflow:hidden}.db-hw-dd-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;background:none;border:none;cursor:pointer;font-size:13px;color:#1e1533;text-align:left;transition:background .15s}.db-hw-dd-item:hover{background:#f8f0f6}.db-hw-dd-item svg{fill:#6b5b7b;flex-shrink:0}.db-hw-dd-danger{color:#e8373e}.db-hw-dd-danger svg{fill:#e8373e}.db-modal-form{padding:8px 0 16px}.db-modal-row{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}.db-modal-label{width:96px;flex-shrink:0;padding-top:8px;font-size:14px;color:#6b5b7b;text-align:right}.db-modal-input{flex:1;height:40px;padding:0 12px;border:1px solid #e8e0f0;border-radius:8px;font-size:14px;color:#1e1533;background:#faf8ff;outline:none;transition:border-color .2s}.db-modal-input:focus{border-color:#954580}.db-modal-textarea{flex:1;padding:10px 12px;border:1px solid #e8e0f0;border-radius:8px;font-size:14px;color:#1e1533;background:#faf8ff;outline:none;resize:vertical;font-family:inherit;transition:border-color .2s}.db-modal-textarea:focus{border-color:#954580}.db-modal-radios{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding-top:8px}.db-modal-radio{display:flex;align-items:center;gap:6px;font-size:14px;color:#1e1533;cursor:pointer}.db-modal-radio input[type=radio]{width:16px;height:16px;accent-color:#954580;cursor:pointer}.db-modal-input-inline{height:36px;flex:none;width:180px}.db-modal-duration{display:flex;align-items:center;gap:6px;font-size:14px;color:#1e1533}.db-modal-input-sm{width:80px;flex:none}.db-modal-static{padding-top:8px;font-size:14px;color:#1e1533}.db-modal-footer{display:flex;justify-content:center;gap:16px;padding:8px 0 4px;border-top:1px solid #f0eaf5;margin-top:4px}.db-modal-btn-cancel{padding:8px 32px;border:1.5px solid #d0c0dc;border-radius:20px;background:#fff;font-size:14px;color:#6b5b7b;cursor:pointer;transition:border-color .2s}.db-modal-btn-cancel:hover{border-color:#954580;color:#954580}.db-modal-btn-confirm{padding:8px 32px;border:none;border-radius:20px;background:linear-gradient(135deg,#954580,#b06a9a);font-size:14px;color:#fff;cursor:pointer;font-weight:600;box-shadow:0 4px 12px #95458040;transition:opacity .2s}.db-modal-btn-confirm:hover:not(:disabled){opacity:.9}.db-modal-btn-confirm:disabled{background:#d4b5cc;box-shadow:none;cursor:not-allowed}.db-urge-body{padding:16px 0 20px}.db-urge-tip{font-size:15px;color:#1e1533;margin-bottom:16px;line-height:1.6}.db-urge-textarea{width:100%;padding:12px;border:1.5px solid #954580;border-radius:8px;font-size:14px;color:#1e1533;background:#fff;outline:none;resize:vertical;font-family:inherit;box-sizing:border-box}.db-urge-textarea:focus{border-color:#7a3468}.db-urge-auto-info{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:#fef9f0;border:1px solid #f0dbb8;border-radius:8px;margin-bottom:14px;font-size:13px;color:#8a6d3b;line-height:1.5}.db-urge-auto-info svg{flex-shrink:0;margin-top:2px}.custom-pagination{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 0;flex-wrap:wrap}.pagination-btn{min-width:32px;height:32px;padding:0 12px;border:1px solid #d9d9d9;border-radius:4px;background:#fff;color:#333;font-size:14px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.pagination-btn:hover:not(:disabled){border-color:#a64791;color:#a64791}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;background:#f5f5f5}.pagination-pages{display:flex;align-items:center;gap:8px}.pagination-page{min-width:32px;width:32px;height:32px;padding:0}.pagination-page.pagination-active{border-color:#a64791;background:linear-gradient(135deg,#a64791,#823273);color:#fff;font-weight:500}.pagination-page.pagination-active:hover{border-color:#a64791;background:linear-gradient(135deg,#ba5ba5,#964687);color:#fff}.pagination-ellipsis{border:none;background:transparent;cursor:default;min-width:32px;width:32px;height:32px;padding:0}.pagination-ellipsis:hover{border:none;color:#333}.pagination-jumper{display:flex;align-items:center;gap:8px;margin-left:16px}.pagination-jump-input{width:60px;height:32px;text-align:center;border:1px solid #d9d9d9;border-radius:4px;font-size:14px}.pagination-jump-input:focus{border-color:#a64791;box-shadow:0 0 0 2px #a647911a;outline:none}.pagination-total{margin-left:16px;color:#666;font-size:14px}@media (max-width: 768px){.custom-pagination{flex-direction:column;gap:12px}.pagination-jumper,.pagination-total{margin-left:0}}/*!
 * 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}.sc-page-body{flex:1;display:flex;overflow:hidden}.sc-sidebar{flex-shrink:0;background:#fff;border-right:1px solid #F0EAF5;display:flex;flex-direction:column;overflow-y:auto;padding:20px;scrollbar-width:thin;scrollbar-color:#F0E4ED transparent}.sc-sidebar::-webkit-scrollbar{width:5px}.sc-sidebar::-webkit-scrollbar-thumb{background:#f0e4ed;border-radius:10px}.sc-content-area{flex:1;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:#F0E4ED transparent}.sc-content-area::-webkit-scrollbar{width:6px}.sc-content-area::-webkit-scrollbar-thumb{background:#f0e4ed;border-radius:10px}.sc-filter-panel{background:#fff;margin:0 28px 16px;border-radius:14px;box-shadow:0 2px 12px #9545800f;padding:0 20px 16px}.sc-filter-tag{padding:5px 16px;font-size:13px;color:#6b5b7b;border-radius:6px;cursor:pointer;transition:all .2s;border:1px solid transparent;display:inline-block;-webkit-user-select:none;user-select:none}.sc-filter-tag:hover{color:#954580;background:#f8f0f6}.sc-filter-tag.active{color:#954580;background:#f8f0f6;border-color:#b06a9a;font-weight:500}.sc-filter-tag-close{margin-left:6px;font-size:14px;line-height:1;opacity:.6;cursor:pointer;transition:opacity .15s}.sc-filter-tag-close:hover{opacity:1}.sc-filter-tag.region-selected{background:#ffe8ea;color:#e8373e;border-color:transparent;font-weight:500}.sc-search-bar{display:flex;align-items:stretch;padding:18px 28px}.sc-search-type-wrap{position:relative}.sc-search-type-btn{padding:10px 32px 10px 16px;border:1px solid #F0EAF5;border-right:none;border-radius:8px 0 0 8px;font-size:14px;font-family:inherit;color:#1e1533;background:#fff;cursor:pointer;min-width:90px;text-align:left;position:relative;outline:none;transition:border-color .2s;height:100%}.sc-search-type-btn:after{content:"";position:absolute;right:10px;top:50%;transform:translateY(-50%);border:4px solid transparent;border-top:5px solid #9B8DAB}.sc-search-type-btn:focus,.sc-search-type-btn.open{border-color:#954580}.sc-search-type-menu{position:absolute;top:calc(100% + 2px);left:0;background:#fff;border:1px solid #F0EAF5;border-radius:8px;box-shadow:0 6px 20px #0000001a;z-index:100;min-width:120px;overflow:hidden}.sc-search-type-opt{padding:10px 16px;font-size:14px;cursor:pointer;transition:background .15s;color:#1e1533}.sc-search-type-opt:hover{background:#f8f0f6}.sc-search-type-opt.active{background:#f8f0f6;color:#954580;font-weight:600}.sc-search-input{flex:1;padding:10px 16px;border:1px solid #F0EAF5;font-size:14px;font-family:inherit;color:#1e1533;outline:none;transition:border-color .2s}.sc-search-input::placeholder{color:#9b8dab}.sc-search-input:focus{border-color:#b06a9a}.sc-search-btn{padding:10px 28px;background:#954580;color:#fff;border:none;border-radius:0 8px 8px 0;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s;letter-spacing:4px}.sc-search-btn:hover{background:#7a3368}@media (max-width: 768px){.sc-sidebar{width:220px!important;min-width:220px!important;padding:12px}.sc-filter-panel{margin:0 16px 12px;border-radius:10px}.sc-search-bar{padding:12px 16px}}:root{--qb-purple: #954580;--qb-purple-deep: #7A3368;--qb-purple-dark: #5E2550;--qb-purple-light: #B06A9A;--qb-purple-pale: #F8F0F6;--qb-purple-soft: #F0E4ED;--qb-purple-muted: #A8899E;--qb-red: #E8373E;--qb-red-light: #FDEAEA;--qb-green: #5CB531;--qb-green-light: #EEF8E6;--qb-yellow: #F9C41A;--qb-yellow-light: #FFF8E0;--qb-blue: #00A3E4;--qb-blue-deep: #0086BE;--qb-blue-light: #E8F6FF;--qb-surface: #FFFFFF;--qb-text-primary: #1E1533;--qb-text-secondary: #6B5B7B;--qb-text-muted: #9B8DAB;--qb-radius-sm: 10px;--qb-radius-md: 14px;--qb-radius-lg: 20px;--qb-shadow-soft: 0 2px 12px rgba(149,69,128,.06);--qb-shadow-card: 0 4px 20px rgba(149,69,128,.08);--qb-shadow-hover: 0 8px 32px rgba(149,69,128,.14);--qb-border-light: #F0EAF5}.td25{min-width:178px}.mjx-chtml{display:inline-block;line-height:0;text-indent:0;text-align:left;text-transform:none;font-style:normal;font-weight:400;font-size:100%;font-size-adjust:none;letter-spacing:normal;word-wrap:normal;word-spacing:normal;white-space:nowrap;float:none;direction:ltr;max-width:none;max-height:none;min-width:0;min-height:0;border:0;margin:0;padding:2px}.question-bank-layout{height:calc(100vh - 116px);background:#f4f0fa}.sider-header{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--qb-blue);margin-bottom:16px}.sider-header svg{width:18px;height:18px;fill:var(--qb-blue)}.textbook-selector{padding:0 16px 12px}.chapter-tree{padding:8px 12px;display:flex;flex-direction:column;gap:2px}.ch-item{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:10px;cursor:pointer;transition:background .15s,color .15s;color:var(--qb-text-secondary);font-size:14px;-webkit-user-select:none;user-select:none;min-width:0}.ch-item:hover{background:var(--qb-purple-pale);color:var(--qb-text-primary)}.ch-item.active{background:linear-gradient(135deg,var(--qb-purple) 0%,var(--qb-purple-light) 100%);color:#fff;font-weight:600;box-shadow:0 4px 12px #95458040}.ch-arrow{width:14px;height:14px;flex-shrink:0;fill:currentColor;opacity:.7}.ch-item.active .ch-arrow{opacity:1}.ch-arrow-placeholder{width:14px;flex-shrink:0}.ch-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.question-bank-content{padding-bottom:72px}.content-top{display:flex;align-items:center;justify-content:space-between;padding:20px 28px 0}.space-tabs{display:flex;align-items:center;gap:0;background:var(--qb-purple-pale);border-radius:8px;padding:3px}.space-tab{padding:8px 20px;font-size:14px;color:var(--qb-text-secondary);border-radius:6px;cursor:pointer;transition:all .2s;font-weight:400;display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none}.space-tab svg{width:14px;height:14px;fill:currentColor}.space-tab.active{background:var(--qb-purple);color:#fff;font-weight:500;box-shadow:0 2px 8px #95458040}.space-tab:not(.active):hover{color:var(--qb-purple)}.content-top-actions{display:flex;align-items:center;gap:8px}.btn-approval{display:flex;align-items:center;gap:6px;padding:10px 22px;background:#fff;color:var(--qb-text-secondary);border:1px solid var(--qb-border-light);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.btn-approval svg{width:14px;height:14px;fill:currentColor}.btn-approval:hover{color:var(--qb-purple);border-color:var(--qb-purple-light)}.btn-create{display:flex;align-items:center;gap:6px;padding:10px 22px;background:var(--qb-purple);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #95458033;font-family:inherit}.btn-create svg{width:14px;height:14px;fill:currentColor}.btn-create:hover{background:var(--qb-purple-deep);box-shadow:0 4px 16px #9545804d}.search-bar-wrap{display:flex;align-items:center;padding:18px 28px;gap:0}.filter-row{display:flex;align-items:flex-start;padding:12px 0;border-bottom:1px solid #FAF5FF;margin-bottom:0}.filter-row:last-child{border-bottom:none}.filter-label{width:80px;flex-shrink:0;font-size:14px;color:var(--qb-text-secondary);padding-top:4px;font-weight:500;margin-right:0}.province-dropdown{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f}.province-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:16px}.province-item{padding:8px 4px;text-align:center;font-size:13px;color:var(--qb-text-primary);border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;min-height:32px;background:#fff}.province-item:hover{border-color:var(--qb-blue);color:var(--qb-blue);background:var(--qb-blue-light)}.province-item.selected{border-color:var(--qb-blue);color:var(--qb-blue);background:var(--qb-blue-light);font-weight:500}.province-dropdown-overlay{padding:0!important}.batch-bar{display:flex;align-items:center;padding:0 28px;margin-bottom:4px;gap:16px}.batch-bar label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--qb-text-secondary);cursor:pointer}.batch-bar .batch-info{font-size:13px;color:var(--qb-text-muted)}.batch-bar .batch-info strong{color:var(--qb-purple);font-weight:600}.questions-list{padding:16px 28px;display:flex;flex-direction:column;gap:16px;flex:1}.q-header-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1}.q-source{color:var(--qb-purple);font-weight:500;font-size:13px}.q-type-tag{display:inline-block;padding:2px 10px;border-radius:4px;font-size:12px;font-weight:500;background:var(--qb-blue-light);color:var(--qb-blue)}.q-type-tag.single_choice{background:var(--qb-blue-light);color:var(--qb-blue)}.q-type-tag.multiple_choice{background:var(--qb-purple-pale);color:var(--qb-purple)}.q-type-tag.true_false{background:var(--qb-green-light);color:var(--qb-green)}.q-type-tag.fill_blank{background:var(--qb-yellow-light);color:#c49800}.q-type-tag.subjective{background:#fff0e0;color:#e08a00}.q-type-tag.comprehensive{background:var(--qb-red-light);color:var(--qb-red)}.q-diff{font-size:12px;color:var(--qb-text-muted)}.q-diff.easy{color:var(--qb-green)}.q-diff.medium{color:var(--qb-yellow)}.q-diff.hard{color:var(--qb-red)}.q-usage{font-size:12px;color:var(--qb-text-muted);margin-left:auto}.q-checkbox{width:16px;height:16px;accent-color:var(--qb-purple);cursor:pointer}.q-expand{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--qb-purple);font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s}.q-expand:hover{opacity:.7}.q-expand svg{width:18px;height:18px;fill:var(--qb-purple);transition:transform .2s}.q-expand.open svg{transform:rotate(180deg)}.q-actions{display:flex;align-items:center;gap:6px}.q-act-btn{display:flex;align-items:center;gap:4px;padding:6px 14px;font-size:13px;color:var(--qb-text-secondary);background:none;border:none;cursor:pointer;font-family:inherit;transition:color .15s}.q-act-btn:hover{color:var(--qb-purple)}.q-act-btn.danger:hover{color:var(--qb-red)}.q-act-btn svg{width:14px;height:14px;fill:currentColor}.q-act-fav{display:flex;align-items:center;gap:4px;padding:6px 14px;font-size:13px;color:var(--qb-text-secondary);background:none;border:none;cursor:pointer;font-family:inherit;transition:color .15s}.q-act-fav:hover,.q-act-fav.faved{color:var(--qb-yellow)}.q-act-fav svg{width:14px;height:14px;fill:currentColor}.q-act-add{padding:7px 20px;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .25s;letter-spacing:2px;font-family:inherit;background:var(--qb-purple);border:1.5px solid var(--qb-purple);color:#fff}.q-act-add:hover{background:var(--qb-purple-deep);border-color:var(--qb-purple-deep)}.q-act-add.added{background:#fff;color:var(--qb-text-muted);border:1.5px solid var(--qb-border-light);letter-spacing:0}.q-act-add.added:hover{color:var(--qb-red);border-color:var(--qb-red);background:var(--qb-red-light)}.q-answer{display:none;margin-top:14px;border-top:1px solid var(--qb-border-light);background:#fdfbff;padding:14px;border-radius:8px}.q-answer.show{display:block}.q-answer-label{font-weight:600;color:var(--qb-purple);margin-bottom:6px;font-size:14px}.q-kp-tag{display:inline-block;padding:2px 10px;margin:2px 4px 2px 0;border-radius:4px;font-size:12px;font-weight:500;background:var(--qb-blue-light);color:var(--qb-blue)}.filter-options{display:flex;flex-wrap:wrap;gap:4px;flex:1}.filter-region{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--qb-text-secondary);cursor:pointer;transition:color .15s;background:none;border:none;font-family:inherit}.filter-region:hover{color:var(--qb-purple)}.filter-region svg{width:14px;height:14px;fill:currentColor}.question-card{background:var(--qb-surface);border-radius:var(--qb-radius-md);box-shadow:var(--qb-shadow-soft);overflow:hidden;transition:box-shadow .2s;padding:16px 22px;animation:qbFadeInUp .4s ease both}.question-card:hover{box-shadow:var(--qb-shadow-card)}.question-card.selected{border:2px solid var(--qb-purple);box-shadow:var(--qb-shadow-hover)}.question-card:nth-child(1){animation-delay:0s}.question-card:nth-child(2){animation-delay:.06s}.question-card:nth-child(3){animation-delay:.12s}.question-card:nth-child(4){animation-delay:.18s}.question-card:nth-child(5){animation-delay:.24s}.question-card:nth-child(6){animation-delay:.3s}.question-card:nth-child(7){animation-delay:.36s}.question-card:nth-child(8){animation-delay:.42s}.question-card:nth-child(9){animation-delay:.48s}.question-card:nth-child(10){animation-delay:.54s}@keyframes qbFadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.question-header{display:flex;align-items:center;gap:10px;margin-bottom:0;padding:0;flex-wrap:wrap}.question-content{font-size:14px;line-height:1.8;color:var(--qb-text-primary);margin-bottom:0;padding:14px 0 0}.content-text{word-break:break-word}.content-text img,.answer-content img,.option-content img{max-width:100%;height:auto;display:block;margin:8px 0}.content-text img{max-width:min(100%,800px)}.answer-content img{max-width:min(100%,600px)}.option-content img{max-width:min(100%,400px)}.question-expand{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px dashed var(--qb-border-light);margin-top:14px}.answer-content{color:var(--qb-text-primary);line-height:1.7;font-size:14px}.deploy-bar{position:fixed;bottom:0;right:0;left:280px;height:56px;background:#fff;border-top:1px solid var(--qb-border-light);display:flex;align-items:center;justify-content:flex-end;padding:0 32px;gap:20px;z-index:100;box-shadow:0 -4px 16px #9545800f}.deploy-info{font-size:14px;color:var(--qb-text-secondary)}.deploy-info strong{color:var(--qb-blue);font-weight:700;font-size:16px}.deploy-btn{display:flex;align-items:center;gap:8px;padding:10px 32px;background:var(--qb-purple);color:#fff;border:none;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px #9545804d;letter-spacing:2px;outline:none;font-family:inherit}.deploy-btn:hover{background:var(--qb-purple-deep);box-shadow:0 6px 20px #95458066}.deploy-panel-title{padding:16px 20px 12px;font-size:15px;font-weight:600;color:var(--qb-text-primary);border-bottom:1px solid var(--qb-border-light);display:flex;align-items:center;justify-content:space-between}.deploy-panel-close{width:16px;height:16px;fill:var(--qb-text-muted);cursor:pointer;transition:fill .2s}.deploy-panel-close:hover{fill:var(--qb-text-primary)}.deploy-type-item{display:flex;align-items:center;gap:14px;padding:14px 20px;cursor:pointer;transition:background .15s;font-size:15px;color:var(--qb-text-primary);font-weight:500;border:none;background:none;width:100%;text-align:left;font-family:inherit}.deploy-type-item:hover{background:var(--qb-blue-light)}.deploy-type-icon.homework svg{fill:var(--qb-blue)}.deploy-type-icon.classwork svg{fill:var(--qb-green)}.deploy-type-icon.habit svg{fill:var(--qb-yellow)}.deploy-type-icon.preview{background:var(--qb-purple-pale)}.deploy-type-icon.preview svg{fill:var(--qb-purple)}.ct-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e153373;z-index:1000;display:flex;justify-content:center;align-items:center}.ct-modal{width:720px;max-width:92vw;background:#fff;border-radius:var(--qb-radius-lg);box-shadow:0 20px 60px #0003;overflow:hidden;animation:ctSlideUp .3s ease}@keyframes ctSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.ct-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px 16px;border-bottom:1px solid var(--qb-border-light)}.ct-title{font-size:18px;font-weight:700;color:var(--qb-text-primary)}.ct-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:none;border-radius:8px;cursor:pointer;transition:background .2s}.ct-close:hover{background:var(--qb-purple-pale)}.ct-close svg{width:18px;height:18px;fill:var(--qb-text-muted)}.ct-body{display:flex;gap:24px;padding:32px 28px 36px}.ct-card{flex:1;border:2px solid var(--qb-border-light);border-radius:var(--qb-radius-md);padding:28px 24px;display:flex;flex-direction:column;min-height:300px;cursor:pointer;transition:all .25s;position:relative;overflow:hidden;background:#fdfbff}.ct-card:hover{border-color:var(--qb-purple-light);box-shadow:var(--qb-shadow-hover);transform:translateY(-2px)}.ct-card-title{font-size:22px;font-weight:700;color:var(--qb-text-primary);margin-bottom:12px}.ct-card-desc{font-size:14px;color:var(--qb-text-muted);line-height:1.6}.ct-card-illust{flex:1;display:flex;align-items:flex-end;justify-content:center;margin-top:20px;position:relative}.ct-illust-quiz{width:100%;height:120px;position:relative;display:flex;align-items:center;justify-content:center}.ct-illust-quiz:before{content:"";position:absolute;bottom:0;left:10%;right:10%;height:80%;background:linear-gradient(135deg,var(--qb-purple-pale) 0%,#F5E6F0 100%);border-radius:16px 16px 0 0;opacity:.6}.ct-illust-quiz-icons{position:relative;z-index:1;display:flex;gap:12px}.ct-illust-quiz-icons span{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#fff}.ct-illust-quiz-icons span:nth-child(1){background:var(--qb-purple-light)}.ct-illust-quiz-icons span:nth-child(2){background:var(--qb-purple)}.ct-illust-quiz-icons span:nth-child(3){background:var(--qb-purple-muted)}.ct-illust-compete{width:100%;height:120px;position:relative;display:flex;align-items:center;justify-content:center}.ct-illust-compete:before{content:"";position:absolute;bottom:0;left:5%;right:5%;height:60%;background:linear-gradient(135deg,#E8F0E6 0%,var(--qb-purple-pale) 100%);border-radius:12px 12px 0 0;opacity:.5}.ct-illust-compete-bars{position:relative;z-index:1;display:flex;gap:6px;align-items:flex-end}.ct-illust-compete-bars span{width:14px;border-radius:3px 3px 0 0;background:var(--qb-purple-soft)}.ct-illust-compete-bars span:nth-child(1){height:24px}.ct-illust-compete-bars span:nth-child(2){height:40px;background:var(--qb-purple-light)}.ct-illust-compete-bars span:nth-child(3){height:32px}.ct-illust-compete-bars span:nth-child(4){height:48px;background:var(--qb-purple)}.ct-card-actions{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:20px;opacity:0;transform:translateY(8px);transition:all .25s}.ct-card:hover .ct-card-actions{opacity:1;transform:translateY(0)}.ct-btn-deploy{width:100%;padding:12px 0;background:var(--qb-purple);color:#fff;border:none;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px #9545804d;letter-spacing:2px;font-family:inherit}.ct-btn-deploy:hover{background:var(--qb-purple-deep);box-shadow:0 6px 20px #95458066}.ct-link-tutorial{font-size:13px;color:var(--qb-text-muted);cursor:pointer;transition:color .2s;background:none;border:none;font-family:inherit}.ct-link-tutorial:hover{color:var(--qb-purple)}.back-to-top-btn{position:fixed;right:32px;bottom:80px;z-index:999;width:48px;height:48px;border-radius:50%;box-shadow:0 4px 12px #95458033;transition:all .3s;animation:qbFadeInUp .3s ease-out;display:flex;align-items:center;justify-content:center;padding:0;background:var(--qb-purple);border:none;cursor:pointer}.back-to-top-btn svg{width:20px;height:20px;fill:#fff}.back-to-top-btn:hover{transform:translateY(-4px);box-shadow:0 6px 16px #9545804d;background:var(--qb-purple-deep)}.qb-pagination-wrap{padding:24px 28px 80px}@media (max-width: 768px){.filter-row{flex-direction:column}.filter-label{margin-bottom:8px}.province-grid{grid-template-columns:repeat(4,1fr)}.deploy-bar{left:0}.back-to-top-btn{right:16px;bottom:80px;width:40px;height:40px}}.question-display{width:100%}.question-display.compact{font-size:14px}.question-display-header{display:flex;align-items:center}.question-index{display:inline-flex;justify-content:center;align-items:center;width:24px;height:24px;border-radius:4px;background:#1890ff;color:#fff;font-size:12px;font-weight:500;margin-right:8px}.question-display .content-text{word-break:break-word}.question-display .content-text img,.question-display .answer-content img,.question-display .option-content img{max-width:100%;height:auto;display:block;margin:8px 0}.question-display .content-text img{max-width:min(100%,800px)}.question-display .answer-content img{max-width:min(100%,600px)}.question-display .option-content img{max-width:min(100%,400px)}.question-display .question-options{display:grid;gap:8px;margin-bottom:12px}.question-display .option-item{display:flex;align-items:flex-start;background:#f5f5f5;border-radius:6px;transition:all .3s}.question-display .option-item.correct{background:#e6f7e6;border:1px solid #52c41a}.question-display .option-label{font-weight:500;margin-right:8px;color:#1890ff;flex-shrink:0}.question-display .option-content{flex:1}.question-display .answer-section{background:#fafafa;padding:12px;border-radius:8px}.question-display .answer-item{margin-bottom:8px}.question-display .answer-item:last-child{margin-bottom:0}.question-display .answer-label{display:block;margin-bottom:4px;color:#1890ff}.question-display .answer-content{color:#333;line-height:1.6}.question-display-header .ant-tag[color=purple],.question-display-header .ant-tag[style*=purple]{max-width:none!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important}.paper-detail-layout{min-height:100vh;background:#f0f2f5}.paper-detail-content{padding:24px;max-width:1200px;margin:0 auto}.paper-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.paper-info-card,.paper-questions-card{background:#fff}.paper-questions-list{display:flex;flex-direction:column;gap:16px}.paper-question-item{padding:20px;border:1px solid #e8e8e8;border-radius:8px;background:#fff;transition:all .3s;flex-direction:column}.paper-question-item:hover{box-shadow:0 2px 8px #0000001a}.question-header{display:flex;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:8px}.question-number{font-size:18px;font-weight:700;color:#1890ff;margin-right:8px}.question-content{margin-bottom:16px;font-size:15px;line-height:1.8;color:#333;word-break:break-word}.question-content img{max-width:100%;height:auto;display:block;margin:8px 0}.question-options{display:flex;flex-direction:row;gap:20px;margin-top:16px;margin-bottom:12px;justify-content:flex-start;align-items:flex-start}.question-option{display:flex;flex-direction:column;align-items:center;flex:1;min-width:0;max-width:25%}.option-label{font-weight:500;margin-bottom:8px;color:#333;font-size:15px;text-align:center}.option-content{width:100%;line-height:1.6;color:#333;word-break:break-word;text-align:center}.option-content img{max-width:100%;height:auto;display:block;margin:0 auto}.question-expand{display:flex;justify-content:space-between;align-items:center;padding-top:12px;margin-top:12px;border-top:1px dashed #e8e8e8;gap:8px}.question-expand .ant-btn{display:inline-flex;align-items:center;height:auto;padding:0;line-height:1.5}.question-answer{padding-top:0}.answer-section{background:#fafafa;padding:16px;border-radius:8px;margin-top:12px}.answer-item{margin-bottom:16px}.answer-item:last-child{margin-bottom:0}.answer-label{display:block;margin-bottom:8px;color:#1890ff;font-size:14px}.answer-content{color:#333;line-height:1.8;word-break:break-word}.answer-content img{max-width:100%;height:auto;display:block;margin:8px 0}.papers-list{display:flex;flex-direction:column;gap:16px}.paper-item-card{background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:16px;transition:all .3s;cursor:pointer}.paper-item-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#a64791}.paper-item-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.paper-type-tag{flex-shrink:0;margin:0;padding:4px 8px;font-size:12px;border-radius:4px}.paper-item-title{flex:1;font-size:16px;font-weight:500;color:#333;line-height:1.5;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.paper-item-meta{margin-bottom:12px;color:#666;font-size:14px}.paper-item-stats{margin-bottom:12px;color:#999;font-size:13px}.paper-item-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f0f0f0}.paper-update-time{color:#999;font-size:13px}.loading-container{display:flex;justify-content:center;align-items:center;min-height:300px}:root{--cw-purple: #954580;--cw-purple-deep: #7A3368;--cw-purple-dark: #5E2550;--cw-purple-light: #B06A9A;--cw-purple-pale: #F8F0F6;--cw-purple-soft: #F0E4ED;--cw-purple-muted: #A8899E;--cw-red: #E8373E;--cw-red-light: #FDEAEA;--cw-green: #5CB531;--cw-green-light: #EEF8E6;--cw-yellow: #F9C41A;--cw-yellow-light: #FFF8E0;--cw-blue: #00A3E4;--cw-blue-deep: #0086BE;--cw-blue-light: #E8F6FF;--cw-surface: #FFFFFF;--cw-text-primary: #1E1533;--cw-text-secondary: #6B5B7B;--cw-text-muted: #9B8DAB;--cw-radius-sm: 10px;--cw-radius-md: 14px;--cw-radius-lg: 20px;--cw-shadow-soft: 0 2px 12px rgba(149,69,128,.06);--cw-shadow-card: 0 4px 20px rgba(149,69,128,.08);--cw-shadow-hover: 0 8px 32px rgba(149,69,128,.14);--cw-border-light: #F0EAF5}.cw-layout{height:calc(100vh - 72px);display:flex;overflow:hidden;background:#f4f0fa}.cw-sidebar{width:260px;flex-shrink:0;background:var(--cw-surface);border-right:1px solid var(--cw-border-light);display:flex;flex-direction:column}.cw-sidebar-tabs{display:flex;border-bottom:1px solid var(--cw-border-light)}.cw-sidebar-tab{flex:1;text-align:center;padding:16px 0;font-size:15px;color:var(--cw-text-muted);cursor:pointer;transition:all .2s;font-weight:400;position:relative;-webkit-user-select:none;user-select:none;background:none;border:none;font-family:inherit}.cw-sidebar-tab:hover{color:var(--cw-text-secondary)}.cw-sidebar-tab.active{color:var(--cw-text-primary);font-weight:600}.cw-sidebar-tab.active:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:40px;height:3px;background:var(--cw-purple);border-radius:2px}.cw-sidebar-menu{flex:1;padding:16px 12px;overflow-y:auto}.cw-menu-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;cursor:pointer;transition:all .2s;font-size:15px;color:var(--cw-text-primary);font-weight:400;-webkit-user-select:none;user-select:none}.cw-menu-item:hover{background:var(--cw-purple-pale)}.cw-menu-item.active{background:linear-gradient(135deg,var(--cw-purple) 0%,var(--cw-purple-light) 100%);color:#fff;font-weight:600;box-shadow:0 4px 16px #95458040}.cw-menu-chevron{width:18px!important;height:18px!important;margin-left:auto;fill:currentColor;transition:transform .2s;transform:rotate(-90deg)}.cw-menu-chevron.open{transform:rotate(0)}.cw-folder-subs{padding:4px 0 4px 52px;display:flex;flex-direction:column;gap:2px}.cw-folder-sub-item{padding:8px 14px;border-radius:8px;font-size:14px;color:var(--cw-text-secondary);cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.cw-folder-sub-item:hover{background:var(--cw-purple-pale);color:var(--cw-purple)}.cw-folder-sub-item.active{background:linear-gradient(135deg,var(--cw-purple) 0%,var(--cw-purple-light) 100%);color:#fff;font-weight:600;border-radius:20px;box-shadow:0 4px 12px #95458040}.cw-resource-view{display:flex;flex-direction:column;height:100%;padding:0 28px 24px}.cw-resource-topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 0 16px;border-bottom:1px solid var(--cw-border-light);margin-bottom:0}.cw-resource-actions{display:flex;align-items:center;gap:12px}.cw-resource-search{display:flex;align-items:center;gap:8px;background:#f5f5f7;border-radius:20px;padding:6px 14px}.cw-resource-search svg{width:16px;height:16px;fill:#999;flex-shrink:0}.cw-resource-search input{border:none;background:transparent;outline:none;font-size:14px;color:var(--cw-text-primary);width:160px}.cw-resource-search input::placeholder{color:#aaa}.cw-btn-resource-upload{padding:8px 22px;background:linear-gradient(135deg,var(--cw-purple) 0%,var(--cw-purple-light) 100%);color:#fff;border:none;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s;white-space:nowrap;box-shadow:0 4px 12px #95458040}.cw-btn-resource-upload:hover{opacity:.88;background:linear-gradient(135deg,var(--cw-purple) 0%,var(--cw-purple-light) 100%)}.cw-resource-table{width:100%;border-collapse:collapse;margin-top:0}.cw-resource-table thead tr{border-bottom:1px solid var(--cw-border-light)}.cw-resource-table th{padding:12px 16px;text-align:left;font-size:13px;color:var(--cw-text-muted);font-weight:500}.cw-resource-table td{padding:12px 16px;font-size:14px;color:var(--cw-text-primary);border-bottom:1px solid var(--cw-border-light)}.cw-resource-table tbody tr:hover{background:var(--cw-purple-pale)}.rf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center}.rf-modal{background:#fff;border-radius:16px;width:480px;overflow:hidden;box-shadow:0 16px 60px #0000002e}.rf-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;font-size:16px;font-weight:600;color:var(--cw-text-primary);border-bottom:1px solid var(--cw-border-light)}.rf-modal-close{background:none;border:none;font-size:22px;color:#aaa;cursor:pointer;line-height:1;padding:0}.rf-modal-close:hover{color:#333}.rf-modal-body{padding:32px 24px}.rf-drop-area{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 24px;border:2px dashed #d0dae8;border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s}.rf-drop-area:hover{border-color:#0099e5;background:#f0f9ff}.rf-drop-text{font-size:15px;color:var(--cw-text-secondary);margin:0}.rf-drop-hint{font-size:13px;color:var(--cw-text-muted);margin:0}.rf-uploading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px 0}.rf-file-name{font-size:14px;color:var(--cw-text-secondary);word-break:break-all;text-align:center}.rf-progress-track{width:100%;height:8px;background:#eee;border-radius:4px;overflow:hidden}.rf-progress-fill{height:100%;background:#0099e5;border-radius:4px;transition:width .3s}.rf-progress-pct{font-size:13px;color:#0099e5;font-weight:600}.cw-menu-item svg{width:22px;height:22px;fill:currentColor;flex-shrink:0}.cw-sidebar-footer{margin-top:auto;padding:16px 20px 20px;border-top:1px solid var(--cw-border-light)}.cw-storage-bar-track{width:100%;height:6px;background:var(--cw-purple-pale);border-radius:3px;overflow:hidden;margin-bottom:8px}.cw-storage-bar-fill{height:100%;background:linear-gradient(90deg,var(--cw-purple-light),var(--cw-purple));border-radius:3px;transition:width .4s ease}.cw-storage-text{font-size:12px;color:var(--cw-text-muted)}.cw-content{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#f4f0fa}.cw-content-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px 0}.cw-content-title{font-size:22px;font-weight:700;color:var(--cw-text-primary)}.cw-breadcrumb{display:flex;align-items:center;gap:4px;padding:8px 32px 0;font-size:13px;color:var(--cw-text-muted)}.cw-breadcrumb-item{display:inline-flex;align-items:center}.cw-breadcrumb-sep{margin-right:4px}.cw-breadcrumb-link{border:none;background:transparent;color:var(--cw-text-secondary);font-size:13px;cursor:pointer;padding:0}.cw-breadcrumb-link:hover{color:var(--cw-purple)}.cw-breadcrumb-back{margin-left:10px;border:1px solid var(--cw-border-light);background:#fff;color:var(--cw-text-secondary);font-size:12px;border-radius:999px;padding:2px 10px;cursor:pointer}.cw-breadcrumb-back:hover{color:var(--cw-purple);border-color:var(--cw-purple-light)}.cw-toolbar{display:flex;align-items:center;gap:12px;padding:16px 32px}.cw-btn-upload{display:flex;align-items:center;gap:8px;padding:10px 24px;background:var(--cw-purple);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s;box-shadow:0 2px 10px #95458040}.cw-btn-upload:hover{background:var(--cw-purple-deep);box-shadow:0 4px 18px #95458059;transform:translateY(-1px)}.cw-btn-upload svg{width:18px;height:18px;fill:#fff}.cw-btn-folder{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--cw-surface);color:var(--cw-text-secondary);border:1px solid var(--cw-border-light);border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .2s}.cw-btn-folder:hover{border-color:var(--cw-purple-light);color:var(--cw-purple)}.cw-btn-folder svg{width:16px;height:16px;fill:currentColor}.cw-btn-approval{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--cw-surface);color:var(--cw-text-secondary);border:1px solid var(--cw-border-light);border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .2s;position:relative}.cw-btn-approval:hover{border-color:var(--cw-purple-light);color:var(--cw-purple)}.cw-btn-approval svg{width:16px;height:16px;fill:currentColor}.cw-btn-approval .cw-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;background:var(--cw-red);color:#fff;font-size:11px;font-weight:700;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 5px}.cw-sort-select{padding:9px 32px 9px 14px;border:1px solid var(--cw-border-light);border-radius:10px;font-size:13px;font-family:inherit;color:var(--cw-text-secondary);outline:none;background:var(--cw-surface);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%239B8DAB'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.cw-sort-select:focus{border-color:var(--cw-purple-light)}.cw-toolbar-search{display:flex;align-items:center;margin-left:auto;background:var(--cw-surface);border:1px solid var(--cw-border-light);border-radius:10px;overflow:hidden;transition:border-color .2s;width:280px}.cw-toolbar-search:focus-within{border-color:var(--cw-purple-light)}.cw-toolbar-search input{flex:1;border:none;padding:10px 14px;font-size:14px;font-family:inherit;color:var(--cw-text-primary);outline:none;background:transparent}.cw-toolbar-search input::placeholder{color:var(--cw-text-muted)}.cw-toolbar-search-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:none;border:none;transition:background .2s}.cw-toolbar-search-btn:hover{background:var(--cw-purple-pale)}.cw-toolbar-search-btn svg{width:16px;height:16px;fill:var(--cw-text-muted)}.cw-toolbar .ant-cascader{min-width:200px}.cw-toolbar .ant-select-selector{border-radius:10px!important;border-color:var(--cw-border-light)!important;height:40px!important;padding:4px 12px!important}.cw-toolbar .ant-select-selector:hover,.cw-toolbar .ant-select-focused .ant-select-selector{border-color:var(--cw-purple-light)!important}.cw-table-wrap{flex:1;overflow-y:auto;padding:0 32px 88px;scrollbar-width:thin;scrollbar-color:var(--cw-purple-soft) transparent}.cw-table-wrap::-webkit-scrollbar{width:6px}.cw-table-wrap::-webkit-scrollbar-thumb{background:var(--cw-purple-soft);border-radius:10px}.cw-file-table{width:100%;border-collapse:collapse;background:var(--cw-surface);border-radius:var(--cw-radius-md);overflow:hidden;box-shadow:var(--cw-shadow-soft)}.cw-file-table thead th{padding:14px 20px;font-size:13px;font-weight:600;color:var(--cw-text-muted);text-align:left;background:var(--cw-purple-pale);border-bottom:1px solid var(--cw-border-light);white-space:nowrap;letter-spacing:.5px}.cw-file-table thead th:first-child{padding-left:24px}.cw-file-table tbody tr{border-bottom:1px solid #FAF5FF;transition:background .15s}.cw-file-table tbody tr:last-child{border-bottom:none}.cw-file-table tbody tr:hover{background:#fdfaff}.cw-file-table tbody td{padding:16px 20px;font-size:14px;color:var(--cw-text-secondary);vertical-align:middle}.cw-file-table input[type=checkbox]{width:14px;height:14px;cursor:pointer}.cw-file-table tbody td:first-child{padding-left:24px}.cw-file-name-cell{display:flex;align-items:center;gap:14px}.cw-file-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;font-weight:700;color:#fff;letter-spacing:.5px;text-transform:uppercase}.cw-file-icon.ppt{background:linear-gradient(135deg,#e8573e,#d04430)}.cw-file-icon.pdf{background:linear-gradient(135deg,#e8373e,#c42e34)}.cw-file-icon.doc{background:linear-gradient(135deg,#2b7cd3,#1e5fa0)}.cw-file-icon.xls{background:linear-gradient(135deg,#1d7044,#15573a)}.cw-file-icon.video{background:linear-gradient(135deg,var(--cw-purple),var(--cw-purple-deep))}.cw-file-icon.image{background:linear-gradient(135deg,#5cb531,#4a9628)}.cw-file-icon.audio{background:linear-gradient(135deg,#f59e0b,#d97706)}.cw-file-icon.other{background:linear-gradient(135deg,#9b8dab,#7a6b8a)}.cw-file-icon.folder{background:linear-gradient(135deg,#e2a93b,#ce8b11)}.cw-file-icon svg{width:20px;height:20px;fill:#fff}.cw-file-name-info{min-width:0}.cw-file-name-text{font-size:14px;color:var(--cw-text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cw-file-name-text.folder{cursor:pointer}.cw-file-name-text.folder:hover{color:var(--cw-purple)}.cw-file-note{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--cw-purple-muted);margin-top:2px}.cw-tag{display:inline-block;padding:2px 10px;border-radius:4px;font-size:12px;font-weight:500}.cw-tag.blue{background:var(--cw-blue-light);color:var(--cw-blue)}.cw-tag.green{background:var(--cw-green-light);color:var(--cw-green)}.cw-tag.red{background:var(--cw-red-light);color:var(--cw-red)}.cw-tag.orange{background:#fff0e0;color:#e08a00}.cw-tag.purple{background:var(--cw-purple-pale);color:var(--cw-purple)}.cw-file-actions{display:flex;align-items:center;gap:4px;opacity:1}.cw-act-btn{padding:6px 12px;font-size:13px;border:none;border-radius:6px;cursor:pointer;font-family:inherit;transition:all .15s;background:transparent;white-space:nowrap}.cw-act-btn.primary{color:var(--cw-purple)}.cw-act-btn.primary:hover{background:var(--cw-purple-pale)}.cw-act-btn.info{color:var(--cw-blue)}.cw-act-btn.info:hover{background:var(--cw-blue-light)}.cw-act-btn.del{color:var(--cw-text-muted)}.cw-act-btn.del:hover{color:var(--cw-red);background:var(--cw-red-light)}.cw-act-btn.share{color:#059669}.cw-act-btn.share:hover{background:#d1fae5}.cw-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--cw-text-muted)}.cw-empty svg{width:80px;height:80px;fill:var(--cw-purple-soft);margin-bottom:20px}.cw-empty p{font-size:15px;margin-bottom:8px}.cw-empty small{font-size:13px;color:var(--cw-text-muted)}.cw-loading{display:flex;justify-content:center;align-items:center;padding:80px 20px}.cw-pagination-wrap{padding:20px 32px;display:flex;justify-content:center}.cw-bulk-bar{margin:0 32px 20px;padding:12px 16px;background:#fff;border:1px solid var(--cw-border-light);border-radius:12px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--cw-shadow-soft)}.cw-bulk-count{color:#4a89eb;font-weight:700;margin:0 2px}.deploy-bar{position:fixed;bottom:0;right:0;left:260px;height:56px;background:#fff;border-top:1px solid var(--cw-border-light);display:flex;align-items:center;justify-content:flex-end;padding:0 32px;gap:20px;z-index:100;box-shadow:0 -4px 16px #9545800f}.deploy-info{font-size:14px;color:var(--cw-text-secondary)}.deploy-info strong{color:#4a89eb;font-weight:700;font-size:16px}.deploy-btn-wrap{position:relative}.deploy-btn{display:flex;align-items:center;gap:8px;padding:10px 32px;background:var(--cw-purple);color:#fff;border:none;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 16px #9545804d;letter-spacing:2px;font-family:inherit}.deploy-btn:hover{background:var(--cw-purple-deep);box-shadow:0 6px 20px #95458066}.deploy-btn svg{width:16px;height:16px;fill:#fff;transition:transform .2s}.deploy-btn.open svg{transform:rotate(180deg)}.deploy-panel{display:none;position:absolute;bottom:calc(100% + 12px);right:0;width:280px;background:#fff;border-radius:14px;box-shadow:0 8px 40px #0000001f;overflow:hidden;z-index:200}.deploy-panel.show{display:block}.deploy-panel-title{padding:16px 20px 12px;font-size:15px;font-weight:600;color:var(--cw-text-primary);border-bottom:1px solid var(--cw-border-light);display:flex;align-items:center;justify-content:space-between}.deploy-panel-close{width:16px;height:16px;fill:var(--cw-text-muted);cursor:pointer;transition:fill .2s}.deploy-panel-close:hover{fill:var(--cw-text-primary)}.deploy-type-list{padding:8px 0}.deploy-type-item{display:flex;align-items:center;gap:14px;padding:14px 20px;cursor:pointer;transition:background .15s;font-size:15px;color:var(--cw-text-primary);font-weight:500;border:none;background:none;width:100%;text-align:left;font-family:inherit}.deploy-type-item:hover{background:var(--cw-blue-light)}.deploy-type-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.deploy-type-icon svg{width:22px;height:22px}.deploy-type-icon.homework{background:#e8f6ff}.deploy-type-icon.homework svg{fill:var(--cw-blue)}.deploy-type-icon.classwork{background:#eef8e6}.deploy-type-icon.classwork svg{fill:var(--cw-green)}.deploy-type-icon.habit{background:#fff8e0}.deploy-type-icon.habit svg{fill:var(--cw-yellow)}@keyframes cwFadeIn{0%{opacity:0}to{opacity:1}}@keyframes cwSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.cw-sidebar{width:200px}.cw-toolbar{padding:12px 16px;flex-wrap:wrap}.cw-toolbar-search{width:100%;margin-left:0}.cw-table-wrap{padding:0 16px 16px}.deploy-bar{left:0}}.student-grouping-modal .ant-modal-content{border-radius:0;padding:0;height:100vh;overflow:hidden}.student-grouping-modal .ant-modal-body{padding:0;height:100%;overflow:hidden}.student-grouping-modal .ant-modal-header,.student-grouping-modal .ant-modal-close{display:none}.sg-toolbar{height:52px;background:linear-gradient(135deg,#954580,#7a3368);display:flex;align-items:center;padding:0 24px;flex-shrink:0;box-shadow:0 2px 12px #9545804d;z-index:10}.sg-toolbar-title{font-size:16px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px}.sg-toolbar-title svg{width:20px;height:20px;fill:#fff}.sg-toolbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.sg-toolbar-btn{display:flex;align-items:center;gap:5px;padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;border:none;transition:all .2s;white-space:nowrap}.sg-toolbar-btn svg{width:14px;height:14px;fill:currentColor}.sg-toolbar-btn.secondary{background:#ffffff26;color:#fff}.sg-toolbar-btn.secondary:hover{background:#ffffff40}.sg-toolbar-btn.danger{background:#e8373e33;color:#ffa1a5}.sg-toolbar-btn.danger:hover{background:#e8373e59}.sg-toolbar-btn.primary{background:#fff;color:#954580;box-shadow:0 2px 8px #0000001a}.sg-toolbar-btn.primary:hover{background:#f8f0f6}.sg-toolbar-btn.close{background:#ffffff1a;color:#fffc;padding:6px 10px;border-radius:8px;margin-left:8px}.sg-toolbar-btn.close:hover{background:#fff3;color:#fff}.sg-body{flex:1;display:flex;overflow:hidden;background:#f4f0fa;gap:12px;padding:12px}.student-grouping-wrapper{display:flex;flex-direction:column;height:100%}.sg-student-panel{width:300px;min-width:300px;flex-shrink:0;background:#fff;border:1px solid #F0EAF5;border-radius:14px;box-shadow:0 4px 20px #95458014;display:flex;flex-direction:column;overflow:hidden}.sg-panel-header{padding:14px 14px 0;flex-shrink:0}.sg-panel-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:#954580;margin-bottom:10px}.sg-panel-title svg{width:18px;height:18px;fill:#954580}.sg-count-badge{font-size:11px;font-weight:600;background:#954580;color:#fff;padding:2px 8px;border-radius:20px;margin-left:auto}.sg-search-wrap{position:relative;margin-bottom:8px}.sg-search-input{width:100%;padding:7px 12px 7px 32px;border:1px solid #F0EAF5;border-radius:6px;font-size:12px;font-family:inherit;color:#1e1533;outline:none;transition:border-color .2s}.sg-search-input::placeholder{color:#9b8dab}.sg-search-input:focus{border-color:#954580}.sg-search-wrap svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:14px;height:14px;fill:#9b8dab}.sg-stats-bar{display:flex;gap:6px;padding:0 14px 8px;flex-wrap:wrap;flex-shrink:0}.sg-stat-chip{display:flex;align-items:center;gap:4px;font-size:11px;color:#6b5b7b;background:#f8f0f6;padding:3px 8px;border-radius:20px}.sg-stat-chip strong{color:#954580;font-weight:700}.sg-student-list{flex:1;overflow-y:auto;padding:0 10px 12px;scrollbar-width:none}.sg-student-list::-webkit-scrollbar{display:none}.sg-student-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;transition:all .2s;margin-bottom:1px}.sg-student-item:hover{background:#f8f0f6;box-shadow:0 2px 12px #9545800f}.sg-student-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.sg-student-name{font-size:13px;font-weight:500;color:#1e1533;flex:1}.sg-student-add-btn{width:22px;height:22px;border-radius:50%;border:none;background:#954580;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all .2s;flex-shrink:0}.sg-student-add-btn svg{width:12px;height:12px;fill:#fff}.sg-student-item:hover .sg-student-add-btn{opacity:1}.sg-student-add-btn:hover{background:#7a3368;transform:scale(1.1)}.sg-quick-popup{min-width:160px}.sg-quick-popup .sg-qg-title{font-size:11px;color:#9b8dab;padding:4px 10px 6px;font-weight:500}.sg-quick-opt{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;cursor:pointer;font-size:13px;color:#1e1533;transition:background .15s}.sg-quick-opt:hover{background:#f8f0f6}.sg-quick-opt .sg-qg-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sg-quick-opt .sg-qg-count{font-size:11px;color:#9b8dab;margin-left:auto}.sg-group-panel{flex:1;min-width:0;overflow-y:auto;scrollbar-width:none}.sg-group-panel::-webkit-scrollbar{display:none}.sg-group-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-content:start}.sg-group-card{background:#fff;border-radius:10px;box-shadow:0 4px 20px #95458014;overflow:hidden;transition:all .3s;display:flex;flex-direction:column;animation:sgFadeIn .4s ease both}.sg-group-card:nth-child(1){animation-delay:.05s}.sg-group-card:nth-child(2){animation-delay:.1s}.sg-group-card:nth-child(3){animation-delay:.15s}.sg-group-card:nth-child(4){animation-delay:.2s}.sg-group-card:nth-child(5){animation-delay:.25s}.sg-group-card:nth-child(6){animation-delay:.3s}.sg-group-card:hover{box-shadow:0 8px 32px #95458024}@keyframes sgFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sg-group-card-head{padding:8px 14px;display:flex;align-items:center;justify-content:space-between;color:#fff;font-weight:700;font-size:13px;flex-shrink:0}.sg-group-card-head .sg-group-num{font-size:11px;font-weight:500;opacity:.85;background:#fff3;padding:1px 8px;border-radius:10px}.sg-group-card-head .sg-group-del-btn{width:22px;height:22px;border-radius:6px;border:none;background:#ffffff26;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s;opacity:0;margin-left:8px}.sg-group-card:hover .sg-group-del-btn{opacity:1}.sg-group-card-head .sg-group-del-btn:hover{background:#ffffff4d}.sg-group-card-head .sg-group-del-btn svg{width:12px;height:12px;fill:#fff}.sg-group-card-body{flex:1;padding:4px 8px 6px;display:flex;flex-direction:column;gap:0}.sg-group-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9b8dab;font-size:12px;gap:4px;padding:12px;min-height:60px}.sg-group-empty svg{width:24px;height:24px;fill:#f0e4ed}.sg-gs-item{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;transition:all .15s;cursor:default;margin-bottom:1px}.sg-gs-item:hover{background:#f8f0f6}.sg-gs-item .sg-gs-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;flex-shrink:0}.sg-gs-item .sg-gs-name{font-size:12px;font-weight:500;color:#1e1533;flex:1}.sg-gs-item .sg-gs-remove-btn{width:20px;height:20px;border-radius:5px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;border:none;background:transparent;opacity:0;color:#e8373e}.sg-gs-item .sg-gs-remove-btn svg{width:12px;height:12px;fill:#e8373e}.sg-gs-item:hover .sg-gs-remove-btn{opacity:1}.sg-gs-item .sg-gs-remove-btn:hover{background:#fdeaea}.sg-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#9b8dab}.sg-empty-state svg{width:64px;height:64px;fill:#f0e4ed;margin-bottom:16px}.sg-empty-state span{font-size:14px}.sg-random-tip{color:#9b8dab;font-size:13px;margin-top:8px}@media (max-width: 1200px){.sg-group-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.sg-body{flex-direction:column;padding:8px}.sg-student-panel{width:100%;min-width:unset;max-height:40vh}.sg-group-grid{grid-template-columns:1fr}}.hc-wrapper{display:flex;height:calc(100vh - 72px);min-height:0;background:#f4f0fa;font-family:Noto Sans SC,DM Sans,sans-serif}.hc-content{flex:1;overflow-y:auto;padding:28px 36px;background:#f4f0fa;scrollbar-width:thin;scrollbar-color:var(--qb-purple-soft) transparent}.hc-content::-webkit-scrollbar{width:6px}.hc-content::-webkit-scrollbar-thumb{background:var(--qb-purple-soft);border-radius:10px}.hc-empty-hint{text-align:center;padding:40px 20px;color:var(--qb-text-muted);font-size:14px}.hc-empty-hint svg{width:64px;height:64px;fill:var(--qb-purple-soft);margin-bottom:12px;display:block;margin-left:auto;margin-right:auto}@keyframes hcFadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes hcFadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.hc-sidebar{width:260px;flex-shrink:0;background:var(--qb-surface);border-right:1px solid var(--qb-border-light);display:flex;flex-direction:column;padding:16px 0;overflow-y:auto}.hc-side-item{display:flex;align-items:center;justify-content:space-between;padding:13px 20px 13px 24px;font-size:15px;color:var(--qb-text-secondary);cursor:pointer;transition:all .2s;border-left:3px solid transparent}.hc-side-item:hover{background:var(--qb-purple-pale);color:var(--qb-text-primary)}.hc-side-item.active{background:var(--qb-purple-pale);color:var(--qb-purple);font-weight:700;border-left-color:var(--qb-purple)}.hc-side-item .side-icon{width:20px;height:20px;fill:currentColor;margin-right:10px;flex-shrink:0}.hc-side-item .badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;font-size:12px;font-weight:600;background:var(--qb-red);color:#fff}.hc-side-divider{height:1px;background:var(--qb-border-light);margin:10px 20px}.hc-side-section-label{padding:10px 24px 8px;font-size:12px;color:var(--qb-text-muted);font-weight:600;letter-spacing:1px}.hc-class-selector{margin:0 16px;position:relative}.hc-class-select-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:#fdfaff;border:1px solid var(--qb-border-light);border-radius:10px;font-size:14px;font-family:inherit;color:var(--qb-text-primary);cursor:pointer;transition:all .2s;font-weight:500}.hc-class-select-btn:hover{border-color:var(--qb-purple-light)}.hc-class-select-btn.open{border-color:var(--qb-purple);box-shadow:0 0 0 3px #9545801a}.hc-class-select-btn svg{width:16px;height:16px;fill:var(--qb-text-muted);transition:transform .2s;flex-shrink:0}.hc-class-select-btn.open svg{transform:rotate(180deg)}.hc-selected-dot{width:8px;height:8px;border-radius:50%;background:var(--qb-purple);margin-right:8px;flex-shrink:0}.hc-class-dropdown{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--qb-border-light);border-radius:10px;box-shadow:0 8px 28px #0000001a;z-index:100;overflow:hidden;animation:hcFadeInDown .2s}.hc-class-dropdown.show{display:block}.hc-class-option{padding:11px 16px;font-size:14px;color:var(--qb-text-primary);cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:8px}.hc-class-option:hover{background:var(--qb-purple-pale)}.hc-class-option.active{color:var(--qb-purple);font-weight:600;background:var(--qb-purple-pale)}.hc-class-option .check-icon{width:16px;height:16px;fill:var(--qb-purple);margin-left:auto;display:none}.hc-class-option.active .check-icon{display:block}.hc-content-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.hc-content-title{font-size:24px;font-weight:800;color:var(--qb-text-primary)}.hc-header-actions{display:flex;align-items:center;gap:10px}.hc-icon-btn{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--qb-border-light);background:var(--qb-surface);cursor:pointer;transition:all .2s}.hc-icon-btn:hover{border-color:var(--qb-purple-light);background:var(--qb-purple-pale)}.hc-icon-btn svg{width:18px;height:18px;fill:var(--qb-text-muted)}.hc-icon-btn:hover svg{fill:var(--qb-purple)}.hc-search-bar{display:none;align-items:center;background:var(--qb-surface);border:1px solid var(--qb-border-light);border-radius:12px;overflow:hidden;margin-bottom:20px;box-shadow:var(--qb-shadow-soft)}.hc-search-bar.show{display:flex}.hc-search-bar input{flex:1;border:none;padding:12px 16px;font-size:14px;font-family:inherit;color:var(--qb-text-primary);outline:none;background:transparent}.hc-search-bar input::placeholder{color:var(--qb-text-muted)}.hc-search-bar button{padding:12px 20px;background:none;border:none;cursor:pointer}.hc-search-bar button svg{width:18px;height:18px;fill:var(--qb-text-muted)}.hc-filter-tabs{display:flex;align-items:center;gap:8px;margin-bottom:24px;flex-wrap:wrap}.hc-filter-tab{padding:7px 20px;font-size:13px;color:var(--qb-text-secondary);border-radius:20px;cursor:pointer;transition:all .2s;border:1px solid var(--qb-border-light);background:var(--qb-surface);font-family:inherit;font-weight:500}.hc-filter-tab:hover{border-color:var(--qb-purple-light);color:var(--qb-purple)}.hc-filter-tab.active{background:var(--qb-purple);color:#fff;border-color:var(--qb-purple);box-shadow:0 2px 8px #95458040}.hc-group-filter-row{display:flex;align-items:center;gap:8px;margin-bottom:20px;flex-wrap:wrap}.hc-group-filter-label{font-size:13px;color:var(--qb-text-muted, #9B8DAB);font-weight:600;margin-right:4px;white-space:nowrap}.hc-group-filter-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;font-size:13px;font-weight:500;color:var(--qb-text-secondary, #6B5B7B);border-radius:16px;cursor:pointer;transition:all .2s;border:1px solid var(--qb-border-light, #F0EAF5);background:var(--qb-surface, #fff);font-family:inherit}.hc-group-filter-pill:hover{border-color:var(--qb-purple-light, #B06A9A)}.hc-gdot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.hc-group-filter-pill.active{color:#fff;border-color:transparent;box-shadow:0 2px 8px #00000026}.hc-group-filter-pill.active .hc-gdot{background:#fffc!important}.hc-section{margin-bottom:32px;animation:hcFadeInUp .4s ease}.hc-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.hc-section-title{font-size:17px;font-weight:700;color:var(--qb-text-primary);display:flex;align-items:center;gap:10px}.hc-section-title .count{font-size:13px;font-weight:600;color:var(--qb-purple);background:var(--qb-purple-pale);padding:2px 10px;border-radius:10px}.hc-section-sort{padding:6px 28px 6px 12px;font-size:12px;font-family:inherit;color:var(--qb-text-muted);border:1px solid var(--qb-border-light);border-radius:8px;background:var(--qb-surface);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='%239B8DAB'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.hc-section-sort:focus{border-color:var(--qb-purple-light)}.hc-expand-btn{background:none;border:none;font-size:13px;color:var(--qb-purple);cursor:pointer;padding:0;font-family:inherit}.hc-expand-btn:hover{opacity:.75}.hc-date-group-header{margin-bottom:14px}.hc-date-today{display:inline-block;background:#1677ff;color:#fff;font-size:13px;font-weight:700;padding:3px 14px;border-radius:6px}.hc-date-past{font-size:16px;font-weight:700;color:var(--qb-text-primary)}.hc-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.hc-card{background:var(--qb-surface);border-radius:var(--qb-radius-md);box-shadow:var(--qb-shadow-soft);padding:20px 22px;cursor:pointer;transition:all .25s;border:1px solid transparent;position:relative;overflow:hidden}.hc-card:hover{box-shadow:var(--qb-shadow-hover);border-color:var(--qb-purple-pale);transform:translateY(-2px)}.hc-card-top{display:flex;align-items:center;gap:10px;margin-bottom:14px}.hc-type-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:.5px;flex-shrink:0}.hc-type-badge svg{width:13px;height:13px;fill:currentColor}.hc-type-badge.homework{background:var(--qb-blue-light);color:var(--qb-blue)}.hc-type-badge.classwork{background:#fff3e0;color:#e65100}.hc-type-badge.quiz{background:var(--qb-purple-pale);color:var(--qb-purple)}.hc-type-badge.preview{background:var(--qb-yellow-light);color:#c59400}.hc-type-badge.habit{background:#f3e8ff;color:#7c3aed}.hc-card-title{font-size:15px;font-weight:600;color:var(--qb-text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hc-card-stats{display:flex;align-items:flex-end;gap:0;margin-bottom:14px}.hc-stat-item{flex:1;padding-right:16px;border-right:1px solid var(--qb-border-light)}.hc-stat-item:last-child{border-right:none;padding-right:0;padding-left:16px}.hc-stat-item:first-child+.hc-stat-item{padding-left:16px}.hc-stat-value{font-size:22px;font-weight:800;color:var(--qb-text-primary);line-height:1.2}.hc-stat-value .denom{font-size:14px;font-weight:400;color:var(--qb-text-muted)}.hc-stat-value.highlight{color:var(--qb-purple)}.hc-stat-value.warn{color:#f08c28}.hc-stat-value.success{color:var(--qb-green)}.hc-stat-label{font-size:12px;color:var(--qb-text-muted);margin-top:2px}.hc-card-footer{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--qb-text-muted);padding-top:12px;border-top:1px solid #FAF5FF}.hc-card-footer .sep{width:1px;height:12px;background:var(--qb-border-light)}.hc-grade-btn{margin-left:auto;padding:5px 14px;background:#2196f3;color:#fff;border:none;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.hc-grade-btn:hover{background:#1976d2}.hc-pending-card{background:var(--qb-surface);border-radius:var(--qb-radius-md);box-shadow:var(--qb-shadow-soft);padding:18px 22px;cursor:pointer;transition:all .25s;border:2px dashed var(--qb-border-light);display:flex;align-items:center;gap:14px;position:relative}.hc-pending-card:hover{border-color:var(--qb-purple-light);background:var(--qb-purple-pale);transform:translateY(-1px)}.hc-pending-card .hc-type-badge{font-size:13px;padding:5px 12px}.hc-pending-card-title{font-size:15px;font-weight:600;color:var(--qb-text-primary);flex:1}.hc-pending-card-arrow{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--qb-purple-pale);transition:all .2s}.hc-pending-card:hover .hc-pending-card-arrow{background:var(--qb-purple)}.hc-pending-card-arrow svg{width:16px;height:16px;fill:var(--qb-purple)}.hc-pending-card:hover .hc-pending-card-arrow svg{fill:#fff}.hc-date-label{font-size:14px;font-weight:600;color:var(--qb-text-muted);margin-bottom:12px;padding-left:2px;display:flex;align-items:center;gap:8px}.hc-date-label:after{content:"";flex:1;height:1px;background:var(--qb-border-light)}.hc-date-group{margin-bottom:24px}.hc-card-more-btn{position:absolute;bottom:10px;right:12px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--qb-text-muted);font-size:18px;font-weight:700;transition:all .2s;z-index:2;letter-spacing:1px}.hc-card-more-btn:hover{background:var(--qb-purple-pale);color:var(--qb-purple)}.hc-pending-card .hc-card-more-btn{bottom:auto;top:50%;transform:translateY(-50%);right:50px}.hc-more-menu{position:fixed;z-index:9000;min-width:170px;background:#fff;border:1px solid var(--qb-border-light);border-radius:10px;box-shadow:0 8px 28px #0000001f;padding:6px 0;animation:hcFadeInDown .15s}.hc-more-menu .menu-item{padding:14px 24px;font-size:15px;font-weight:500;color:var(--qb-text-primary);cursor:pointer;transition:background .15s}.hc-more-menu .menu-item:hover{background:var(--qb-purple-pale);color:var(--qb-purple)}.hc-more-menu .menu-item.danger{color:var(--qb-red)}.hc-more-menu .menu-item.danger:hover{background:#fdeaea;color:var(--qb-red)}.hc-more-menu .menu-divider{height:1px;background:var(--qb-border-light);margin:4px 0}.ehm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:1000;display:flex;align-items:center;justify-content:center}.ehm-modal{background:#fff;border-radius:12px;width:620px;max-width:90vw;display:flex;flex-direction:column;box-shadow:0 8px 40px #0000002e}.ehm-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px 16px;border-bottom:1px solid #f0eaf5;font-size:17px;font-weight:600;color:#1e1533}.ehm-close{background:none;border:none;font-size:22px;color:#999;cursor:pointer;line-height:1;padding:0}.ehm-close:hover{color:#333}.ehm-loading{padding:48px;text-align:center;color:#999;font-size:14px}.ehm-body{padding:8px 28px 20px;display:flex;flex-direction:column;gap:0}.ehm-row{display:flex;align-items:flex-start;padding:18px 0;border-bottom:1px solid #f5f5f5}.ehm-row:last-child{border-bottom:none}.ehm-label{width:100px;min-width:100px;font-size:14px;color:#888;padding-top:9px}.ehm-input{flex:1;border:none;border-bottom:1.5px solid #e8e8e8;background:transparent;font-size:15px;color:#1e1533;padding:8px 4px;outline:none;font-family:inherit}.ehm-input:focus{border-bottom-color:#0099e5}.ehm-textarea{flex:1;border:none;background:#fafafa;border-radius:6px;font-size:14px;color:#1e1533;padding:10px 12px;outline:none;resize:vertical;font-family:inherit;min-height:72px}.ehm-textarea:focus{background:#f5f8ff}.ehm-radio-group{display:flex;flex-direction:column;gap:12px;flex:1;padding-top:6px}.ehm-radio-item{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#1e1533}.ehm-radio-item input[type=radio]{width:16px;height:16px;accent-color:#0099e5;cursor:pointer}.ehm-datetime{border:1.5px solid #d0e8f5;border-radius:6px;padding:6px 10px;font-size:14px;color:#1e1533;outline:none;font-family:inherit;margin-left:24px}.ehm-datetime:focus{border-color:#0099e5}.ehm-class-name{flex:1;font-size:15px;color:#1e1533;padding-top:6px}.ehm-duration-input{display:flex;align-items:center;gap:8px;margin-left:24px;font-size:14px;color:#555}.ehm-number{width:72px;border:1.5px solid #d0e8f5;border-radius:6px;padding:6px 10px;font-size:14px;color:#1e1533;outline:none;font-family:inherit;text-align:center}.ehm-number:focus{border-color:#0099e5}.ehm-footer{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 28px 24px;border-top:1px solid #f0eaf5}.ehm-btn-cancel{padding:9px 36px;border:1.5px solid #d0c0dc;border-radius:24px;background:#fff;font-size:14px;color:#6b5b7b;cursor:pointer;font-family:inherit}.ehm-btn-cancel:hover{border-color:#b0a0c0}.ehm-btn-confirm{padding:9px 36px;border:none;border-radius:24px;background:#0099e5;font-size:14px;font-weight:600;color:#fff;cursor:pointer;font-family:inherit}.ehm-btn-confirm:hover:not(:disabled){background:#007dbe}.ehm-btn-confirm:disabled{opacity:.6;cursor:not-allowed}.ram-class-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.ram-class-item{display:flex;align-items:center;gap:6px;border:1.5px solid #d0e8f5;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:14px;color:#1e1533;transition:border-color .15s}.ram-class-item:has(input:checked){border-color:#0099e5;background:#f0f8ff}.ram-class-item input[type=checkbox]{width:15px;height:15px;accent-color:#0099e5;cursor:pointer}.tr-page{--tr-purple: #954580;--tr-purple-deep: #7A3368;--tr-purple-light: #B06A9A;--tr-purple-pale: #F8F0F6;--tr-purple-soft: #F0E4ED;--tr-red: #E8373E;--tr-green: #5CB531;--tr-blue: #00A3E4;--tr-orange: #F08C28;--tr-surface: #FFFFFF;--tr-text-primary: #1E1533;--tr-text-secondary: #6B5B7B;--tr-text-muted: #9B8DAB;--tr-radius-md: 14px;--tr-shadow-soft: 0 2px 12px rgba(149, 69, 128, .06);--tr-border-light: #F0EAF5;font-family:Noto Sans SC,DM Sans,sans-serif;background:#f4f0fa;min-height:calc(100vh - 72px)}.tr-main-body{display:flex;padding:28px 24px 40px;gap:24px}.tr-main-left{flex:1;min-width:0}.tr-main-right{width:320px;flex-shrink:0}.tr-card{background:#fff;border-radius:var(--tr-radius-md);box-shadow:var(--tr-shadow-soft);margin-bottom:24px}.tr-card-inner{padding:24px 28px}.tr-card-title{font-size:16px;font-weight:800;color:var(--tr-text-primary);margin-bottom:20px}.tr-tab-content{display:block}@media (max-width: 1100px){.tr-main-body{flex-direction:column}.tr-main-right{width:100%}}.tr-sub-nav{background:#fff;border-bottom:1px solid var(--tr-border-light);padding:0 24px;display:flex;align-items:center}.tr-sub-nav-left{display:flex;align-items:center;gap:16px;padding:18px 0 0}.tr-back-link{color:var(--tr-text-muted);text-decoration:none;font-size:20px;margin-right:4px}.tr-sub-nav-title{font-size:28px;font-weight:900;color:var(--tr-text-primary)}.tr-sub-badge{padding:4px 14px;border-radius:6px;font-size:13px;font-weight:700}.tr-sub-badge.quiz{background:var(--tr-purple-pale);color:var(--tr-purple)}.tr-sub-badge.homework{background:#e8f6ff;color:var(--tr-blue)}.tr-sub-badge.classwork{background:#fff3e0;color:var(--tr-orange)}.tr-sub-nav-right{margin-left:auto;font-size:13px;color:var(--tr-text-muted);display:flex;align-items:center;gap:6px;padding-top:18px}.tr-sub-nav-right span{color:var(--tr-purple);font-weight:600}.tr-tab-bar{display:flex;gap:0;padding:0 24px;background:#fff;border-bottom:2px solid var(--tr-border-light)}.tr-tab-item{border:none;background:none;padding:14px 24px;font-size:15px;color:var(--tr-text-muted);cursor:pointer;position:relative;display:flex;align-items:center;gap:8px;font-weight:500;transition:color .2s}.tr-tab-item:hover{color:var(--tr-text-primary)}.tr-tab-item.active{color:var(--tr-purple);font-weight:700}.tr-tab-item.active:after{content:"";position:absolute;bottom:-2px;left:12px;right:12px;height:3px;background:var(--tr-purple);border-radius:2px}.tr-tab-item svg{width:18px;height:18px;fill:currentColor}.tr-tab-right{margin-left:auto;display:flex;align-items:center;gap:8px;padding:14px 0;font-size:14px;color:var(--tr-text-secondary)}.tr-class-label{font-weight:600}.tr-tab-right svg{width:16px;height:16px;fill:var(--tr-text-muted)}.tr-overview-flex{display:flex;align-items:center;gap:32px;flex-wrap:wrap}.tr-ov-ring-box{position:relative;width:140px;height:140px}.tr-ov-ring-box svg{width:100%;height:100%;transform:rotate(-90deg)}.tr-ov-ring-bg{fill:none;stroke:var(--tr-purple-pale);stroke-width:12}.tr-ov-ring-fill{fill:none;stroke:var(--tr-purple);stroke-width:12;stroke-linecap:round;transition:stroke-dashoffset .8s ease}.tr-ov-ring-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.tr-ov-ring-val{font-size:36px;font-weight:900;color:var(--tr-text-primary);line-height:1}.tr-ov-ring-val .frac{font-size:18px;font-weight:400;color:var(--tr-text-muted)}.tr-ov-ring-label{font-size:12px;color:var(--tr-text-muted);margin-top:4px}.tr-ov-stats{display:flex;gap:0;flex:1}.tr-ov-stat{flex:1;text-align:center;padding:0 16px;border-right:1px solid var(--tr-border-light)}.tr-ov-stat:last-child{border-right:none}.tr-ov-stat-label{font-size:13px;color:var(--tr-text-muted);margin-bottom:8px}.tr-ov-stat-val{font-size:28px;font-weight:900;color:var(--tr-text-primary);line-height:1.1}.tr-ov-stat-val .unit{font-size:14px;font-weight:400;color:var(--tr-text-muted)}.tr-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.tr-chart-card{background:#fff;border-radius:var(--tr-radius-md);box-shadow:var(--tr-shadow-soft);padding:24px 28px}.tr-chart-title{font-size:16px;font-weight:800;color:var(--tr-text-primary);margin-bottom:20px}.tr-bar-chart{display:flex;align-items:flex-end;justify-content:space-around;height:160px;padding:0 10px;margin-bottom:16px;border-bottom:1px solid var(--tr-border-light)}.tr-bar-col{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1}.tr-bar-fill{width:48px;border-radius:6px 6px 0 0;transition:height .6s ease;min-height:2px}.tr-bar-fill.purple{background:linear-gradient(180deg,var(--tr-purple-light),var(--tr-purple))}.tr-bar-fill.blue{background:linear-gradient(180deg,#7EC8F0,var(--tr-blue))}.tr-bar-fill.green{background:linear-gradient(180deg,#8ED860,var(--tr-green))}.tr-bar-fill.orange{background:linear-gradient(180deg,#FFBA6A,var(--tr-orange))}.tr-bar-count{font-size:13px;font-weight:700;color:var(--tr-text-primary)}.tr-bar-labels{display:flex;justify-content:space-around;font-size:12px;color:var(--tr-text-muted);margin-top:-4px;text-align:center}.tr-rank-card{background:#fff;border-radius:var(--tr-radius-md);box-shadow:var(--tr-shadow-soft);overflow:hidden}.tr-rank-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;border-bottom:1px solid var(--tr-border-light)}.tr-rank-header h3{font-size:16px;font-weight:800;color:var(--tr-text-primary)}.tr-rank-table{width:100%;border-collapse:collapse}.tr-rank-table th{padding:12px 20px;font-size:13px;font-weight:600;color:var(--tr-text-muted);text-align:left;background:#fdfaff;border-bottom:1px solid var(--tr-border-light)}.tr-rank-table td{padding:14px 20px;font-size:14px;color:var(--tr-text-primary);border-bottom:1px solid var(--tr-border-light)}.tr-rank-table tr:last-child td{border-bottom:none}.tr-medal{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#fff}.tr-medal.g{background:linear-gradient(135deg,#ffd54f,#f9a825)}.tr-medal.s{background:linear-gradient(135deg,#b0bec5,#78909c)}.tr-medal.b{background:linear-gradient(135deg,#ffcc80,#e65100)}.tr-rank-num{font-weight:600;color:var(--tr-text-muted);display:inline-block;width:30px;text-align:center}.tr-progress-bar{width:80px;height:6px;background:var(--tr-border-light);border-radius:3px;overflow:hidden}.tr-progress-fill{height:100%;border-radius:3px;background:var(--tr-purple)}.tr-link-btn{border:none;background:none;color:var(--tr-purple);font-weight:600;font-size:13px;cursor:pointer}.tr-link-btn:hover{text-decoration:underline}.tr-q-summary-card{background:#fff;border-radius:var(--tr-radius-md);box-shadow:var(--tr-shadow-soft);padding:24px 28px;margin-bottom:24px}.tr-q-summary-title{font-size:16px;font-weight:800;color:var(--tr-text-primary);margin-bottom:18px}.tr-q-summary-title span{font-weight:400;color:var(--tr-text-muted);font-size:14px}.tr-q-pills{display:flex;flex-wrap:wrap;gap:12px}.tr-q-pill{display:flex;align-items:center;border-radius:22px;overflow:hidden;border:1px solid var(--tr-border-light);cursor:pointer;transition:all .2s;background:#fff}.tr-q-pill:hover{border-color:var(--tr-purple-light);box-shadow:0 2px 8px #9545801a}.tr-q-pill-num{padding:8px 14px;font-size:14px;font-weight:800;color:#fff;background:var(--tr-purple);min-width:48px;text-align:center}.tr-q-pill-pct{padding:8px 16px;font-size:14px;font-weight:600;color:var(--tr-text-primary)}.tr-q-card{background:#fff;border-radius:var(--tr-radius-md);box-shadow:var(--tr-shadow-soft);margin-bottom:24px;overflow:hidden}.tr-q-card-header{display:flex;align-items:center;gap:12px;padding:20px 28px;border-bottom:1px solid var(--tr-border-light)}.tr-q-card-num{font-size:16px;font-weight:800;color:var(--tr-text-primary)}.tr-q-card-type{padding:3px 12px;border-radius:6px;font-size:12px;font-weight:600;background:#f5f2f8;color:var(--tr-text-muted)}.tr-q-card-body{padding:24px 28px}.tr-q-stem{font-size:15px;color:var(--tr-text-primary);line-height:1.8;margin-bottom:20px}.tr-q-option{padding:12px 20px;font-size:14px;color:var(--tr-text-secondary);line-height:1.7;border-bottom:1px solid #FAF5FF;display:flex;align-items:flex-start;gap:4px}.tr-q-option:last-child{border-bottom:none}.tr-opt-letter{color:var(--tr-text-muted);font-style:italic;min-width:20px}.tr-q-card-footer{padding:16px 28px;border-top:1px solid var(--tr-border-light);display:flex;align-items:center;gap:16px;flex-wrap:wrap}.tr-q-acc-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:20px;font-size:13px;font-weight:600;background:var(--tr-purple-pale);color:var(--tr-purple)}.tr-q-answer-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:20px;font-size:13px;font-weight:500;background:#fff;color:var(--tr-text-secondary);border:1px solid var(--tr-border-light);cursor:pointer;transition:all .2s}.tr-q-answer-btn:hover{border-color:var(--tr-purple-light);color:var(--tr-purple)}.tr-q-answer-box{padding:16px 28px;background:var(--tr-purple-pale);border-top:1px solid var(--tr-border-light);display:none}.tr-q-answer-box.show{display:block}.tr-q-answer-label{font-size:12px;color:var(--tr-text-muted);margin-bottom:4px}.tr-q-answer-val{font-size:14px;font-weight:700;color:var(--tr-green)}.tr-detail-card{background:#fff;border-radius:var(--tr-radius-md);box-shadow:var(--tr-shadow-soft);position:sticky;top:28px}.tr-detail-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--tr-border-light);cursor:pointer}.tr-detail-header h3{font-size:16px;font-weight:800;color:var(--tr-text-primary)}.tr-detail-toggle{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:none;background:var(--tr-purple-pale);cursor:pointer;transition:all .2s}.tr-detail-toggle:hover{background:var(--tr-purple-soft)}.tr-detail-toggle svg{width:16px;height:16px;fill:var(--tr-purple);transition:transform .3s}.tr-detail-toggle.collapsed svg{transform:rotate(180deg)}.tr-detail-body{padding:20px 24px}.tr-dt-row{margin-bottom:16px}.tr-dt-label{font-size:12px;color:var(--tr-text-muted);margin-bottom:4px;font-weight:500}.tr-dt-val{font-size:14px;color:var(--tr-text-primary);font-weight:600;line-height:1.6}.hg-wrapper{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:#f5f5f5;z-index:100;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.hg-header{display:flex;align-items:center;height:52px;padding:0 20px;background:#fff;border-bottom:1px solid #E8E8E8;gap:16px;flex-shrink:0;position:relative}.hg-header-left{flex-shrink:0}.hg-back-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border:1.5px solid #D0D0D0;border-radius:8px;background:#fff;color:#555;font-size:14px;cursor:pointer;transition:border-color .15s}.hg-back-btn svg{width:18px;height:18px}.hg-back-btn:hover{border-color:#999;color:#333}.hg-header-title{flex:1;text-align:center;font-size:16px;font-weight:600;color:#1a1a1a;position:absolute;left:50%;transform:translate(-50%)}.hg-header-sub{font-size:13px;font-weight:400;color:#888;margin-left:6px}.hg-header-right{margin-left:auto;display:flex;align-items:center;gap:8px}.hg-pager-btn{width:28px;height:28px;border:1.5px solid #D0D0D0;border-radius:6px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s}.hg-pager-btn svg{width:18px;height:18px;fill:#555}.hg-pager-btn:disabled{opacity:.35;cursor:not-allowed}.hg-pager-btn:not(:disabled):hover{border-color:#999}.hg-pager-label{font-size:14px;color:#555;min-width:40px;text-align:center}.hg-body{display:flex;flex:1;overflow:hidden}.hg-sidebar{width:190px;flex-shrink:0;background:#fff;border-right:1px solid #E8E8E8;display:flex;flex-direction:column;overflow:hidden}.hg-tab-bar{display:flex;border-bottom:1px solid #E8E8E8;flex-shrink:0}.hg-tab{flex:1;padding:12px 0;border:none;background:none;font-size:14px;color:#888;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;font-weight:500}.hg-tab.active{color:#2196f3;border-bottom-color:#2196f3}.hg-question-list{flex:1;overflow-y:auto;padding:8px 0}.hg-question-item{padding:10px 16px;cursor:pointer;border-left:3px solid transparent;transition:all .15s}.hg-question-item:hover{background:#f5f5f5}.hg-question-item.active{background:#ebf5fb;border-left-color:#2196f3}.hg-question-item-header{display:flex;align-items:center;justify-content:space-between;gap:6px}.hg-question-item-num{font-size:14px;font-weight:600;color:#333}.hg-pending-badge{font-size:11px;color:#ff6b35;background:#fff0eb;border-radius:10px;padding:1px 6px;white-space:nowrap}.hg-student-item{display:flex;align-items:center;gap:8px;padding:7px 4px 7px 8px;margin-top:4px;border-radius:8px;cursor:pointer;transition:background .12s}.hg-student-item:hover{background:#e3f2fd}.hg-student-item.active{background:#2196f3}.hg-student-item.active .hg-student-avatar,.hg-student-item.active .hg-student-item-name{color:#fff}.hg-student-avatar{width:28px;height:28px;border-radius:50%;background:#2196f3;color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hg-student-item.active .hg-student-avatar{background:#ffffff4d}.hg-student-item-name{font-size:13px;color:#555;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hg-sidebar-footer{padding:12px 16px;border-top:1px solid #E8E8E8;flex-shrink:0}.hg-report-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:1.5px solid #E8E8E8;border-radius:8px;background:#fff;font-size:13px;color:#555;cursor:pointer;transition:border-color .15s}.hg-report-btn svg{width:16px;height:16px;fill:#888}.hg-report-btn:hover{border-color:#2196f3;color:#2196f3}.hg-main{flex:1;overflow-y:auto;padding:24px 32px}.hg-empty-hint{display:flex;align-items:center;justify-content:center;height:200px;color:#aaa;font-size:15px}.hg-question-content{font-size:16px;line-height:1.8;color:#1a1a1a;margin-bottom:16px}.hg-question-content img{vertical-align:middle;max-height:80px}.hg-divider{height:1px;background:#e8e8e8;margin:16px 0}.hg-reference-answer{margin-top:16px;padding:14px 16px;background:#f0faf4;border:1px solid #c6e9d4;border-radius:8px}.hg-ref-section{margin-bottom:10px}.hg-ref-section:last-child{margin-bottom:0}.hg-ref-label{font-size:12px;font-weight:600;color:#16a34a;margin-bottom:4px}.hg-ref-content{font-size:14px;color:#333;line-height:1.7;white-space:pre-wrap}.hg-student-answer-label{font-size:13px;font-weight:600;color:#666;margin-bottom:8px}.hg-blank-tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.hg-blank-tab{display:flex;align-items:center;gap:6px;padding:6px 16px;border:none;border-radius:20px;background:#e3f2fd;color:#1976d2;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.hg-blank-tab.active{background:#2196f3;color:#fff}.hg-blank-tab:not(.active):hover{background:#bbdefb}.hg-blank-tab-count{font-weight:400;font-size:12px;opacity:.8}.hg-blank-label{font-size:15px;font-weight:600;color:#333;margin-bottom:12px}.hg-student-answers{display:flex;flex-direction:column;gap:16px;max-width:480px}.hg-student-answer-card{border:1.5px solid #E8E8E8;border-radius:12px;padding:14px 16px;background:#fff;transition:border-color .2s}.hg-student-answer-card.correct{border-color:#4caf50;background:#f1f8e9}.hg-student-answer-card.wrong{border-color:#f44336;background:#fff3f3}.hg-student-name{font-size:13px;font-weight:600;color:#555;margin-bottom:8px}.hg-answer-label{font-size:13px;color:#888;margin-bottom:6px}.hg-answer-box{border:1.5px solid #E0E0E0;border-radius:8px;background:#fafafa;padding:10px 14px;display:flex;flex-direction:column;gap:10px}.hg-answer-text{font-size:16px;color:#222;min-height:28px;line-height:1.6}.hg-grade-btns{display:flex;gap:12px}.hg-grade-check,.hg-grade-cross{width:40px;height:40px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;background:#fff}.hg-grade-check{border-color:#4caf50;color:#4caf50}.hg-grade-check svg{width:18px;height:18px;stroke:#4caf50}.hg-grade-check.active{background:#4caf50}.hg-grade-check.active svg{stroke:#fff}.hg-grade-check:hover:not(.active){background:#e8f5e9}.hg-grade-cross{border-color:#f44336;color:#f44336}.hg-grade-cross svg{width:18px;height:18px;stroke:#f44336}.hg-grade-cross.active{background:#f44336}.hg-grade-cross.active svg{stroke:#fff}.hg-grade-cross:hover:not(.active){background:#ffebee}.hg-correct-answer{font-size:13px;color:#4caf50;margin-top:6px;font-weight:500}.hg-subjective-main{display:flex;gap:0;height:100%;position:relative}.hg-subjective-content{flex:1}.hg-canvas-area{min-height:400px;background:#fafafa;border:1.5px solid #E8E8E8;border-radius:12px;display:flex;align-items:center;justify-content:center;padding:16px;margin-top:8px;overflow:auto}.hg-text-answer{background:#fafafa;border:1.5px solid #E8E8E8;border-radius:12px;padding:16px 20px;margin-top:8px}.hg-text-answer pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:15px;color:#333;line-height:1.7}.hg-no-answer{display:flex;align-items:center;justify-content:center;height:120px;color:#bbb;font-size:15px;border:1.5px dashed #E0E0E0;border-radius:12px;margin-top:8px}.hg-right-panel{width:52px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 0;border-left:1.5px solid #E8E8E8;margin-left:16px}.hg-panel-btn{width:40px;height:40px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;position:relative}.hg-panel-btn svg{width:20px;height:20px}.hg-panel-btn.correct{background:#e8f5e9}.hg-panel-btn.correct svg{stroke:#4caf50}.hg-panel-btn.correct.active{background:#4caf50}.hg-panel-btn.correct.active svg{stroke:#fff}.hg-panel-btn.correct:hover:not(.active){background:#c8e6c9}.hg-panel-btn.half{background:#fff3e0}.hg-panel-btn.half svg{stroke:#ff9800}.hg-panel-btn.half.active{background:#ff9800}.hg-panel-btn.half.active svg{stroke:#fff}.hg-panel-btn.half:hover:not(.active){background:#ffe0b2}.hg-panel-half-mark{position:absolute;bottom:4px;right:4px;font-size:10px;line-height:1;color:inherit}.hg-panel-btn.wrong{background:#ffebee}.hg-panel-btn.wrong svg{stroke:#f44336}.hg-panel-btn.wrong.active{background:#f44336}.hg-panel-btn.wrong.active svg{stroke:#fff}.hg-panel-btn.wrong:hover:not(.active){background:#ffcdd2}.hg-panel-divider{width:24px;height:1px;background:#e8e8e8;margin:4px 0}.hg-panel-score-label{font-size:11px;color:#888;text-align:center}.hg-panel-score{font-size:18px;font-weight:700;color:#2196f3;text-align:center;min-height:24px}.hg-panel-score-btn{width:36px;height:36px;border:1.5px solid #E0E0E0;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s}.hg-panel-score-btn svg{width:18px;height:18px;stroke:#555}.hg-panel-score-btn:hover{border-color:#2196f3}.hg-panel-score-btn:hover svg{stroke:#2196f3}.hg-loading{display:flex;align-items:center;justify-content:center;height:100vh}.hg-loading-spinner{width:36px;height:36px;border:3px solid #E0E0E0;border-top-color:#2196f3;border-radius:50%;animation:hg-spin .7s linear infinite}@keyframes hg-spin{to{transform:rotate(360deg)}}.hg-error{display:flex;align-items:center;justify-content:center;height:100vh;color:#888;font-size:16px}.hw-header{height:64px;background:linear-gradient(135deg,var(--qb-purple) 0%,var(--qb-purple-deep) 100%);display:flex;align-items:center;padding:0 32px;box-shadow:0 2px 16px #9545804d;position:sticky;top:0;z-index:500}.hw-header-left{display:flex;align-items:center;gap:16px}.btn-exit{display:flex;align-items:center;gap:6px;padding:8px 20px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:20px;font-size:14px;cursor:pointer;font-family:inherit;transition:all .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.btn-exit:hover{background:#ffffff40}.btn-exit svg{width:16px;height:16px;fill:#fff}.hw-header-title{position:absolute;left:50%;transform:translate(-50%);font-size:20px;font-weight:700;color:#fff;letter-spacing:4px}.hw-header-right{margin-left:auto;display:flex;align-items:center;gap:16px}.hw-subject-info{display:flex;align-items:center;gap:8px;color:#fffc;font-size:14px}.hw-subject-tag{padding:4px 12px;background:#ffffff1f;border-radius:6px;font-size:13px;color:#ffffffe6}.btn-hw-submit{padding:9px 32px;background:linear-gradient(135deg,#fff,#f0e8f4);color:var(--qb-purple-deep);border:none;border-radius:22px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .25s;box-shadow:0 2px 12px #fff3;letter-spacing:2px}.btn-hw-submit:hover{box-shadow:0 4px 20px #ffffff59;transform:translateY(-1px)}.btn-hw-submit:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.hw-main{display:flex;max-width:1440px;margin:0 auto;padding:24px 24px 40px;gap:24px;min-height:calc(100vh - 64px);background:#f4f0fa}.hw-left{flex:1;display:flex;flex-direction:column;gap:20px;min-width:0}.hw-info-card{background:var(--qb-surface);border-radius:var(--qb-radius-lg);padding:28px 32px;box-shadow:var(--qb-shadow-card)}.hw-form-row{display:flex;align-items:flex-start;margin-bottom:20px}.hw-form-row:last-child{margin-bottom:0}.hw-form-label{width:80px;flex-shrink:0;font-size:14px;font-weight:600;color:var(--qb-text-secondary);padding-top:10px}.hw-form-label .required{color:var(--qb-red);margin-left:2px}.hw-form-input{flex:1;padding:10px 16px;border:1.5px solid var(--qb-border-light);border-radius:var(--qb-radius-sm);font-size:14px;font-family:inherit;color:var(--qb-text-primary);outline:none;transition:all .2s;background:#fdfbff}.hw-form-input:focus{border-color:var(--qb-purple-light);box-shadow:0 0 0 3px #95458014}.hw-form-input::placeholder{color:var(--qb-text-muted)}.hw-form-input.error{border-color:var(--qb-red)}.hw-form-textarea{flex:1;padding:10px 16px;border:1.5px solid var(--qb-border-light);border-radius:var(--qb-radius-sm);font-size:14px;font-family:inherit;color:var(--qb-text-primary);outline:none;resize:vertical;min-height:72px;transition:all .2s;background:#fdfbff}.hw-form-textarea:focus{border-color:var(--qb-purple-light);box-shadow:0 0 0 3px #95458014}.hw-form-textarea::placeholder{color:var(--qb-text-muted)}.hw-char-count{font-size:12px;color:var(--qb-text-muted);text-align:right;margin-top:4px}.hw-char-count.over{color:var(--qb-red)}.hw-questions-card{background:var(--qb-surface);border-radius:var(--qb-radius-lg);box-shadow:var(--qb-shadow-card);overflow:hidden}.hw-q-toolbar{display:flex;align-items:center;padding:18px 28px;border-bottom:1px solid var(--qb-border-light);gap:24px;background:#fdfbff}.hw-q-tabs{display:flex;gap:0}.hw-q-tab{padding:8px 20px;font-size:15px;font-weight:500;color:var(--qb-text-muted);cursor:pointer;position:relative;transition:color .2s}.hw-q-tab.active{color:var(--qb-purple);font-weight:700}.hw-q-tab.active:after{content:"";position:absolute;bottom:-18px;left:20px;right:20px;height:3px;background:var(--qb-purple);border-radius:2px}.hw-q-tab .count{font-weight:700}.hw-q-actions{margin-left:auto;display:flex;align-items:center;gap:16px}.hw-answer-mode{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--qb-text-secondary)}.hw-answer-mode-label{white-space:nowrap}.hw-answer-select{position:relative}.hw-answer-select-btn{display:flex;align-items:center;gap:4px;padding:6px 14px;background:none;border:none;color:var(--qb-purple);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}.hw-answer-select-btn svg{width:14px;height:14px;fill:var(--qb-purple);transition:transform .2s}.hw-answer-select-btn.open svg{transform:rotate(180deg)}.hw-answer-dropdown{display:none;position:absolute;top:calc(100% + 4px);right:0;background:#fff;border-radius:var(--qb-radius-sm);box-shadow:0 8px 32px #0000001f;z-index:100;min-width:160px;overflow:hidden}.hw-answer-dropdown.show{display:block}.hw-answer-opt{padding:12px 18px;font-size:14px;cursor:pointer;color:var(--qb-text-primary);transition:background .15s}.hw-answer-opt:hover{background:var(--qb-purple-pale)}.hw-answer-opt.active{color:var(--qb-purple);font-weight:600}.btn-sort{display:flex;align-items:center;gap:6px;padding:7px 16px;border:1.5px solid var(--qb-border-light);border-radius:8px;background:#fff;font-size:13px;color:var(--qb-text-secondary);cursor:pointer;font-family:inherit;transition:all .2s}.btn-sort:hover{border-color:var(--qb-purple-light);color:var(--qb-purple)}.btn-sort svg{width:16px;height:16px;fill:currentColor}.hw-paper{padding:28px}.hw-section-title{font-size:16px;font-weight:700;color:var(--qb-text-primary);margin-bottom:20px;padding-left:12px;border-left:4px solid var(--qb-purple)}.hw-question{background:#fdfbff;border:1px solid var(--qb-border-light);border-radius:var(--qb-radius-md);margin-bottom:18px;transition:all .2s;animation:hwFadeInUp .4s ease both}.hw-question:hover{box-shadow:var(--qb-shadow-card);border-color:var(--qb-purple-soft)}.hw-question:nth-child(2){animation-delay:.06s}.hw-question:nth-child(3){animation-delay:.12s}.hw-question:nth-child(4){animation-delay:.18s}.hw-question:nth-child(5){animation-delay:.24s}.hw-q-head{display:flex;align-items:center;padding:16px 22px 0;gap:10px}.hw-q-num{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:linear-gradient(135deg,var(--qb-purple-light),var(--qb-purple));color:#fff;font-size:14px;font-weight:700;border-radius:8px;flex-shrink:0}.hw-q-type-tag{font-size:12px;padding:3px 12px;border-radius:6px;font-weight:500;border:1px solid}.hw-q-type-tag.single{color:var(--qb-purple);border-color:var(--qb-purple-light);background:var(--qb-purple-pale)}.hw-q-type-tag.multi{color:var(--qb-blue);border-color:#a0d8f0;background:var(--qb-blue-light)}.hw-q-type-tag.judge{color:var(--qb-green);border-color:#a0d8a0;background:var(--qb-green-light)}.hw-q-type-tag.fill{color:#c08800;border-color:#f0d878;background:var(--qb-yellow-light)}.hw-q-type-tag.subjective{color:#d4760a;border-color:#f0c878;background:#fff8e8}.hw-q-type-tag.composite{color:var(--qb-red);border-color:#f0a8a8;background:#fdeaea}.hw-q-content{padding:14px 22px;font-size:14px;color:var(--qb-text-primary);line-height:1.9}.hw-q-content .q-options{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 32px;margin-top:10px;font-size:14px}.hw-q-content .q-options.single-col{grid-template-columns:1fr}.hw-q-foot{display:flex;align-items:center;justify-content:space-between;padding:12px 22px 16px;border-top:1px dashed var(--qb-border-light)}.hw-q-expand{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--qb-purple);cursor:pointer;font-weight:500;transition:opacity .2s;background:none;border:none;font-family:inherit}.hw-q-expand:hover{opacity:.7}.hw-q-expand svg{width:14px;height:14px;fill:var(--qb-purple);transition:transform .2s}.hw-q-expand.open svg{transform:rotate(180deg)}.hw-q-delete{display:flex;align-items:center;gap:4px;padding:6px 16px;border:1.5px solid var(--qb-border-light);border-radius:8px;background:#fff;font-size:13px;color:var(--qb-text-muted);cursor:pointer;font-family:inherit;transition:all .2s}.hw-q-delete:hover{border-color:var(--qb-red);color:var(--qb-red);background:#fdeaea}.hw-q-delete svg{width:14px;height:14px;fill:currentColor}.hw-q-answer{max-height:0;overflow:hidden;padding:0 22px;background:var(--qb-purple-pale);font-size:14px;color:var(--qb-text-primary);line-height:1.7;border-top:1px solid var(--qb-border-light);border-radius:0 0 var(--qb-radius-md) var(--qb-radius-md);transition:max-height .3s ease,padding .3s ease}.hw-q-answer.show{max-height:500px;padding:14px 22px 16px}.hw-right{width:360px;flex-shrink:0;display:flex;flex-direction:column;gap:20px}.hw-panel{background:var(--qb-surface);border-radius:var(--qb-radius-lg);box-shadow:var(--qb-shadow-card);overflow:visible}.hw-panel-section{padding:20px 24px;border-bottom:1px solid var(--qb-border-light)}.hw-panel-section:last-child{border-bottom:none}.hw-panel-title{font-size:15px;font-weight:700;color:var(--qb-text-primary);margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}.hw-panel-title svg{width:16px;height:16px;fill:var(--qb-text-muted);cursor:pointer;transition:transform .3s}.hw-panel-title svg.rotated{transform:rotate(180deg)}.hw-target-tabs{display:flex;gap:0;margin-bottom:14px}.hw-target-tab{flex:1;text-align:center;padding:8px;font-size:14px;color:var(--qb-text-muted);cursor:pointer;position:relative;font-weight:500;transition:color .2s}.hw-target-tab.active{color:var(--qb-purple);font-weight:700}.hw-target-tab.active:after{content:"";position:absolute;bottom:0;left:30%;right:30%;height:3px;background:var(--qb-purple);border-radius:2px}.hw-class-list{display:flex;flex-wrap:wrap;gap:8px}.hw-class-item{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1.5px solid var(--qb-border-light);border-radius:8px;font-size:13px;color:var(--qb-text-primary);cursor:pointer;transition:all .2s;background:#fff}.hw-class-item:hover{border-color:var(--qb-purple-light)}.hw-class-item.selected{border-color:var(--qb-purple);background:var(--qb-purple-pale);color:var(--qb-purple);font-weight:600}.hw-class-item input{accent-color:var(--qb-purple);width:16px;height:16px;cursor:pointer}.hw-setting-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fdfbff;border-radius:var(--qb-radius-sm);margin-bottom:8px;cursor:pointer;transition:all .15s}.hw-setting-row:last-child{margin-bottom:0}.hw-setting-row:hover{background:var(--qb-purple-pale)}.hw-setting-label{font-size:14px;color:var(--qb-text-secondary)}.hw-setting-value{font-size:14px;color:var(--qb-text-primary);font-weight:500;display:flex;align-items:center;gap:4px}.hw-type-wrap{position:relative}.hw-type-btn{display:flex;align-items:center;gap:6px;padding:0;background:none;border:none;color:var(--qb-purple);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit}.hw-type-btn svg{width:14px;height:14px;fill:var(--qb-purple);transition:transform .2s}.hw-type-btn.open svg{transform:rotate(180deg)}.hw-type-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:var(--qb-radius-sm);box-shadow:0 8px 32px #0000001f;z-index:100;min-width:140px;overflow:hidden}.hw-type-dropdown.show{display:block}.hw-type-opt{padding:12px 20px;font-size:14px;cursor:pointer;color:var(--qb-text-primary);transition:background .15s}.hw-type-opt:hover{background:var(--qb-purple-pale)}.hw-type-opt.active{color:var(--qb-purple);font-weight:600}.hw-chapter-wrap{position:relative}.hw-chapter-input{width:100%;padding:10px 36px 10px 14px;border:1.5px solid var(--qb-border-light);border-radius:8px;font-size:13px;font-family:inherit;color:var(--qb-text-muted);background:#fdfbff;cursor:pointer;outline:none;transition:border-color .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hw-chapter-input.has-value{color:var(--qb-text-primary)}.hw-chapter-input:focus{border-color:var(--qb-purple)}.hw-chapter-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;fill:var(--qb-text-muted);pointer-events:none;transition:transform .2s}.hw-chapter-dropdown{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--qb-border-light);border-radius:var(--qb-radius-sm);box-shadow:0 8px 32px #0000001f;z-index:200;overflow:hidden;min-width:100%}.hw-chapter-dropdown.show{display:flex}.hw-cascade-col{min-width:140px;border-right:1px solid #f0f0f0;max-height:260px;overflow-y:auto;scrollbar-width:thin}.hw-cascade-col:last-child{border-right:none}.hw-cascade-item{padding:10px 14px;font-size:13px;color:var(--qb-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background .15s;white-space:nowrap}.hw-cascade-item:hover{background:var(--qb-purple-pale)}.hw-cascade-item.active{background:var(--qb-purple-pale);color:var(--qb-purple);font-weight:600}.hw-cascade-item svg{width:12px;height:12px;fill:var(--qb-text-muted);flex-shrink:0;margin-left:6px}.hw-exit-wrap{position:relative}.hw-exit-btn{display:flex;align-items:center;gap:4px;padding:0;background:none;border:none;font-size:14px;font-weight:600;color:var(--qb-purple);cursor:pointer;font-family:inherit}.hw-exit-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:var(--qb-radius-sm);box-shadow:0 8px 32px #0000001f;z-index:100;min-width:180px;overflow:hidden}.hw-exit-dropdown.show{display:block}.hw-exit-opt{padding:12px 18px;font-size:14px;cursor:pointer;color:var(--qb-text-primary);transition:background .15s}.hw-exit-opt:hover{background:var(--qb-purple-pale)}.hw-exit-opt.active{color:var(--qb-purple);font-weight:600}.hw-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e153373;z-index:900;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.hw-modal{background:#fff;border-radius:var(--qb-radius-lg);box-shadow:0 20px 60px #0003;width:520px;max-width:90vw;max-height:85vh;overflow-y:auto;animation:hwModalIn .3s ease}@keyframes hwModalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.hw-modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px 16px;border-bottom:1px solid var(--qb-border-light)}.hw-modal-title{font-size:18px;font-weight:700;color:var(--qb-text-primary)}.hw-modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;transition:background .2s;border:none;background:none}.hw-modal-close:hover{background:var(--qb-purple-pale)}.hw-modal-close svg{width:18px;height:18px;fill:var(--qb-text-muted)}.hw-modal-body{padding:24px 28px}.hw-modal-footer{display:flex;align-items:center;justify-content:flex-end;padding:16px 28px 22px;border-top:1px solid var(--qb-border-light);gap:12px}.hw-modal-footer-info{margin-right:auto;font-size:14px;color:var(--qb-text-secondary)}.hw-modal-footer-info strong{color:var(--qb-purple);font-weight:600}.hw-modal-footer-clear{cursor:pointer;display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:0}.hw-modal-footer-clear svg{width:16px;height:16px;fill:var(--qb-text-muted)}.hw-btn-cancel{padding:9px 28px;border:1.5px solid var(--qb-border-light);border-radius:22px;background:#fff;font-size:14px;color:var(--qb-text-secondary);cursor:pointer;font-family:inherit;transition:all .2s}.hw-btn-cancel:hover{border-color:var(--qb-text-muted)}.hw-btn-confirm{padding:9px 32px;background:linear-gradient(135deg,var(--qb-purple-light) 0%,var(--qb-purple) 100%);color:#fff;border:none;border-radius:22px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .2s;box-shadow:0 2px 12px #95458040}.hw-btn-confirm:hover{box-shadow:0 4px 20px #95458059}.hw-modal-label{font-size:15px;font-weight:700;color:var(--qb-text-primary);margin-bottom:12px}.hw-modal-chips{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.hw-modal-chip{padding:8px 22px;border:1.5px solid var(--qb-border-light);border-radius:22px;font-size:14px;color:var(--qb-text-primary);cursor:pointer;transition:all .2s;background:#fff}.hw-modal-chip:hover{border-color:var(--qb-purple-light);color:var(--qb-purple)}.hw-modal-chip.selected{border-color:var(--qb-purple);color:var(--qb-purple);background:var(--qb-purple-pale);font-weight:600}.hw-modal-custom-row{display:flex;align-items:center;gap:12px}.hw-modal-date-input,.hw-modal-time-input{padding:10px 14px;border:1.5px solid var(--qb-border-light);border-radius:8px;font-size:14px;font-family:inherit;color:var(--qb-text-primary);outline:none;background:#fdfbff;cursor:pointer;transition:border-color .2s}.hw-modal-date-input:focus,.hw-modal-time-input:focus{border-color:var(--qb-purple)}.hw-modal-separator{font-size:16px;color:var(--qb-text-muted)}.hw-modal-duration-select{padding:10px 14px;border:1.5px solid var(--qb-border-light);border-radius:8px;font-size:14px;font-family:inherit;color:var(--qb-text-primary);outline:none;background:#fdfbff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%239B8DAB'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;min-width:140px;transition:border-color .2s}.hw-modal-duration-select:focus{border-color:var(--qb-purple)}.hw-empty{text-align:center;padding:80px 40px;color:var(--qb-text-muted)}.hw-empty svg{width:80px;height:80px;fill:var(--qb-purple-soft);margin-bottom:16px}.hw-empty-text{font-size:15px}.hw-resource-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--qb-border-light)}.hw-resource-item{display:grid;grid-template-columns:32px 28px 1fr auto;align-items:center;gap:10px;padding:18px 10px;border-bottom:1px solid var(--qb-border-light);background:#fff}.hw-resource-rank{color:var(--qb-text-muted);text-align:center}.hw-resource-file-icon{width:22px;height:22px;border-radius:5px;background:linear-gradient(135deg,#9bda62,#70b741);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center}.hw-resource-name{color:var(--qb-text-primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hw-resource-meta{color:var(--qb-text-muted);font-size:12px}.hw-resource-remove{border:none;background:transparent;color:var(--qb-text-secondary);border-radius:8px;padding:6px 12px;cursor:pointer;font-family:inherit}.hw-resource-remove:hover{color:var(--qb-red)}.hw-resource-add-local{border:1px solid var(--qb-border-light);background:#fff;color:var(--qb-text-secondary);border-radius:20px;padding:8px 16px;font-size:13px;cursor:pointer;font-family:inherit}.hw-resource-add-local:hover{border-color:var(--qb-purple-light);color:var(--qb-purple)}.hw-toast{position:fixed;top:80px;left:50%;transform:translate(-50%) translateY(-20px);padding:12px 32px;background:var(--qb-purple-dark);color:#fff;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 8px 32px #0003;z-index:999;opacity:0;transition:all .3s;pointer-events:none}.hw-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.hw-sort-bar{display:none;align-items:center;padding:16px 28px;background:var(--qb-purple-pale);border-bottom:1px solid var(--qb-border-light);gap:12px}.hw-sort-bar.show{display:flex}.hw-sort-bar-title{font-size:16px;font-weight:700;color:var(--qb-text-primary)}.hw-sort-bar-hint{font-size:13px;color:var(--qb-text-muted)}.hw-sort-bar-done{margin-left:auto;padding:7px 24px;border:1.5px solid var(--qb-border-light);border-radius:8px;background:#fff;font-size:14px;color:var(--qb-text-primary);cursor:pointer;font-family:inherit;font-weight:500;transition:all .2s}.hw-sort-bar-done:hover{border-color:var(--qb-purple);color:var(--qb-purple);background:var(--qb-purple-pale)}.hw-question.dragging{opacity:.5;transform:scale(.98)}.hw-question.drag-over{border-color:var(--qb-purple);box-shadow:0 0 0 2px var(--qb-purple-light)}.hw-question .hw-q-drag-handle{display:none;width:20px;cursor:grab;color:var(--qb-text-muted);flex-shrink:0;font-size:18px;line-height:1;-webkit-user-select:none;user-select:none}.sort-mode .hw-question .hw-q-drag-handle{display:flex;align-items:center}.sort-mode .hw-q-foot{display:none}.sort-mode .hw-question{cursor:grab}.sort-mode .hw-question:active{cursor:grabbing}.hw-collapsible-body{max-height:500px;overflow:visible;transition:max-height .3s ease}.hw-collapsible-body.collapsed{max-height:0;overflow:hidden}@keyframes hwFadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.cw-header{height:64px;background:linear-gradient(135deg,var(--qb-purple) 0%,var(--qb-purple-deep) 100%);display:flex;align-items:center;padding:0 32px;box-shadow:0 2px 16px #9545804d;position:sticky;top:0;z-index:500}.cw-header-left{display:flex;align-items:center;gap:16px}.cw-btn-exit{display:flex;align-items:center;gap:6px;padding:8px 20px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:20px;font-size:14px;cursor:pointer;font-family:inherit;transition:all .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cw-btn-exit:hover{background:#ffffff40}.cw-btn-exit svg{width:16px;height:16px;fill:#fff}.cw-header-title{position:absolute;left:50%;transform:translate(-50%);font-size:20px;font-weight:700;color:#fff;letter-spacing:4px}.cw-header-right{margin-left:auto;display:flex;align-items:center;gap:16px}.cw-textbook-wrap{position:relative}.cw-textbook-btn{display:flex;align-items:center;gap:6px;padding:7px 16px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#ffffffe6;font-size:14px;cursor:pointer;font-family:inherit;transition:all .2s;white-space:nowrap}.cw-textbook-btn:hover{background:#fff3}.cw-textbook-btn svg{width:14px;height:14px;fill:#ffffffb3;transition:transform .2s}.cw-textbook-btn.open svg{transform:rotate(180deg)}.cw-textbook-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:var(--qb-radius-sm);box-shadow:0 8px 32px #00000026;z-index:600;min-width:220px;overflow:hidden}.cw-textbook-dropdown.show{display:block}.cw-textbook-opt{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;font-size:14px;cursor:pointer;color:var(--qb-text-primary);transition:background .15s}.cw-textbook-opt:hover{background:var(--qb-purple-pale)}.cw-textbook-opt.active{font-weight:600}.cw-textbook-opt .tb-check{width:20px;height:20px;border-radius:50%;background:var(--qb-purple);display:none;align-items:center;justify-content:center}.cw-textbook-opt.active .tb-check{display:flex}.cw-textbook-opt .tb-check svg{width:12px;height:12px;fill:#fff}.cw-btn-submit{padding:9px 32px;background:linear-gradient(135deg,#fff,#f0e8f4);color:var(--qb-purple-deep);border:none;border-radius:22px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .25s;box-shadow:0 2px 12px #fff3;letter-spacing:2px}.cw-btn-submit:hover{box-shadow:0 4px 20px #ffffff59;transform:translateY(-1px)}.cw-btn-submit:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.cw-main{display:flex;max-width:1440px;margin:0 auto;padding:24px 24px 40px;gap:24px;min-height:calc(100vh - 64px)}.cw-left{flex:1;display:flex;flex-direction:column;gap:20px;min-width:0}.cw-info-card{background:var(--qb-surface);border-radius:var(--qb-radius-lg);padding:28px 32px;box-shadow:var(--qb-shadow-card)}.cw-form-row{display:flex;align-items:center;margin-bottom:20px}.cw-form-row:last-child{margin-bottom:0}.cw-form-label{width:80px;flex-shrink:0;font-size:14px;font-weight:600;color:var(--qb-text-secondary)}.cw-form-label .required{color:var(--qb-red);margin-left:2px}.cw-form-input{flex:1;padding:10px 16px;border:1.5px solid var(--qb-border-light);border-radius:var(--qb-radius-sm);font-size:14px;font-family:inherit;color:var(--qb-text-primary);outline:none;transition:all .2s;background:#fdfbff}.cw-form-input:focus{border-color:var(--qb-purple-light);box-shadow:0 0 0 3px #95458014}.cw-form-input::placeholder{color:var(--qb-text-muted)}.cw-duration-row{display:flex;align-items:center;gap:12px}.cw-stepper{display:flex;align-items:center;gap:0}.cw-stepper-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--qb-border-light);background:#fff;cursor:pointer;font-size:20px;color:var(--qb-text-secondary);transition:all .15s;font-family:inherit}.cw-stepper-btn:first-child{border-radius:8px 0 0 8px}.cw-stepper-btn:last-child{border-radius:0 8px 8px 0}.cw-stepper-btn:hover{background:var(--qb-purple-pale);color:var(--qb-purple);border-color:var(--qb-purple-light)}.cw-stepper-btn:disabled{opacity:.3;cursor:not-allowed;background:#fff}.cw-stepper-value{min-width:64px;height:36px;display:flex;align-items:center;justify-content:center;border-top:1.5px solid var(--qb-border-light);border-bottom:1.5px solid var(--qb-border-light);font-size:14px;font-weight:600;color:var(--qb-text-primary);background:#fdfbff;-webkit-user-select:none;user-select:none}.cw-duration-unit{font-size:14px;color:var(--qb-text-secondary)}.cw-questions-card{background:var(--qb-surface);border-radius:var(--qb-radius-lg);box-shadow:var(--qb-shadow-card);overflow:hidden}.cw-q-toolbar{display:flex;align-items:center;padding:18px 28px;border-bottom:1px solid var(--qb-border-light);gap:24px;background:#fdfbff}.cw-q-tabs{display:flex;gap:0}.cw-q-tab{padding:8px 20px;font-size:15px;font-weight:500;color:var(--qb-text-muted);cursor:pointer;position:relative;transition:color .2s}.cw-q-tab.active{color:var(--qb-purple);font-weight:700}.cw-q-tab.active:after{content:"";position:absolute;bottom:-18px;left:20px;right:20px;height:3px;background:var(--qb-purple);border-radius:2px}.cw-q-tab .count{font-weight:700}.cw-q-actions{margin-left:auto;display:flex;align-items:center;gap:16px}.cw-answer-mode{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--qb-text-secondary)}.cw-answer-mode-label{white-space:nowrap}.cw-answer-select{position:relative}.cw-answer-select-btn{display:flex;align-items:center;gap:4px;padding:6px 14px;background:none;border:none;color:var(--qb-purple);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}.cw-answer-select-btn svg{width:14px;height:14px;fill:var(--qb-purple);transition:transform .2s}.cw-answer-select-btn.open svg{transform:rotate(180deg)}.cw-answer-dropdown{display:none;position:absolute;top:calc(100% + 4px);right:0;background:#fff;border-radius:var(--qb-radius-sm);box-shadow:0 8px 32px #0000001f;z-index:100;min-width:160px;overflow:hidden}.cw-answer-dropdown.show{display:block}.cw-answer-opt{padding:12px 18px;font-size:14px;cursor:pointer;color:var(--qb-text-primary);transition:background .15s}.cw-answer-opt:hover{background:var(--qb-purple-pale)}.cw-answer-opt.active{color:var(--qb-purple);font-weight:600}.cw-btn-sort{display:flex;align-items:center;gap:6px;padding:7px 16px;border:1.5px solid var(--qb-border-light);border-radius:8px;background:#fff;font-size:13px;color:var(--qb-text-secondary);cursor:pointer;font-family:inherit;transition:all .2s}.cw-btn-sort:hover{border-color:var(--qb-purple-light);color:var(--qb-purple)}.cw-btn-sort svg{width:16px;height:16px;fill:currentColor}.cw-sort-bar{display:none;align-items:center;padding:16px 28px;background:var(--qb-purple-pale);border-bottom:1px solid var(--qb-border-light);gap:12px}.cw-sort-bar.show{display:flex}.cw-sort-bar-title{font-size:16px;font-weight:700;color:var(--qb-text-primary)}.cw-sort-bar-hint{font-size:13px;color:var(--qb-text-muted)}.cw-sort-bar-done{margin-left:auto;padding:7px 24px;border:1.5px solid var(--qb-border-light);border-radius:8px;background:#fff;font-size:14px;color:var(--qb-text-primary);cursor:pointer;font-family:inherit;font-weight:500;transition:all .2s}.cw-sort-bar-done:hover{border-color:var(--qb-purple);color:var(--qb-purple)}.cw-paper{padding:28px}.cw-section-title{font-size:16px;font-weight:700;color:var(--qb-text-primary);margin-bottom:20px;padding-left:12px;border-left:4px solid var(--qb-purple)}.cw-question{background:#fdfbff;border:1px solid var(--qb-border-light);border-radius:var(--qb-radius-md);margin-bottom:18px;transition:all .2s;animation:cwFadeInUp .4s ease both}.cw-question:hover{box-shadow:var(--qb-shadow-card);border-color:var(--qb-purple-soft)}.cw-question:nth-child(2){animation-delay:.06s}.cw-question:nth-child(3){animation-delay:.12s}.cw-question:nth-child(4){animation-delay:.18s}.cw-question:nth-child(5){animation-delay:.24s}.cw-q-head{display:flex;align-items:center;padding:16px 22px 0;gap:10px}.cw-q-num{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:linear-gradient(135deg,var(--qb-purple-light),var(--qb-purple));color:#fff;font-size:14px;font-weight:700;border-radius:8px;flex-shrink:0}.cw-q-type{font-size:12px;padding:3px 12px;border-radius:6px;font-weight:500;border:1px solid}.cw-q-type.single{color:var(--qb-purple);border-color:var(--qb-purple-light);background:var(--qb-purple-pale)}.cw-q-type.multi{color:var(--qb-blue);border-color:#a0d8f0;background:var(--qb-blue-light)}.cw-q-type.judge{color:var(--qb-green);border-color:#a0d8a0;background:var(--qb-green-light)}.cw-q-type.fill{color:#c08800;border-color:#f0d878;background:var(--qb-yellow-light)}.cw-q-type.subjective{color:#d4760a;border-color:#f0c878;background:#fff8e8}.cw-q-type.composite{color:var(--qb-red);border-color:#f0a8a8;background:#fdeaea}.cw-q-content{padding:14px 22px;font-size:14px;color:var(--qb-text-primary);line-height:1.9}.cw-q-content .q-options{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 32px;margin-top:10px;font-size:14px}.cw-q-content .q-options.single-col{grid-template-columns:1fr}.cw-q-foot{display:flex;align-items:center;justify-content:space-between;padding:12px 22px 16px;border-top:1px dashed var(--qb-border-light)}.cw-q-expand{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--qb-purple);cursor:pointer;font-weight:500;transition:opacity .2s;background:none;border:none;font-family:inherit}.cw-q-expand:hover{opacity:.7}.cw-q-expand svg{width:14px;height:14px;fill:var(--qb-purple);transition:transform .2s}.cw-q-expand.open svg{transform:rotate(180deg)}.cw-q-delete{display:flex;align-items:center;gap:4px;padding:6px 16px;border:1.5px solid var(--qb-border-light);border-radius:8px;background:#fff;font-size:13px;color:var(--qb-text-muted);cursor:pointer;font-family:inherit;transition:all .2s}.cw-q-delete:hover{border-color:var(--qb-red);color:var(--qb-red);background:#fdeaea}.cw-q-delete svg{width:14px;height:14px;fill:currentColor}.cw-q-answer{max-height:0;overflow:hidden;padding:0 22px;background:var(--qb-purple-pale);font-size:14px;color:var(--qb-text-primary);line-height:1.7;border-top:1px solid var(--qb-border-light);border-radius:0 0 var(--qb-radius-md) var(--qb-radius-md);transition:max-height .3s ease,padding .3s ease}.cw-q-answer.show{max-height:500px;padding:14px 22px 16px}.cw-question.dragging{opacity:.5;transform:scale(.98)}.cw-question.drag-over{border-color:var(--qb-purple);box-shadow:0 0 0 2px var(--qb-purple-light)}.cw-question .cw-q-drag-handle{display:none;width:20px;cursor:grab;color:var(--qb-text-muted);flex-shrink:0;font-size:18px;line-height:1;-webkit-user-select:none;user-select:none}.cw-sort-mode .cw-question .cw-q-drag-handle{display:flex;align-items:center}.cw-sort-mode .cw-q-foot{display:none}.cw-sort-mode .cw-question{cursor:grab}.cw-sort-mode .cw-question:active{cursor:grabbing}.cw-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:var(--qb-text-muted)}.cw-empty svg{width:48px;height:48px;fill:var(--qb-purple-soft);margin-bottom:12px}.cw-empty-text{font-size:14px}.cw-resource-list{display:flex;flex-direction:column;gap:12px}.cw-resource-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--qb-border-light);border-radius:10px;background:#fdfbff}.cw-resource-name{color:var(--qb-text-primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cw-resource-meta{color:var(--qb-text-muted);font-size:12px}.cw-resource-remove{border:1px solid var(--qb-border-light);background:#fff;color:var(--qb-text-secondary);border-radius:8px;padding:6px 12px;cursor:pointer;font-family:inherit}.cw-right{width:360px;flex-shrink:0;display:flex;flex-direction:column;gap:20px}.cw-panel{background:var(--qb-surface);border-radius:var(--qb-radius-lg);box-shadow:var(--qb-shadow-card);overflow:visible}.cw-panel-section{padding:20px 24px;border-bottom:1px solid var(--qb-border-light)}.cw-panel-section:last-child{border-bottom:none}.cw-panel-title{font-size:15px;font-weight:700;color:var(--qb-text-primary);margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}.cw-panel-title svg{width:16px;height:16px;fill:var(--qb-text-muted);cursor:pointer;transition:transform .3s}.cw-panel-title svg.rotated{transform:rotate(180deg)}.cw-class-list{display:flex;flex-wrap:wrap;gap:8px}.cw-class-item{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1.5px solid var(--qb-border-light);border-radius:8px;font-size:13px;color:var(--qb-text-primary);cursor:pointer;transition:all .2s;background:#fff}.cw-class-item:hover{border-color:var(--qb-purple-light)}.cw-class-item.selected{border-color:var(--qb-purple);background:var(--qb-purple-pale);color:var(--qb-purple);font-weight:600}.cw-class-item input{accent-color:var(--qb-purple);width:16px;height:16px;cursor:pointer}.cw-chapter-wrap{position:relative}.cw-chapter-input{width:100%;padding:10px 36px 10px 14px;background:#fdfbff;border:1.5px solid var(--qb-border-light);border-radius:var(--qb-radius-sm);font-size:13px;color:var(--qb-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:border-color .2s;cursor:pointer}.cw-chapter-input.has-value{color:var(--qb-text-primary)}.cw-chapter-input:hover{border-color:var(--qb-purple-light)}.cw-chapter-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;fill:var(--qb-text-muted);pointer-events:none;transition:transform .2s}.cw-chapter-arrow.open{transform:translateY(-50%) rotate(180deg)}.cw-chapter-dropdown{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--qb-border-light);border-radius:var(--qb-radius-sm);box-shadow:0 8px 40px #0000001f;z-index:200;max-height:320px;overflow:hidden;min-width:100%}.cw-chapter-dropdown.show{display:flex}.cw-cascade-col{flex:1;min-width:140px;max-height:320px;overflow-y:auto;border-right:1px solid var(--qb-border-light);scrollbar-width:thin}.cw-cascade-col:last-child{border-right:none}.cw-cascade-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-size:13px;cursor:pointer;color:var(--qb-text-primary);transition:background .15s;white-space:nowrap}.cw-cascade-item:hover{background:var(--qb-purple-pale)}.cw-cascade-item.active{background:var(--qb-purple-pale);color:var(--qb-purple);font-weight:600}.cw-cascade-item svg{width:14px;height:14px;fill:var(--qb-text-muted);flex-shrink:0}.cw-collapsible-body{max-height:500px;overflow:visible;transition:max-height .3s ease}.cw-collapsible-body.collapsed{max-height:0;overflow:hidden}@keyframes cwFadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.habit-header{height:64px;background:linear-gradient(135deg,var(--qb-purple) 0%,var(--qb-purple-deep) 100%);display:flex;align-items:center;padding:0 32px;box-shadow:0 2px 16px #9545804d;position:sticky;top:0;z-index:500}.habit-header-left{display:flex;align-items:center;gap:16px}.habit-btn-exit{display:flex;align-items:center;gap:6px;padding:8px 20px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:20px;font-size:14px;cursor:pointer;font-family:inherit;transition:all .2s}.habit-btn-exit:hover{background:#ffffff40}.habit-btn-exit svg{width:16px;height:16px;fill:#fff}.habit-header-center{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:24px}.habit-header-title{font-size:20px;font-weight:700;color:#fff;letter-spacing:4px;white-space:nowrap}.habit-header-book-selector{display:flex;align-items:center;gap:6px;background:#ffffff26;border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:6px 14px;color:#fff;font-size:13px;cursor:pointer;transition:background .2s;white-space:nowrap}.habit-header-book-selector:hover{background:#ffffff40}.habit-header-book-selector svg{width:14px;height:14px;fill:#fffc}.habit-header-right{margin-left:auto}.habit-btn-submit{padding:10px 32px;background:#fff;color:var(--qb-purple);border:none;border-radius:22px;font-size:15px;font-weight:700;cursor:pointer;letter-spacing:4px;transition:all .2s;font-family:inherit;box-shadow:0 2px 8px #0000001f}.habit-btn-submit:hover{background:#f3eeff;transform:translateY(-1px)}.habit-btn-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.habit-main{display:flex;gap:20px;padding:24px 32px;max-width:1280px;margin:0 auto;align-items:flex-start}.habit-left{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.habit-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 12px #95458012}.habit-template-row{display:flex;align-items:center;gap:24px;margin-bottom:20px;flex-wrap:wrap}.habit-template-label{font-size:14px;font-weight:600;color:#555;white-space:nowrap}.habit-template-options{display:flex;gap:24px;flex-wrap:wrap}.habit-template-option{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:14px;color:#333}.habit-template-option input[type=radio]{width:16px;height:16px;accent-color:var(--qb-purple);cursor:pointer}.habit-form-row{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.habit-form-row:last-child{margin-bottom:0}.habit-form-label{width:70px;flex-shrink:0;font-size:14px;font-weight:600;color:#555;padding-top:8px}.habit-form-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;color:#333;outline:none;transition:border-color .2s}.habit-form-input:focus{border-color:var(--qb-purple)}.habit-form-textarea{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;color:#333;min-height:100px;resize:vertical;outline:none;transition:border-color .2s;line-height:1.6}.habit-form-textarea:focus{border-color:var(--qb-purple)}.habit-resource-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.habit-resource-title{font-size:14px;font-weight:600;color:#555}.habit-resource-add-btn{display:flex;align-items:center;gap:4px;padding:6px 14px;background:#f5f0ff;color:var(--qb-purple);border:1px solid var(--qb-purple-light, #c8b4e8);border-radius:8px;font-size:13px;font-family:inherit;cursor:pointer;transition:all .2s}.habit-resource-add-btn:hover{background:#ede7ff}.habit-resource-add-btn:disabled{opacity:.5;cursor:not-allowed}.habit-resource-list{display:flex;flex-direction:column;gap:8px}.habit-resource-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#faf9fe;border:1px solid #ede8f8;border-radius:8px}.habit-resource-rank{width:24px;height:24px;background:#e8e0f8;color:var(--qb-purple);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.habit-resource-icon{width:32px;height:32px;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.habit-resource-icon svg{width:16px;height:16px;fill:#fff}.habit-resource-name{flex:1;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.habit-resource-remove{padding:4px 10px;background:transparent;color:#999;border:1px solid #ddd;border-radius:6px;font-size:12px;cursor:pointer;font-family:inherit;transition:all .2s;flex-shrink:0}.habit-resource-remove:hover{color:#e53e3e;border-color:#e53e3e;background:#fff5f5}.habit-resource-empty{text-align:center;padding:24px;color:#aaa;font-size:14px}.habit-right{width:300px;flex-shrink:0}.habit-panel{background:#fff;border-radius:16px;box-shadow:0 2px 12px #95458012;overflow:hidden}.habit-panel-section{border-bottom:1px solid #f0eaf8;padding:16px 20px}.habit-panel-section:last-child{border-bottom:none}.habit-target-tabs{display:flex;gap:0;background:#f5f0ff;border-radius:8px;padding:3px;margin-bottom:12px}.habit-target-tab{flex:1;padding:6px 0;text-align:center;font-size:13px;color:#888;cursor:pointer;border-radius:6px;transition:all .2s;font-weight:500}.habit-target-tab.active{background:#fff;color:var(--qb-purple);box-shadow:0 1px 4px #95458026;font-weight:600}.habit-class-list{display:flex;flex-wrap:wrap;gap:8px}.habit-class-item{display:flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid #e0d8f0;border-radius:20px;font-size:13px;color:#555;cursor:pointer;transition:all .2s;background:#faf8ff}.habit-class-item:hover{border-color:var(--qb-purple);color:var(--qb-purple)}.habit-class-item.selected{background:var(--qb-purple);color:#fff;border-color:var(--qb-purple)}.habit-class-item input[type=checkbox]{display:none}.habit-section-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none}.habit-section-title{font-size:14px;font-weight:600;color:#333}.habit-section-chevron{width:18px;height:18px;fill:#999;transition:transform .2s}.habit-section-chevron.open{transform:rotate(180deg)}.habit-setting-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f5f0ff}.habit-setting-row:last-child{border-bottom:none}.habit-setting-label{font-size:13px;color:#555}.habit-setting-value{font-size:13px;color:#333;font-weight:500}.habit-setting-input{width:130px;padding:4px 8px;border:1px solid #e0d8f0;border-radius:6px;font-size:13px;font-family:inherit;color:#333;outline:none;text-align:right}.habit-setting-input:focus{border-color:var(--qb-purple)}.habit-setting-row:has(.habit-period-row){flex-direction:column;align-items:flex-start;gap:6px}.habit-period-row{display:flex;align-items:center;gap:6px;font-size:13px;color:#333;flex-wrap:wrap}.habit-period-row input[type=date]{padding:4px 8px;border:1px solid #e0d8f0;border-radius:6px;font-size:13px;font-family:inherit;color:#333;outline:none;min-width:120px}.habit-period-row input[type=date]:focus{border-color:var(--qb-purple)}.habit-period-sep{color:#aaa}.habit-freq-select{padding:4px 8px;border:1px solid #e0d8f0;border-radius:6px;font-size:13px;font-family:inherit;color:#333;outline:none;background:#fff;cursor:pointer}.habit-freq-select:focus{border-color:var(--qb-purple)}.habit-submit-type-row{display:flex;gap:20px;margin-bottom:10px}.habit-radio-option{display:flex;align-items:center;gap:5px;font-size:13px;color:#333;cursor:pointer}.habit-radio-option input[type=radio]{width:14px;height:14px;accent-color:var(--qb-purple);cursor:pointer}.habit-media-row{display:flex;gap:16px}.habit-checkbox-option{display:flex;align-items:center;gap:5px;font-size:13px;color:#333;cursor:pointer}.habit-checkbox-option input[type=checkbox]{width:14px;height:14px;accent-color:var(--qb-purple);cursor:pointer}.habit-collapsible-body{overflow:hidden;transition:max-height .25s ease,opacity .25s;max-height:400px;opacity:1}.habit-collapsible-body.collapsed{max-height:0;opacity:0}.habit-chapter-wrap{position:relative}.habit-chapter-input{padding:7px 32px 7px 10px;border:1px solid #e0d8f0;border-radius:8px;font-size:13px;color:#aaa;cursor:pointer;background:#faf8ff;width:100%;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:border-color .2s}.habit-chapter-input.has-value{color:#333}.habit-chapter-input:hover{border-color:var(--qb-purple)}.habit-chapter-arrow{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:16px;height:16px;fill:#aaa;pointer-events:none}.habit-chapter-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e0d8f0;border-radius:10px;box-shadow:0 8px 24px #9545801f;z-index:200;display:none;flex-direction:row;max-height:220px;overflow:hidden}.habit-chapter-dropdown.show{display:flex}.habit-cascade-col{flex:1;overflow-y:auto;border-right:1px solid #f5f0ff;padding:4px 0}.habit-cascade-col:last-child{border-right:none}.habit-cascade-item{padding:8px 14px;font-size:13px;color:#444;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:4px;transition:background .15s}.habit-cascade-item:hover{background:#f5f0ff;color:var(--qb-purple)}.habit-cascade-item.active{background:#ede7ff;color:var(--qb-purple);font-weight:600}.habit-cascade-item svg{width:14px;height:14px;fill:currentColor;flex-shrink:0}.assistant-container{height:calc(100vh - 64px);box-sizing:border-box;overflow:hidden;display:flex;flex-direction:column;padding:32px 48px 24px;background:linear-gradient(180deg,#f8f2fc,#f0e8f8,#ede5f5 60%,#f4f0fa);position:relative}.deco{position:absolute;border-radius:50%;opacity:.5;pointer-events:none}.deco-1{width:12px;height:12px;background:#f9c41a;top:80px;left:60px;animation:decoFloat 6s ease-in-out infinite}.deco-2{width:8px;height:8px;background:#e8373e;top:140px;left:180px;animation:decoFloat 5s ease-in-out infinite 1s}.deco-3{width:10px;height:10px;background:#00a3e4;top:200px;right:120px;animation:decoFloat 7s ease-in-out infinite .5s}.deco-4{width:7px;height:7px;background:#5cb531;bottom:160px;left:100px;animation:decoFloat 5.5s ease-in-out infinite 2s}.deco-5{width:14px;height:14px;background:#f9c41a;bottom:200px;right:200px;animation:decoFloat 6.5s ease-in-out infinite 1.5s;opacity:.35}.deco-6{width:6px;height:6px;background:#e8373e;top:300px;left:300px;animation:decoFloat 4.5s ease-in-out infinite .8s}.deco-7{width:9px;height:9px;background:#5cb531;top:120px;right:350px;animation:decoFloat 5s ease-in-out infinite 2.5s}.deco-8{width:11px;height:11px;background:#00a3e4;bottom:120px;right:80px;animation:decoFloat 6s ease-in-out infinite 3s;opacity:.4}@keyframes decoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.chat-container{flex:1;max-width:900px;width:100%;margin:0 auto;background:#ffffffbf;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 8px 48px #95458014,0 1px #fff9 inset;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.5);position:relative;z-index:1}.chat-header{padding:20px 28px;border-bottom:1px solid rgba(240,234,245,.6);display:flex;align-items:center;gap:12px;background:#ffffff80}.chat-header-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#954580,#b06a9a);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #95458040;overflow:hidden}.chat-header-icon img{width:100%;height:100%;object-fit:cover;border-radius:10px}.chat-header h2{font-size:18px;font-weight:800;color:#1e1533;margin:0}.chat-header-status{font-size:12px;color:#5cb531;font-weight:600;display:flex;align-items:center;gap:4px;margin-left:8px}.chat-header-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#5cb531}.chat-messages{flex:1;overflow-y:auto;padding:32px 28px;display:flex;flex-direction:column;gap:20px}.chat-messages::-webkit-scrollbar{width:5px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#95458026;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#9545804d}.welcome-area{display:flex;flex-direction:column;align-items:center;padding:24px 0 16px}.mascot-container{position:relative;width:200px;height:200px;margin-bottom:28px}.mascot-img{width:100%;height:100%;object-fit:contain;animation:mascotBounce 3s ease-in-out infinite;filter:drop-shadow(0 8px 24px rgba(149,69,128,.2))}.mascot-glow{position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:120px;height:20px;border-radius:50%;background:radial-gradient(ellipse,rgba(149,69,128,.15),transparent 70%);animation:glowPulse 3s ease-in-out infinite}.sparkle{position:absolute;pointer-events:none}.sparkle svg{fill:#f9c41a}.sparkle-1{top:20px;left:-10px;animation:sparkleAnim 2.5s ease-in-out infinite}.sparkle-2{top:10px;right:-5px;animation:sparkleAnim 3s ease-in-out infinite .8s}.sparkle-3{bottom:40px;left:-20px;animation:sparkleAnim 2.8s ease-in-out infinite 1.5s}.sparkle-4{top:60px;right:-18px;animation:sparkleAnim 3.2s ease-in-out infinite .4s}@keyframes mascotBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glowPulse{0%,to{opacity:.6;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.1)}}@keyframes sparkleAnim{0%,to{opacity:.3;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1) rotate(15deg)}}.welcome-text{font-size:16px;color:#1e1533;font-weight:600;text-align:center;margin-bottom:10px;line-height:1.8}.welcome-sub{font-size:13px;color:#9b8dab;text-align:center;line-height:1.8}.quick-asks{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:16px 0 8px}.quick-ask{padding:10px 20px;border-radius:22px;font-size:13px;font-weight:500;color:#954580;background:#9545800f;border:1px solid rgba(149,69,128,.12);cursor:pointer;font-family:inherit;transition:all .2s}.quick-ask:hover{background:#f8f0f6;border-color:#b06a9a;box-shadow:0 2px 12px #9545801a;transform:translateY(-1px)}.msg{display:flex;gap:12px;max-width:80%;animation:msgIn .3s ease}.msg.bot{align-self:flex-start}.msg.user{align-self:flex-end;flex-direction:row-reverse}.msg-avatar{width:36px;height:36px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.msg.bot .msg-avatar{background:linear-gradient(135deg,#954580,#b06a9a)}.msg.bot .msg-avatar img{width:100%;height:100%;object-fit:cover;border-radius:10px}.msg.user .msg-avatar{background:#f8f0f6}.msg.user .msg-avatar svg{width:20px;height:20px;fill:#954580}.msg-bubble{padding:14px 20px;border-radius:16px;font-size:14px;line-height:1.8}.msg.bot .msg-bubble{background:#fff;color:#1e1533;border:1px solid rgba(240,234,245,.5);box-shadow:0 2px 8px #00000008;border-top-left-radius:4px}.msg.user .msg-bubble{background:linear-gradient(135deg,#954580,#7a3368);color:#fff;border-top-right-radius:4px;box-shadow:0 4px 12px #95458033}@keyframes msgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.typing-dots{display:inline-flex;gap:4px;padding:4px 0}.typing-dots span{width:6px;height:6px;border-radius:50%;background:#b06a9a;animation:typingBounce 1.2s infinite}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.chat-input-area{padding:16px 24px 20px;border-top:1px solid rgba(240,234,245,.6);display:flex;align-items:center;gap:12px;background:#ffffff80}.chat-input{flex:1;padding:14px 20px;border-radius:24px;border:1.5px solid #F0EAF5;font-size:14px;font-family:inherit;color:#1e1533;outline:none;background:#fff;transition:border-color .2s,box-shadow .2s;resize:none;line-height:1.5;max-height:120px;overflow-y:auto}.chat-input::placeholder{color:#9b8dab}.chat-input:focus{border-color:#b06a9a;box-shadow:0 0 0 3px #95458014}.send-btn{display:flex;align-items:center;gap:6px;padding:12px 28px;border-radius:24px;border:none;font-size:14px;font-weight:700;color:#fff;background:linear-gradient(135deg,#954580,#7a3368);cursor:pointer;font-family:inherit;box-shadow:0 4px 16px #9545804d;transition:all .2s;flex-shrink:0}.send-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 24px #95458066}.send-btn:active:not(:disabled){transform:translateY(0)}.send-btn svg{width:16px;height:16px;fill:#fff}.send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.msg-bubble table{width:100%;border-collapse:collapse;margin:8px 0}.msg-bubble th{border:1px solid #e8dff0;padding:8px;text-align:left;background:#f8f4fb;font-weight:600}.msg-bubble td{border:1px solid #e8dff0;padding:8px}.msg-bubble code{background:#f5f0f8;padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,Menlo,monospace;font-size:13px}.msg-bubble a{color:#954580;text-decoration:underline}@media (max-width: 768px){.assistant-container{padding:16px}.chat-container{border-radius:16px}.msg{max-width:90%}.quick-asks{gap:8px}.quick-ask{padding:8px 14px;font-size:12px}}.auto-login-container{display:flex;justify-content:center;align-items:center;height:100vh;width:100vw;background:#f0f2f5}*{margin:0;padding:0;box-sizing:border-box}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}#root{width:100vw;height:100vh;overflow:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{font-family:Noto Sans SC,DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ant-btn{font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.ant-btn-primary{background:linear-gradient(135deg,#a64791,#823273)!important;border:none!important;box-shadow:0 2px 8px #a647914d!important}.ant-btn-primary:hover,.ant-btn-primary:focus{background:linear-gradient(135deg,#ba5ba5,#964687)!important;box-shadow:0 4px 12px #a6479166!important;transform:translateY(-1px)}.ant-card{border-radius:12px;box-shadow:0 2px 8px #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #f0f0f0}.ant-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.ant-card-head{border-bottom:1px solid #f0f0f0;background:linear-gradient(to bottom,#fafafa,#fff);border-radius:12px 12px 0 0;padding:16px 24px}.ant-card-head-title{font-size:16px;font-weight:600;color:#333}.ant-table{border-radius:8px;overflow:hidden}.ant-table-thead>tr>th{background:linear-gradient(to bottom,#fafafa,#f5f5f5);font-weight:600;color:#333;border-bottom:2px solid #f0f0f0}.ant-table-tbody>tr:hover>td{background:#f5f7fa}.ant-table-tbody>tr>td{transition:all .3s}.ant-tag{border-radius:6px;padding:4px 12px;font-size:13px;font-weight:500;border:none;max-width:100px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.ant-input,.ant-input-password,.ant-select-selector{border-radius:8px;transition:all .3s}.ant-input:hover,.ant-input-password:hover,.ant-select-selector:hover{border-color:#a64791}.ant-input:focus,.ant-input-password:focus,.ant-select-focused .ant-select-selector{border-color:#a64791;box-shadow:0 0 0 2px #a647911a}.ant-modal-content{border-radius:12px;overflow:hidden}.ant-modal-header{background:linear-gradient(to bottom,#fafafa,#fff);border-bottom:1px solid #f0f0f0;padding:20px 24px}.ant-modal-title{font-size:18px;font-weight:600;color:#333}.ant-message-notice-content{border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:12px 16px}.ant-statistic{text-align:center}.ant-statistic-title{color:#666;font-size:14px;margin-bottom:8px}.ant-statistic-content{color:#333;font-size:24px;font-weight:600}.ant-pagination-item{border-radius:6px;transition:all .3s}.ant-pagination-item:hover{border-color:#a64791;transform:scale(1.05)}.ant-pagination-item-active a{color:#fff}.ant-switch-checked,.ant-progress-bg{background:linear-gradient(135deg,#a64791,#823273)!important}h1,h2,h3,h4,h5,h6{color:#333;font-weight:600}h2{font-size:24px;margin-bottom:16px}.fade-in{animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ant-spin{color:#a64791}.ant-empty-description{color:#999}@media (max-width: 768px){.ant-card-head-title{font-size:14px}h2{font-size:20px}}:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--text-primary: #000000;--text-secondary: #666666;--border-color: #d9d9d9}[data-theme=dark]{--bg-primary: #1f1f1f;--bg-secondary: #2d2d2d;--text-primary: #ffffff;--text-secondary: #b3b3b3;--border-color: #434343}.dark-theme{background-color:var(--bg-primary);color:var(--text-primary)}.dark-theme .ant-layout{background:var(--bg-primary);color:var(--text-primary)}.dark-theme .top-nav{background:linear-gradient(135deg,#5e2550,#3d1833)!important}.dark-theme .ant-layout-sider{background:var(--bg-secondary)}.dark-theme .main-content{background:#000!important;color:var(--text-primary)}.dark-theme .ant-menu{background:var(--bg-secondary);color:var(--text-primary)}.dark-theme .ant-menu-item{color:var(--text-primary)}.dark-theme .ant-menu-item:hover{color:#a64791}.dark-theme .ant-menu-item-selected{background-color:#a6479126;color:#a64791}.dark-theme .ant-card{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}.dark-theme .ant-card-head{color:var(--text-primary);border-bottom-color:var(--border-color)}.dark-theme .ant-card-head-title{color:var(--text-primary)}.dark-theme .ant-table{background:var(--bg-secondary);color:var(--text-primary)}.dark-theme .ant-table-thead>tr>th{background:var(--bg-primary);color:var(--text-primary);border-bottom-color:var(--border-color)}.dark-theme .ant-table-tbody>tr>td{border-bottom-color:var(--border-color);color:var(--text-primary)!important}.dark-theme .ant-table-cell{background:#000!important;color:#fff!important}.dark-theme .ant-table-thead>tr>th.ant-table-cell{background:#000!important;color:#fff!important;border-bottom-color:var(--border-color)}.dark-theme .ant-table-tbody>tr>td.ant-table-cell{background:#000!important;color:#fff!important;border-bottom-color:var(--border-color)}.dark-theme .ant-table-tbody>tr:hover>td.ant-table-cell{background:#ffffff26!important;color:#fff!important}.dark-theme .ant-table-cell *,.dark-theme .ant-table-cell span:not(.ant-tag):not(.anticon),.dark-theme .ant-table-cell a,.dark-theme .ant-table-cell div{color:#fff!important}.dark-theme .ant-table-cell .ant-btn,.dark-theme .ant-table-cell .ant-btn-primary{color:#fff!important}.dark-theme .ant-table-tbody>tr:hover>td{background:#ffffff26!important;color:var(--text-primary)!important}.dark-theme .ant-table-tbody>tr.ant-table-row-selected>td{background:#1890ff26!important}.dark-theme .ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#1890ff4d!important}.dark-theme .ant-input,.dark-theme .ant-input-number,.dark-theme .ant-input-password,.dark-theme .ant-select-selector,.dark-theme .ant-picker{background:var(--bg-primary);border-color:var(--border-color);color:var(--text-primary)!important}.dark-theme .ant-input::placeholder,.dark-theme .ant-input-password::placeholder,.dark-theme .ant-select-selection-placeholder,.dark-theme .ant-picker-input>input::placeholder{color:#ffffff73!important;opacity:1}.dark-theme .ant-input-password-icon{color:var(--text-secondary)}.dark-theme .ant-input-password-icon:hover{color:var(--text-primary)}.dark-theme .ant-modal-content{background:var(--bg-secondary)}.dark-theme .ant-modal-header{background:var(--bg-secondary);border-bottom-color:var(--border-color)}.dark-theme .ant-modal-title{color:var(--text-primary)}.dark-theme .ant-descriptions-item-label{color:var(--text-secondary)}.dark-theme .ant-descriptions-item-content{color:var(--text-primary)}.dark-theme .ant-form-item-label>label{color:var(--text-primary)}.dark-theme .ant-typography,.dark-theme .ant-typography h1,.dark-theme .ant-typography h2,.dark-theme .ant-typography h3,.dark-theme .ant-typography h4,.dark-theme .ant-typography h5{color:var(--text-primary)}.dark-theme .ant-statistic-title{color:var(--text-secondary)}.dark-theme .ant-statistic-content{color:var(--text-primary)}.dark-theme .ant-btn-default{background:var(--bg-primary);border-color:var(--border-color);color:var(--text-primary)}.dark-theme .ant-btn-default:hover{border-color:#1890ff;color:#1890ff}.dark-theme .ant-select-dropdown{background:var(--bg-secondary)}.dark-theme .ant-select-item{color:var(--text-primary)}.dark-theme .ant-select-item-option-selected{background-color:#1890ff26}.dark-theme .ant-picker-dropdown,.dark-theme .ant-picker-panel-container{background:var(--bg-secondary)}.dark-theme .ant-picker-header,.dark-theme .ant-picker-content th,.dark-theme .ant-picker-cell,.dark-theme .ant-progress-text{color:var(--text-primary)}.dark-theme .ant-tabs-tab{color:var(--text-secondary)}.dark-theme .ant-tabs-tab-active{color:#1890ff}.dark-theme .ant-tabs-ink-bar{background:#1890ff}.dark-theme .ant-list-item{color:var(--text-primary);border-bottom-color:var(--border-color)}.dark-theme .ant-space-item{color:var(--text-primary)}.dark-theme .ant-input-search .ant-input,.dark-theme .ant-input-group-wrapper .ant-input{color:var(--text-primary)!important}.dark-theme .ant-input-search .ant-input::placeholder{color:#ffffff73!important}.dark-theme .ant-input-search-button{color:var(--text-primary)!important}.dark-theme .ant-input-search-button:hover{color:#1890ff!important}.dark-theme .ant-select-selection-item{color:var(--text-primary)!important}.dark-theme .ant-select-selection-placeholder{color:#ffffff73!important}.dark-theme .ant-select-arrow{color:var(--text-secondary)!important}.dark-theme .ant-select:hover .ant-select-arrow{color:var(--text-primary)!important}.dark-theme .ant-form-item-label>label{color:var(--text-primary)!important}.dark-theme .ant-space-item,.dark-theme h1,.dark-theme h2,.dark-theme h3,.dark-theme h4,.dark-theme h5,.dark-theme h6{color:var(--text-primary)!important}.dark-theme .ant-picker-input>input{color:var(--text-primary)!important}.dark-theme .ant-picker-input>input::placeholder{color:#ffffff73!important}.dark-theme .ant-input{color:var(--text-primary)!important}.dark-theme .ant-input::placeholder{color:#ffffff73!important}.dark-theme .ant-table-tbody>tr>td .ant-btn-link{color:#1890ff!important}.dark-theme .ant-table-tbody>tr>td .ant-btn-link:hover{color:#40a9ff!important}.dark-theme .ant-table-tbody>tr>td .ant-btn{color:var(--text-primary)!important}.dark-theme .ant-table-tbody>tr>td .ant-btn-primary{color:#fff!important}.dark-theme .ant-table-tbody>tr>td .ant-btn-default{color:var(--text-primary)!important;border-color:var(--border-color)}.dark-theme .ant-table-tbody>tr>td .ant-btn-default:hover{color:#1890ff!important;border-color:#1890ff}.dark-theme .ant-table-tbody>tr>td,.dark-theme .ant-table-tbody>tr>td span:not(.ant-tag):not(.anticon),.dark-theme .ant-table-tbody>tr>td a{color:var(--text-primary)!important}.dark-theme .ant-table-tbody>tr:hover>td,.dark-theme .ant-table-tbody>tr:hover>td span:not(.ant-tag):not(.anticon),.dark-theme .ant-table-tbody>tr:hover>td a{color:var(--text-primary)!important}.dark-theme .ant-tag{border-color:var(--border-color)}.dark-theme .ant-tag-blue{background:#1890ff33!important;border-color:#1890ff80!important;color:#69b7ff!important}.dark-theme .ant-tag-green{background:#52c41a33!important;border-color:#52c41a80!important;color:#95de64!important}.dark-theme .ant-tag-red{background:#ff4d4f33!important;border-color:#ff4d4f80!important;color:#ff7875!important}.dark-theme .ant-tag-orange{background:#faad1433!important;border-color:#faad1480!important;color:#ffc53d!important}.dark-theme .ant-tag-purple{background:#722ed133!important;border-color:#722ed180!important;color:#b37feb!important}.dark-theme .ant-pagination-item,.dark-theme .ant-pagination-item-link,.dark-theme .ant-pagination-options{color:var(--text-primary)!important}.dark-theme .ant-pagination-item{background:var(--bg-primary)!important;border-color:var(--border-color)!important}.dark-theme .ant-pagination-item a{color:var(--text-primary)!important}.dark-theme .ant-pagination-item:hover{border-color:#1890ff!important}.dark-theme .ant-pagination-item:hover a{color:#1890ff!important}.dark-theme .ant-pagination-item-active{background:#1890ff!important;border-color:#1890ff!important}.dark-theme .ant-pagination-item-active a{color:#fff!important}.dark-theme .ant-pagination-options .ant-select-selector{background:var(--bg-primary)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}.dark-theme .ant-pagination-options .ant-select-selection-item{color:var(--text-primary)!important}.dark-theme .ant-empty-description{color:var(--text-secondary)}.dark-theme .ant-descriptions-item-label{color:var(--text-secondary)!important}.dark-theme .ant-descriptions-item-content{color:var(--text-primary)!important}.dark-theme .dashboard-header{background:linear-gradient(135deg,#434343,#2d2d2d)!important}.dark-theme h2,.dark-theme h3,.dark-theme h4,.dark-theme p,.dark-theme span:not(.ant-tag):not(.anticon):not(.ant-btn){color:var(--text-primary)!important}.dark-theme .ant-table-wrapper .ant-table{color:var(--text-primary)!important}.dark-theme .ant-table-wrapper .ant-table-thead>tr>th{color:var(--text-primary)!important;font-weight:600}.dark-theme .ant-table-wrapper .ant-table-tbody>tr>td{color:var(--text-primary)!important}.dark-theme .ant-table-tbody>tr:hover>td .ant-btn-link{color:#40a9ff!important}.dark-theme .ant-table-tbody>tr:hover>td .ant-btn{color:var(--text-primary)!important}body,.ant-layout,.ant-card,.ant-table,.ant-input,.ant-select-selector{transition:background-color .3s ease,color .3s ease,border-color .3s ease}.dark-theme .ant-input,.dark-theme .ant-input-number input,.dark-theme .ant-input-password input{color:var(--text-primary)!important}.dark-theme .ant-select:not(.ant-select-disabled) .ant-select-selector{color:var(--text-primary)!important}.dark-theme .ant-select:not(.ant-select-disabled) .ant-select-selection-item{color:var(--text-primary)!important}.dark-theme .ant-select-item{color:var(--text-primary)!important}.dark-theme .ant-select-item:hover{background:#ffffff1a!important}.dark-theme .ant-select-item-option-selected{background:#1890ff33!important;color:#1890ff!important}.dark-theme .ant-btn{color:var(--text-primary)}.dark-theme .ant-btn-default{color:var(--text-primary)!important;border-color:var(--border-color)}.dark-theme .ant-btn-default:hover,.dark-theme .ant-btn-default:focus{color:#1890ff!important;border-color:#1890ff}.dark-theme .ant-btn-primary{color:#fff!important}.dark-theme .ant-btn .anticon{color:inherit}.dark-theme .ant-space{color:var(--text-primary)}.dark-theme .ant-space-item>*{color:inherit}.dark-theme .ant-table-tbody>tr>td{color:var(--text-primary)!important}.dark-theme .ant-table-tbody>tr:hover>td{color:var(--text-primary)!important}.dark-theme .ant-table-thead>tr>th{color:var(--text-primary)!important;font-weight:600}.dark-theme .ant-pagination-total-text,.dark-theme .ant-pagination-options-quick-jumper,.dark-theme .ant-pagination-options-quick-jumper input{color:var(--text-primary)!important}.dark-theme .ant-form-item-extra{color:#fff!important}.dark-theme .ant-tag,.dark-theme .ant-tag-blue,.dark-theme .ant-tag-green,.dark-theme .ant-tag-red,.dark-theme .ant-tag-orange,.dark-theme .ant-tag-purple,.dark-theme .ant-select-selection-search-input{color:#000!important}.dark-theme .ant-select-selection-search-input::placeholder{color:#00000073!important}.dark-theme .ant-menu-item:hover .ant-menu-item-icon,.dark-theme .ant-menu-item-selected .ant-menu-item-icon,.dark-theme .ant-list-empty-text{color:#fff!important}.dark-theme .ant-dropdown{background:var(--bg-secondary)!important}.dark-theme .ant-dropdown-menu{background:var(--bg-secondary)!important;border-color:var(--border-color)!important;box-shadow:0 3px 6px -4px #0000007a,0 6px 16px #00000052,0 9px 28px 8px #0003!important}.dark-theme .ant-dropdown-menu-item{color:var(--text-primary)!important;background:transparent!important}.dark-theme .ant-dropdown-menu-item:hover,.dark-theme .ant-dropdown-menu-item-active{background:#ffffff14!important;color:var(--text-primary)!important}.dark-theme .ant-dropdown-menu-item-selected,.dark-theme .ant-dropdown-menu-item-selected:hover{background:#1890ff26!important;color:#1890ff!important}.dark-theme .ant-dropdown-menu-item-disabled,.dark-theme .ant-dropdown-menu-item-disabled:hover{color:#ffffff40!important;background:transparent!important;cursor:not-allowed!important}.dark-theme .ant-dropdown-menu-item-icon,.dark-theme .ant-dropdown-menu-item:hover .ant-dropdown-menu-item-icon{color:var(--text-primary)!important}.dark-theme .ant-dropdown-menu-item-selected .ant-dropdown-menu-item-icon{color:#1890ff!important}.dark-theme .ant-dropdown-menu-item-divider{background-color:var(--border-color)!important}.dark-theme .ant-dropdown-open,.dark-theme .ant-drop-down-open,.dark-theme .ant-dropdown-open .anticon,.dark-theme .ant-drop-down-open .anticon{color:var(--text-primary)!important}.dark-theme .ant-btn.ant-dropdown-open,.dark-theme .ant-btn.ant-drop-down-open{background:#ffffff14!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}.dark-theme .ant-btn.ant-dropdown-open:hover,.dark-theme .ant-btn.ant-drop-down-open:hover{border-color:#1890ff!important;color:#1890ff!important}.dark-theme .ant-dropdown-menu-item>span,.dark-theme .ant-dropdown-menu-item>a{color:inherit!important}
