:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#172b4d;background:#f5f7fa;font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:#0078d4;text-decoration:none}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;border:1px solid #dfe5ed;border-radius:5px;background:#fff;color:#30445f;padding:6px 12px;cursor:pointer;white-space:nowrap}button:hover,.button:hover{border-color:#0078d4;color:#0078d4;background:#f3f9ff}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:#0078d4;color:#fff;border-color:#0078d4}.primary:hover{background:#0067b7;color:#fff}input,select,textarea{border:1px solid #cbd5e1;border-radius:5px;background:#fff;min-height:36px;padding:7px 10px;color:#172b4d;max-width:100%}textarea{resize:vertical;min-height:90px}input[type=checkbox],input[type=radio]{min-height:0;accent-color:#0078d4}input:read-only,input:disabled{background:#f3f5f8;color:#65758b}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid #50a9ed;outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{font-size:24px;line-height:1.4;margin-bottom:8px;letter-spacing:-.3px}h2{font-size:17px;margin-bottom:16px}h3{font-size:14px;line-height:1.6;margin-bottom:10px}p{line-height:1.8;color:#65758b;margin-bottom:14px}small{display:block;font-size:12px;line-height:1.7;color:#65758b}strong{font-weight:600}.app{display:flex;min-height:100vh}.sidebar{width:224px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;background:#fff;border-right:1px solid #dfe5ed;z-index:10}.brand{display:flex;align-items:center;gap:10px;padding:21px 20px;height:86px;color:#172b4d;font-weight:600}.brand small{font-weight:400}.brand-mark{background:#0078d4;color:#fff;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:21px}.sidebar nav{padding:8px 12px;overflow:auto;flex:1}.sidebar nav section{margin-bottom:15px}.sidebar nav h3{font-size:11px;color:#8997aa;margin:8px 12px;font-weight:500;letter-spacing:1px}.sidebar nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:2px 0;border-radius:5px;color:#4d607b;font-size:13px}.sidebar nav a:hover{background:#f4f7fb}.sidebar nav a.active{color:#0078d4;background:#eaf4fd;font-weight:600}.sidebar-bottom{padding:15px 23px;font-size:11px;color:#8997aa;border-top:1px solid #eef1f5}.workspace{margin-left:224px;width:calc(100% - 224px);min-width:0}header{height:74px;background:#fff;border-bottom:1px solid #dfe5ed;display:flex;align-items:center;justify-content:space-between;padding:0 28px;font-size:12px;color:#65758b}header .actions{gap:16px}header a{display:flex;align-items:center;gap:4px}header button{border:0;font-size:12px}.demo-bar{padding:8px 28px;background:#fff7e6;color:#866321;font-size:12px;display:flex;justify-content:space-between;border-bottom:1px solid #f5e6c5}main{padding:26px 28px;min-height:calc(100vh - 145px)}footer{font-size:11px;color:#8d99aa;padding:10px 28px 20px}.page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px}.page-title p{margin:0;font-size:13px}.card{background:#fff;border:1px solid #dfe5ed;border-radius:8px;padding:20px;margin-bottom:20px;min-width:0}.card:has(>.filters){padding:0}.card:has(>.filters)>h2,.card:has(>.filters)>.note,.card:has(>.filters)>h3{margin:20px}.narrow{max-width:840px}.note{padding:12px 15px;line-height:1.8;border:1px solid #cfe6fb;background:#f0f8ff;border-radius:6px;color:#345977;margin-bottom:18px;font-size:13px}.note p{color:inherit;margin:8px 0}.note ul{padding-left:20px;margin:6px 0}.note.warning{border-color:#f2dfad;background:#fff9eb;color:#876625}.note.danger{border-color:#f1cdcc;background:#fff2f1;color:#b14440}.note.success{border-color:#c5e4d6;background:#effaf4;color:#28704d}.note button{margin-left:12px}.filters{padding:18px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-bottom:1px solid #e8edf4}.card>.filters:first-child{margin:-20px -20px 0}.card:has(>.filters)>.filters:first-child{margin:0}.filters input{width:160px}.filters select{max-width:190px}.table-scroll{overflow-x:auto;width:100%}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th{background:#f7f9fc;color:#65758b;font-weight:500;white-space:nowrap;padding:13px 16px}td{border-top:1px solid #edf0f5;padding:14px 16px;line-height:1.7;min-width:90px;max-width:400px;overflow-wrap:anywhere}tr:hover td{background:#fbfdff}td .actions{flex-wrap:nowrap}td button{font-size:12px;padding:0 3px;border:0;background:transparent;min-height:26px;color:#0078d4}td a{white-space:nowrap}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tag{display:inline-block;border-radius:4px;background:#f0f3f8;color:#617189;padding:2px 8px;font-size:11px;white-space:nowrap}.tag-published,.tag-completed,.tag-active,.tag-bound,.tag-enabled{background:#edf8f2;color:#33825b}.tag-in_progress,.tag-exam,.tag-single{background:#eaf4fd;color:#0078d4}.tag-pending,.tag-scheduled,.tag-queued{background:#fff4db;color:#9a701d}.tag-failed,.tag-frozen{background:#fff0ef;color:#bb4d47}.tags{display:flex;flex-wrap:wrap;gap:5px}.pager{padding:15px 18px;display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid #edf0f5}.pager span{margin-right:auto;font-size:12px;color:#8d99aa}.numbered-pager{flex-wrap:wrap}.numbered-pager label,.page-numbers{display:inline-flex;align-items:center;gap:6px}.numbered-pager select{min-height:34px;margin-left:6px;padding-block:5px}.page-numbers button{min-width:34px;padding-inline:8px}.page-numbers button.current{color:#fff;border-color:#0078d4;background:#0078d4}.page-numbers b{min-width:18px;color:#8d99aa;text-align:center}.empty{padding:65px 24px;text-align:center;color:#8d99aa}.two-col{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.section-head h2,.section-head h3{margin:0}.field{display:flex;flex-direction:column;gap:7px;margin:17px 0;line-height:1.5}.field>span:first-child{font-size:13px;color:#4b607a}.field input,.field select,.field textarea{width:100%}.field input[type=checkbox]{width:auto}.form-actions{border-top:1px solid #e8edf4;margin-top:22px;padding-top:18px;display:flex;justify-content:flex-end}.details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.details dt{font-size:12px;color:#8997aa;margin-bottom:7px}.details dd{margin:0;font-size:14px;overflow-wrap:anywhere}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#172b4d66;z-index:100;display:flex;align-items:center;justify-content:center;padding:28px}.modal{width:580px;max-width:100%;max-height:90vh;display:flex;flex-direction:column;background:#fff;box-shadow:0 20px 80px #1326443a;border-radius:10px;overflow:hidden}.modal.wide{width:850px}.modal-head{padding:18px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8edf4}.modal-head h2{margin:0}.modal-head button{border:0;font-size:23px}.modal-body{padding:20px 24px;overflow:auto}.article-picker{border:1px solid #dfe6ef;border-radius:8px;padding:0 14px 14px;margin:17px 0}.article-picker .table-scroll{max-height:280px;overflow:auto}.article-picker code{font-size:11px;overflow-wrap:anywhere}.option-row{display:flex;align-items:center;gap:10px;margin:10px 0}.option-row>input:not([type=checkbox]):not([type=radio]){flex:1;min-width:0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.stat-number{font-size:36px;color:#0078d4;display:block;margin-bottom:10px}.stats-grid .card p{font-size:12px;margin:0}.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.permission-grid label{font-size:13px;display:flex;gap:7px;align-items:center}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eaf3fc,#f5f7fa 65%)}.login-card{width:430px;padding:36px;background:#fff;border:1px solid #dfe5ed;border-radius:12px;box-shadow:0 18px 65px #203d6010}.login-card .brand-mark{margin-bottom:22px}.login-card .form-actions button{width:100%}.login-card .form-actions{border:0;padding:0}.danger-text{color:#bd4d47!important}.muted,.footnote{color:#8d99aa;font-size:12px}.footnote{padding:0 18px}.prewrap{white-space:pre-wrap}.preview-image{height:170px;background:linear-gradient(125deg,#0078d4,#71b9ef);border-radius:6px;color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:20px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;background:#f7f9fc;padding:15px}@media(max-width:1200px){main{padding:20px}.two-col{grid-template-columns:1fr}.sidebar{width:204px}.workspace{margin-left:204px;width:calc(100% - 204px)}header{padding:0 20px}.stats-grid{gap:12px}}@media(max-width:850px){.sidebar{width:180px}.workspace{margin-left:180px;width:calc(100% - 180px)}.brand{padding:15px 12px;font-size:12px}header{height:auto;min-height:74px;gap:12px;flex-wrap:wrap;padding:12px}header>span{display:none}.stats-grid{grid-template-columns:1fr}.page-title{align-items:flex-start}.demo-bar{padding:8px 15px;gap:8px;flex-wrap:wrap}.details{grid-template-columns:1fr}.permission-grid{grid-template-columns:repeat(2,1fr)}}.uploaded-preview{max-width:100%;max-height:180px;object-fit:contain;border:1px solid #dfe5ed;border-radius:6px}
