[hidden]{display:none!important}
.view-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border);margin:0 0 20px;padding-bottom:12px;flex-wrap:wrap}.view-tabs button{background:transparent;border:0;padding:9px 16px;border-radius:8px;color:var(--text-secondary);font:inherit;cursor:pointer}.view-tabs button.active{background:var(--primary-light,#e9f5f0);color:var(--primary);font-weight:600}
.model-registry{padding:0!important;overflow:hidden}.model-registry code{font-size:12px;color:var(--text-secondary);white-space:nowrap}.model-footnote{font-size:12px;line-height:1.8;margin:16px 2px}.record-audit{border-top:1px solid var(--border);margin-top:24px;padding-top:16px}.record-audit summary{cursor:pointer;font-weight:600;margin-bottom:14px}.workflow-summary{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.workflow-summary p{margin:8px 0 0}.workflow-timeline{padding:0 0 0 22px;list-style:none;margin:24px 0}.workflow-timeline li{position:relative;border-left:1px solid var(--border);padding:0 0 24px 22px}.workflow-timeline li:before{content:'';position:absolute;left:-5px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--primary)}.workflow-timeline p{margin:8px 0 0;font-size:13px}.approval-submit .form-row{margin-top:18px}
.assistant-root{position:fixed;inset:0;pointer-events:none;z-index:1900;font-family:inherit}.assistant-root button,.assistant-root select,.assistant-root textarea{font-family:inherit}.assistant-fab{pointer-events:auto;position:fixed;right:24px;bottom:24px;width:52px;height:52px;display:grid;place-items:center;border:1px solid #ffffff88;border-radius:18px;background:var(--primary,#16866b);color:#fff;box-shadow:0 5px 20px #1c594533;cursor:pointer;touch-action:none;z-index:2;transition:box-shadow .2s}.assistant-fab:hover{box-shadow:0 8px 28px #1c59454d}.assistant-fab svg{width:28px;height:28px}.assistant-panel{pointer-events:auto;position:fixed;right:24px;bottom:88px;width:440px;height:min(700px,calc(100dvh - 120px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:20px;box-shadow:0 18px 65px #16354b24;overflow:hidden}.assistant-panel.expanded{width:min(850px,calc(100vw - 48px));height:calc(100dvh - 120px)}
.assistant-header{display:flex;align-items:center;gap:8px;height:64px;padding:0 16px;border-bottom:1px solid #f0f2f4;flex-shrink:0}.assistant-header{cursor:move;touch-action:none}.assistant-header.dragging{user-select:none}.assistant-header strong{flex:1;font-size:15px;color:var(--text)}.assistant-brand{color:var(--primary);display:flex}.assistant-brand svg{width:23px;height:23px}.assistant-icon{width:30px;height:30px;display:grid;place-items:center;border:0!important;background:transparent!important;color:#75818b;border-radius:8px;padding:6px!important;cursor:pointer}.assistant-icon:hover{background:#f3f5f6!important;color:var(--text)}.assistant-icon svg{width:19px;height:19px}.assistant-messages{flex:1;overflow:auto;padding:22px;min-height:0;scroll-behavior:smooth}.assistant-welcome{text-align:center;padding:40px 0 0}.assistant-welcome-icon{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:18px;background:#eff7f3;color:var(--primary)}.assistant-welcome-icon svg{width:32px;height:32px}.assistant-welcome h3{font-size:22px;font-weight:600;letter-spacing:-.4px;margin:18px 0 10px;color:var(--text)}.assistant-welcome p{font-size:13px;color:#88929a;margin-bottom:28px}.assistant-suggestions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.assistant-suggestions button{text-align:left;background:#fff;color:#586773;border:1px solid #e9edef;border-radius:12px;padding:14px;font-size:12px;line-height:1.5;cursor:pointer}.assistant-suggestions button:hover{border-color:var(--primary);background:#fafcfb}.assistant-message{margin-bottom:22px;line-height:1.8;font-size:14px;color:var(--text);overflow-wrap:anywhere}.assistant-message-text{white-space:pre-wrap}.assistant-message.user{margin-left:42px;background:#f2f4f5;border-radius:16px 16px 4px 16px;padding:11px 16px;width:fit-content;max-width:calc(100% - 42px);justify-self:end}.assistant-message.assistant{padding:3px 0}.assistant-copy{border:0;background:none;color:#9aa2a9;cursor:pointer;padding:4px 0;font-size:11px}.assistant-composer{margin:0 16px;border:1px solid #e0e5e7;border-radius:16px;background:#fafbfc;padding:10px 12px;flex-shrink:0}.assistant-composer:focus-within{border-color:#9abeb0;background:#fff}.assistant-composer textarea{display:block!important;resize:none;border:0!important;box-shadow:none!important;background:transparent!important;outline:0!important;width:100%!important;min-height:52px!important;max-height:140px;padding:3px 2px!important;font-size:14px;line-height:1.6;box-sizing:border-box}.assistant-composer-tools{display:flex;align-items:center;gap:6px}.assistant-model{width:auto!important;max-width:160px!important;min-height:28px!important;padding:2px 18px 2px 4px!important;border:0!important;background:transparent!important;color:#61746b!important;font-size:11px!important;box-shadow:none!important;cursor:pointer}.assistant-keyhint{font-size:10px;color:#a4acb1;flex:1;text-align:right}.assistant-composer-tools .assistant-icon{background:var(--primary)!important;color:#fff;border-radius:50%;flex-shrink:0;margin-left:auto}.assistant-stop{width:10px;height:10px;background:#fff;border-radius:2px}.assistant-disclaimer{text-align:center;font-size:10px;color:#a1a9af;padding:9px 12px 12px}.assistant-settings{flex:1;padding:22px;overflow:auto}.assistant-settings .btn-ghost{display:block;margin-top:16px}
.score-form-header{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-bottom:18px}.score-entry-table input{width:100%;min-width:70px;box-sizing:border-box}.score-entry-table .form-hint{font-size:11px}.score-summary{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--bg);border-radius:10px;margin:16px 0}.score-summary strong{font-size:20px}.score-entry-meta{font-size:12px;color:var(--text-secondary);line-height:1.7}.score-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px}.score-total-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:4px 0 14px}.score-total-row .form-row input{padding:8px 10px}.score-delta{font-size:12px;font-weight:600;white-space:nowrap;margin-left:4px}.score-delta.pos{color:var(--success)}.score-delta.neg{color:var(--danger)}.score-chip{display:inline-block;font-size:12px;font-weight:600;padding:2px 10px;border-radius:999px;background:var(--bg);color:var(--text-secondary);white-space:nowrap}.score-chip.pos{color:var(--success);background:var(--success-bg,#e9f5f0)}.score-chip.neg{color:var(--danger);background:var(--danger-bg,#fdeeee)}.score-exam-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.score-exam-head .card-title{margin:0}.score-exam-head .row-actions{margin-left:auto}.score-total-bar{display:flex;gap:22px;flex-wrap:wrap;align-items:center;padding:10px 14px;background:var(--bg);border-radius:10px;margin-top:12px;font-size:13px}.score-total-item{display:inline-flex;align-items:center;gap:6px}.score-total-item b{font-size:16px}.employee-detail-heading{align-items:center!important}.employee-detail-heading>button{align-self:center!important;margin-top:0!important}
@media(max-width:768px){.assistant-panel{right:8px;left:8px;bottom:76px;width:calc(100vw - 16px);height:calc(100dvh - 94px);border-radius:16px}.assistant-panel.expanded{width:calc(100vw - 16px);height:calc(100dvh - 94px)}.assistant-fab{right:16px;bottom:14px;width:48px;height:48px;border-radius:16px}.assistant-header{cursor:default}.assistant-header{height:56px;padding:0 12px}.assistant-messages{padding:18px}.assistant-welcome{padding-top:30px}.assistant-keyhint{display:none}.assistant-composer textarea{font-size:16px}.score-form-header{grid-template-columns:1fr}.score-chart-grid{grid-template-columns:1fr}.workflow-timeline li span{display:block;margin-top:4px}.model-registry .table-wrap{max-width:100%}}
.audit-value{margin:0;font:12px/1.65 inherit;white-space:pre-wrap;overflow-wrap:anywhere;max-width:460px}
/* 新建/编辑课程里的优惠政策：一行一条，固定列网格 */
.discounts-wrap{display:flex;flex-direction:column;gap:8px}
.discount-row{display:grid;grid-template-columns:minmax(120px,1.15fr) minmax(96px,.72fr) minmax(116px,.8fr) minmax(180px,1.9fr) auto;gap:8px;align-items:center}
.discount-row input,.discount-row select{width:100%;min-width:0}
.discount-row .disc-num{display:flex;align-items:center;gap:4px;min-width:0}
.discount-row .disc-num input{flex:1 1 auto;min-width:0}
.discount-row .disc-num .unit{font-style:normal;font-size:12px;color:var(--text-secondary);flex:0 0 auto}
.discount-row .btn-sm{height:36px;min-height:36px;white-space:nowrap}
.discount-head span{font-size:12px;color:var(--text-muted);line-height:1.4}
@media(max-width:900px){.discount-row{grid-template-columns:minmax(96px,1fr) minmax(84px,.8fr) minmax(104px,.9fr) minmax(140px,1.4fr) auto;gap:6px}}
/* 「查看变更」：只有本次真正改动的字段标出来（配色沿用 --warn/--yellow-bg，不新造色） */
.audit-diff-k{color:var(--warn);font-weight:600}
.audit-value.cell-diff{background:var(--yellow-bg,#fff8e9);box-shadow:inset 3px 0 0 var(--warn);padding-left:7px;border-radius:0 6px 6px 0}.score-export-students{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;max-height:320px;overflow:auto;margin:14px 0}.employee-detail-heading .page-actions{align-self:flex-start;padding-top:8px}
