.rule-main { background:var(--page); }
.rule-main .order-topbar { background:#fff; }
.tab-row { display:flex; gap:8px; padding:10px 28px; border-bottom:1px solid var(--line); background:#fff; }
.tab-row button,.tab-row a { padding:6px 10px; border:1px solid var(--line); border-radius:4px; background:#fff; color:var(--regular); font-size:12px; line-height:18px; text-decoration:none; }
.tab-row button.active { border-color:var(--primary); background:var(--primary); color:#fff; }.tab-row i { margin-left:6px; font-style:normal; }
.rule-overview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:14px 28px 0; }.overview-item { min-height:88px; padding:14px 16px; border:1px solid var(--line); border-radius:7px; background:#fff; text-align:left; color:var(--regular); }.overview-item:is(button) { cursor:pointer; }.overview-item span,.overview-item small { display:block; }.overview-item span { color:var(--muted); font-size:12px; }.overview-item strong { display:block; margin:4px 0; color:#26364a; font-size:22px; line-height:27px; }.overview-item small { color:var(--muted); font-size:11px; }.overview-item.pending strong { color:#e58b1a; }.overview-item.review strong { color:#297ec5; }.overview-item.version strong { color:#2d9a65; font-size:16px; }.overview-item:is(button):hover { border-color:#9dc9f5; box-shadow:0 3px 12px rgba(47,132,217,.08); }
.rule-filter-card { display:grid; grid-template-columns:1fr auto; gap:16px; align-items:end; margin:12px 28px 0; padding:16px 18px; border:1px solid var(--line); border-radius:7px; background:#fff; }.rule-filter-fields { display:grid; grid-template-columns:repeat(4,minmax(150px,1fr)); gap:14px 18px; }.rule-filter-fields label { display:grid; grid-template-columns:80px minmax(0,1fr); align-items:center; gap:8px; color:var(--regular); font-size:12px; }.rule-filter-fields input,.rule-filter-fields select { width:100%; height:32px; padding:0 9px; border:1px solid var(--line); border-radius:3px; outline-color:var(--primary); color:var(--regular); background:#fff; }.rule-filter-actions { display:flex; gap:8px; }.rule-filter-actions .btn { height:32px; padding:0 13px; font-size:12px; }
.rule-library-card { margin:12px 28px 0; border:1px solid var(--line); border-radius:7px; background:#fff; }.rule-card-head { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:58px; padding:0 18px; border-bottom:1px solid var(--line); }.rule-card-head strong { color:#26364a; font-size:14px; }.rule-card-head span { margin-left:10px; color:var(--muted); font-size:12px; }.rule-card-actions { display:flex; gap:8px; }.rule-card-actions .btn { height:32px; padding:0 12px; font-size:12px; }.rule-table-wrap { overflow:auto; }.rule-table { width:100%; min-width:940px; border-collapse:collapse; font-size:12px; text-align:left; }.rule-table th { padding:10px 11px; border:1px solid var(--line-soft); background:#eef3f9; color:var(--regular); font-weight:500; white-space:nowrap; }.rule-table td { min-height:42px; padding:10px 11px; border:1px solid var(--line-soft); color:var(--regular); vertical-align:middle; }.rule-table .table-key,.rule-table .table-actions { position:sticky; background:#fff; z-index:1; }.rule-table .table-key { left:0; }.rule-table .table-actions { right:0; white-space:nowrap; box-shadow:-5px 0 8px rgba(33,54,76,.04); }.rule-table th.table-key,.rule-table th.table-actions { background:#eef3f9; z-index:2; }.rule-table button { margin-right:9px; padding:0; border:0; background:transparent; color:var(--primary); font-size:12px; }.rule-table button:last-child { margin-right:0; }.rule-enabled { display:inline-block; padding:2px 6px; border-radius:3px; background:#eef7ff; color:var(--primary); font-size:11px; }.rule-disabled { background:#f5f7fa; color:var(--muted); }.rule-pending { background:#fff6e8; color:#d8891b; }.rule-review { background:#edf7ff; color:#287fc7; }.rule-empty { height:62px; color:var(--muted)!important; text-align:center; }.rule-pagination { display:flex; justify-content:flex-end; align-items:center; gap:12px; padding:6px 18px 16px; color:var(--muted); font-size:12px; }.rule-pagination button { width:28px; height:28px; border:0; border-radius:3px; background:#f5f7fa; color:var(--regular); }.rule-pagination button.current { background:var(--primary); color:#fff; }.rule-pagination input { width:36px; height:27px; padding:0 6px; border:1px solid var(--line); border-radius:3px; text-align:center; }
.rule-card-actions [hidden] { display:none!important; }
.rule-dialog { width:min(760px,calc(100vw - 32px)); max-height:calc(100vh - 40px); padding:0; border:0; border-radius:9px; box-shadow:0 16px 48px rgba(19,44,71,.25); color:var(--regular); }.rule-dialog::backdrop { background:rgba(18,36,56,.38); }.rule-dialog form { max-height:calc(100vh - 40px); margin:0; overflow:auto; }.rule-dialog header { display:flex; justify-content:space-between; align-items:flex-start; padding:20px 24px 14px; border-bottom:1px solid var(--line); }.rule-dialog h2 { margin:0; color:#26364a; font-size:17px; }.dialog-close { width:26px; height:26px; border:0; border-radius:4px; background:#f5f7fa; color:var(--muted); font-size:19px; line-height:22px; }.dialog-tip { margin:15px 24px 0; padding:9px 11px; border-radius:4px; background:#f6f9fd; color:var(--muted); font-size:12px; }.dialog-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 18px; padding:18px 24px 8px; }.dialog-fields label { display:grid; grid-template-columns:96px minmax(0,1fr); align-items:center; gap:8px; min-width:0; color:var(--regular); font-size:12px; }.dialog-field-label { min-width:0; line-height:32px; text-align:right; white-space:nowrap; }.dialog-field-label i { display:inline-block; margin-right:3px; color:#e56868; font-style:normal; }.dialog-fields input,.dialog-fields select { box-sizing:border-box; width:100%; min-width:0; height:32px; padding:0 9px; border:1px solid var(--line); border-radius:3px; background:#fff; color:var(--regular); outline-color:var(--primary); }.dialog-actions { display:flex; justify-content:flex-end; gap:8px; padding:16px 24px 20px; }.dialog-actions .btn { height:33px; padding:0 14px; font-size:12px; }.import-dialog { width:min(620px,calc(100vw - 32px)); }.import-dropzone { display:grid; justify-items:center; gap:8px; margin:20px 24px 14px; padding:24px; border:1px dashed #a9cce9; border-radius:6px; background:#f8fcff; text-align:center; }.import-dropzone b { color:#2b5e8c; font-size:14px; }.import-dropzone span { color:var(--muted); font-size:12px; }.import-dropzone .btn { margin-top:3px; }.import-check-list { margin:0 24px; border:1px solid var(--line); border-radius:5px; font-size:12px; }.import-check-list p { display:flex; gap:10px; align-items:center; margin:0; padding:10px 12px; border-bottom:1px solid var(--line); }.import-check-list p b { margin-right:auto; }.check-ok { color:#2b9b65; }.check-warn { color:#d8891b; }.import-preview-row { display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px; padding:10px 12px; color:var(--muted); }.import-preview-row + .import-preview-row { border-top:1px solid var(--line-soft); }
@media (max-width:1280px) { .rule-filter-fields { grid-template-columns:repeat(2,minmax(220px,1fr)); }.rule-filter-card { grid-template-columns:1fr; }.rule-filter-actions { justify-content:flex-end; } }
@media (max-width:760px) { .tab-row,.rule-overview,.rule-filter-card,.rule-library-card { margin-left:16px; margin-right:16px; }.rule-overview { grid-template-columns:1fr; }.rule-filter-fields,.dialog-fields { grid-template-columns:1fr; }.rule-card-head { align-items:flex-start; flex-direction:column; padding:13px 14px; }.rule-card-head span { display:block; margin:4px 0 0; }.rule-card-actions { width:100%; }.rule-card-actions .btn { flex:1; }.rule-pagination { justify-content:flex-start; overflow:auto; }.dialog-fields label { grid-template-columns:88px minmax(0,1fr); } }
