:root{--blue:#348db8;--blue-deep:#287da8;--blue-soft:#edf7fc;--border:#dfe5e9;--text:#353b43;--muted:#7b858f;--danger:#f04438;font-family:PingFang SC,Microsoft YaHei,Arial,sans-serif;color:var(--text);background:#f3f5f7}*{box-sizing:border-box}body{min-width:1200px;margin:0;overflow-x:hidden;background:#f3f5f7;font-size:14px}button,input,select,textarea{font:inherit}button,a,label,select{cursor:pointer}.admin-root{min-height:100vh;display:grid;grid-template:44px 1fr/198px 1fr}.topbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:#3f95bd;color:#fff}.topbar strong{font-size:18px}.topbar span{font-size:12px}.sidebar{border-right:1px solid #d8dee3;background:#f8f8f8}.sidebar nav{display:grid}.sidebar a,.nav-group button{min-height:42px;display:flex;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid #e7eaed;padding:0 14px;background:transparent;color:#59636d;text-decoration:none}.nav-group button{width:100%;justify-content:flex-start;gap:7px;color:var(--blue-deep);font-weight:700}.sidebar .sub{min-height:38px;padding-left:34px;background:#fff}.sidebar .sub.active{position:relative;background:#e9f5fb;color:var(--blue-deep);font-weight:700}.sidebar .sub.active:after{content:"";position:absolute;right:0;top:0;border-top:19px solid transparent;border-bottom:19px solid transparent;border-right:9px solid var(--blue)}.admin-main{min-width:0;padding:14px 18px 28px}.breadcrumb{height:32px;display:flex;align-items:center;gap:6px;color:#4c88ad;font-size:13px}.page-title{display:flex;align-items:center;justify-content:space-between;margin:4px 0 14px}.page-title h1{margin:0;font-size:21px}.page-title p{margin:5px 0 0;color:#9098a0;font-size:12px}.page-title button,.filters button{height:36px;display:flex;align-items:center;gap:6px;border:0;border-radius:4px;padding:0 15px;background:var(--blue);color:#fff}.panel{border:1px solid var(--border);background:#fff}.filters{display:flex;gap:8px;padding:14px;border-bottom:1px solid var(--border)}input,select,textarea{border:1px solid #cfd6dc;border-radius:2px;background:#fff;color:#454c54;outline:none}input:focus,select:focus,textarea:focus{border-color:#4b9bc3;box-shadow:0 0 0 2px #4b9bc31a}input,select{height:36px;padding:0 10px}.filters input{width:210px}.filters select{width:160px}textarea{min-height:86px;padding:9px 10px;resize:vertical}table{width:100%;border-collapse:collapse}th,td{height:46px;padding:0 14px;border-bottom:1px solid #ebeff2;text-align:left;font-size:13px}th{background:#f5f9fb;color:#5b6873}.status{padding:3px 7px;border-radius:3px;background:#f0f1f3;color:#777}.status.online{background:#e7f7f0;color:#16875f}td a{color:#2b89bb}.editor{position:fixed;z-index:20;top:44px;right:0;bottom:0;left:198px;display:flex;flex-direction:column;background:#fff;box-shadow:-8px 0 30px #1e324614}.editor-head{height:50px;display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #e2e6e9;background:#fafafa}.editor-head strong{font-size:16px}.editor-head button{width:34px;height:34px;display:grid;place-items:center;border:0;background:transparent;color:#69727c}.editor form{min-height:0;display:flex;flex:1;flex-direction:column}.form-body{overflow:auto;flex:1;padding:22px max(32px,calc((100vw - 1020px)/2)) 98px}.form-section{max-width:1050px;margin:0 auto 28px}.form-section h2{margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid #edf0f2;color:#20252a;font-size:22px}.form-section.inherited h2{margin-top:12px}.field{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:start;min-height:54px}.field-label{padding:9px 18px 0 0;text-align:right;color:#454b53;font-weight:600}.field-label.required:before{content:"*";margin-right:8px;color:red}.field-content{min-width:0;display:flex;align-items:flex-start;gap:12px;position:relative}.field-content>input{width:310px}.field-content>select{width:230px}.field-content>textarea{width:520px}.choice-row{min-height:36px;display:flex;align-items:center;gap:28px}.choice{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-weight:400}.choice input{width:17px;height:17px;margin:0;accent-color:#1689d8}.block-tip{display:block;margin-top:5px;color:#9aa1a8;font-size:12px}.type-field .field-content{display:block}.inline-tip,.field-tip{align-self:center;color:#929aa2;font-size:12px}.linked-tag{display:inline-flex;height:25px;align-items:center;margin:5px 0 0 8px;border-radius:3px;padding:0 8px;background:var(--blue-soft);color:var(--blue-deep);font-size:12px}.material-field{min-height:166px}.material-field>.field-label{padding-top:12px}.material-field>.field-content{display:block}.upload-line{display:grid;grid-template-columns:84px 88px 76px minmax(300px,1fr);align-items:center;gap:12px;margin-bottom:12px}.upload-label{color:#59616a}.upload-preview{width:88px;height:88px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;overflow:hidden;border:1px dashed #b8c3ca;background:#f6f8fa;color:#87919a;font-size:11px}.upload-preview img{width:100%;height:100%;object-fit:cover}.upload-button{height:34px;display:flex;align-items:center;justify-content:center;gap:5px;border:0;border-radius:3px;background:#1688bf;color:#fff}.field-tip{line-height:1.55}.router-field{width:min(760px,100%)}.router-field textarea{width:100%;min-height:112px}.router-field p{margin:6px 0 0;color:#f5222d;font-size:12px;line-height:1.6}.wide-select{width:410px!important}.counter{position:absolute;left:478px;bottom:7px;color:#a1a8ae;font-size:11px}.subject-row{display:flex;align-items:center;gap:8px}.subject-row select{width:180px}.subject-row select:nth-child(2){width:120px}.text-button{height:32px;display:flex;align-items:center;gap:3px;border:0;background:transparent;color:#59636d}.choice-grid{max-width:780px;display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:14px 24px;padding:8px 0 14px}.form-actions{height:72px;display:flex;flex:0 0 auto;align-items:center;justify-content:center;gap:34px;border-top:1px solid #e4e8eb;background:#fff;box-shadow:0 -5px 14px #1e32460d}.form-actions button{width:150px;height:42px;border:1px solid #cbd3d9;border-radius:4px;background:#fff;color:#4c545c;font-size:16px}.form-actions .primary{border-color:#08aede;background:#08aede;color:#fff}.toast{position:fixed;z-index:50;left:50%;top:76px;transform:translate(-50%);border-radius:4px;padding:10px 18px;background:#242b31eb;color:#fff;box-shadow:0 6px 20px #0000002e}@media(max-width:1350px){.form-body{padding-left:30px;padding-right:30px}.field{grid-template-columns:130px 1fr}.choice-grid{grid-template-columns:repeat(3,minmax(130px,1fr))}}.list-panel{margin-top:8px;overflow:hidden;border-color:#d4dade;border-radius:3px}.legacy-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px 6px;min-height:78px;padding:12px 14px;background:#fff}.legacy-filters label{display:flex;align-items:center;gap:5px;white-space:nowrap}.legacy-filters label span{font-weight:600;color:#4d545c}.legacy-filters input,.legacy-filters select{width:104px;height:34px;padding:0 8px}.legacy-filters label:nth-child(4) input{width:150px}.legacy-filters label:nth-child(6) select{width:140px}.legacy-filters label:nth-child(8) input{width:130px}.legacy-filters button{height:34px;display:inline-flex;align-items:center;gap:5px;border-radius:4px;padding:0 12px;color:#fff}.legacy-filters .filter-search{background:#9bb2bf}.legacy-filters .filter-create{background:#6359c7;box-shadow:0 0 0 2px #cbd9ee}.legacy-filters .filter-upload{background:#d54d86}.legacy-filters .filter-template{border:0;background:transparent;color:#3989c4;padding:0 4px}.list-meta{height:42px;display:flex;align-items:flex-end;justify-content:flex-end;padding:0 4px 8px;color:#555;font-size:12px}.table-wrap{overflow-x:auto;padding:0 0 14px}.ad-table{min-width:1500px;table-layout:fixed;border-collapse:separate;border-spacing:0}.ad-table th{height:38px;border-right:1px solid rgb(255 255 255 / 70%);padding:0 7px;background:linear-gradient(#69b1d3,#3b91ba);color:#fff;text-align:center;font-weight:700}.ad-table td{height:104px;border-right:1px solid #fff;border-bottom:1px solid #fff;padding:7px;text-align:center;vertical-align:middle;color:#46515a;line-height:1.45}.ad-table tbody tr:nth-child(odd){background:#e2f1f5}.ad-table tbody tr:nth-child(2n){background:#fafafa}.ad-table th:nth-child(1),.ad-table td:nth-child(1){width:34px}.ad-table th:nth-child(2),.ad-table td:nth-child(2){width:58px}.ad-table th:nth-child(3),.ad-table td:nth-child(3){width:120px}.ad-table th:nth-child(4),.ad-table td:nth-child(4){width:82px}.ad-table th:nth-child(5),.ad-table td:nth-child(5){width:84px}.ad-table th:nth-child(6),.ad-table td:nth-child(6){width:170px}.ad-table th:nth-child(7),.ad-table td:nth-child(7){width:104px}.ad-table th:nth-child(8),.ad-table td:nth-child(8){width:104px}.ad-table th:nth-child(9),.ad-table td:nth-child(9){width:70px}.ad-table th:nth-child(10),.ad-table td:nth-child(10){width:72px}.ad-table th:nth-child(11),.ad-table td:nth-child(11){width:82px}.ad-table th:nth-child(12),.ad-table td:nth-child(12){width:142px}.ad-table th:nth-child(13),.ad-table td:nth-child(13){width:96px}.ad-table td small{display:block;margin-top:3px;color:#6d7881}.material-art{width:148px;height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;border:1px solid #ffd5c0;border-radius:5px;background:linear-gradient(145deg,#fff8ef,#ffe5ca 45%,#ff7b3d 46%,#ef4a24);color:#9d2f17;text-shadow:0 1px #fff}.material-art strong{max-width:115px;font-size:14px}.material-art span{margin-top:5px;border-radius:10px;padding:2px 7px;background:#fff;color:#ef5a31;font-size:10px;text-shadow:none}.material-art.capsule-art{height:44px;border-radius:6px;background:linear-gradient(100deg,#e8f6ff,#b9e4ff 56%,#5ab1e1);color:#1b6b98}.material-art.capsule-art span{background:#ffffffc7;color:#2f8dbb}.text-material{max-width:150px;margin:auto;border-left:3px solid #ff6a32;padding:8px 9px;background:#fff7f1;color:#e04d1d;text-align:left}.row-actions{display:flex;justify-content:center}.row-actions button{height:36px;border:0;padding:0 12px;color:#fff}.row-actions button:first-child{background:#dc5c49}.row-actions button:last-child{background:#64abe0}.legacy-filters input,.legacy-filters select{width:64px}.legacy-filters label:nth-child(4) input{width:112px}.legacy-filters label:nth-child(6) select{width:90px}.legacy-filters label:nth-child(8) input{width:90px}.legacy-filters button{padding-right:9px;padding-left:9px}
