:root{
  --bg:#fafafa;--surface:#fff;--surface-soft:#f7f8f9;--text:#111;--muted:#667085;
  --line:#e8e8e8;--line-strong:#d5d5d5;--blue:#111;--blue-soft:#f3f4f6;
  --green:#16845b;--green-soft:#ecf8f3;--red:#c9362b;--red-soft:#fff1ef;--amber:#a66300;--amber-soft:#fff6e7;
  --sidebar:248px;--topbar:64px;--radius:12px;--mono:"IBM Plex Mono","Cascadia Mono",Consolas,monospace;
  --sans:"PingFang SC","Microsoft YaHei UI","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
}

.similarity-rule-block{border-color:#f1d29a;background:#fffdf8}
.similarity-rule-block>strong small{margin-left:8px;color:var(--amber);font-size:12px;font-weight:600}
.similarity-modal[hidden]{display:none!important}
.similarity-modal{position:fixed;z-index:120;inset:0;display:grid;place-items:center;padding:24px}
.similarity-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(2px)}
.similarity-dialog{position:relative;width:min(760px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #e5c889;border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.24)}
.similarity-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px 18px;border-bottom:1px solid #f0e2c4;background:#fffaf0}
.similarity-dialog h2{margin:2px 0 4px;font-size:22px;line-height:1.35}
.similarity-dialog header p{margin:0;color:var(--muted)}
.similarity-kicker{color:#b06500;font-size:12px;font-weight:750;letter-spacing:.08em}
.similarity-dialog .icon-button{min-width:34px;width:34px;height:34px;padding:0;border:1px solid #e6d5b4;border-radius:8px;background:#fff;color:#667085;font-size:22px;line-height:1}
.similarity-results{min-height:120px;overflow:auto;padding:8px 26px 18px}
.similarity-result{padding:18px 0;border-bottom:1px solid var(--line)}
.similarity-result.blocking{margin:10px 0;padding:16px;border:1px solid #f3b7b1;border-radius:10px;background:#fffafa}
.similarity-result.advisory{margin:10px 0;padding:16px;border:1px solid #f0d39d;border-radius:10px;background:#fffdf8}
.similarity-result:last-child{border-bottom:0}
.similarity-result-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.similarity-result-head>span{font-weight:750;color:#344054}
.similarity-level{display:inline-flex;margin-right:8px;padding:2px 7px;border-radius:5px;background:#fff1ef;color:#c9362b;font-size:12px;line-height:1.5}
.similarity-result.advisory .similarity-level{background:#fff6e7;color:#a66300}
.similarity-result-head button{flex:0 0 auto;border-color:#d6b36b;background:#fffaf0;color:#8a4b00}
.similarity-comparison{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12px}
.similarity-comparison>div{padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:#fafbfc}
.similarity-comparison small{display:block;margin-bottom:5px;color:#667085}
.similarity-comparison strong{display:block;overflow-wrap:anywhere}
.similarity-comparison ul{margin:0;padding:0;list-style:none}
.similarity-comparison li+li{margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}
.similarity-comparison li p{margin:3px 0 0;color:#7a4b00;font-size:12px}
.similarity-dialog footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 26px;border-top:1px solid var(--line);background:#fafbfc}
.similarity-modal.has-blocking-similarity .similarity-dialog{border-color:#efb1aa}
.similarity-modal.has-blocking-similarity .similarity-dialog header{border-bottom-color:#f3cbc7;background:#fff7f6}
.similarity-modal.has-blocking-similarity .similarity-kicker{color:#c9362b}
.has-open-dialog{overflow:hidden}
.similarity-warning{margin-top:8px;padding:9px 10px;border:1px solid #f0cf8b;border-radius:8px;background:#fff8e8;color:#7a4b00}
.similarity-warning strong{display:block;margin-bottom:3px}
.similarity-warning small{display:block;color:#8a5c17}
@media(max-width:680px){.similarity-modal{padding:10px}.similarity-dialog{width:100%;max-height:calc(100vh - 20px)}.similarity-dialog header,.similarity-results,.similarity-dialog footer{padding-left:16px;padding-right:16px}.similarity-comparison{grid-template-columns:1fr}.similarity-result-head{align-items:flex-start;flex-direction:column}.similarity-dialog footer>*{flex:1}}
*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;background:var(--bg);color:var(--text);font:14px/1.6 var(--sans);letter-spacing:0;-webkit-font-smoothing:antialiased}
a{color:#111;text-decoration:none}
button,input,textarea,select{font:inherit}
button:disabled{opacity:.45;cursor:not-allowed}
.topbar{position:fixed;z-index:30;inset:0 0 auto;height:var(--topbar);display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#fff;border-bottom:1px solid #f0f0f0}
.topbar-leading{display:flex;align-items:center;min-width:0;gap:14px}.app-back-button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:5px 12px;border:1px solid var(--line-strong);border-radius:999px;background:#fff;color:#475467;font-size:12px;font-weight:650;box-shadow:none}.app-back-button:hover{border-color:#d4d4d4;background:var(--blue-soft);color:var(--blue)}.app-back-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.brand{display:flex;align-items:center;gap:11px;color:var(--text);font-size:15px;font-weight:700}
.brand-mark{width:21px;height:21px;border:5px solid var(--blue);border-radius:6px 6px 6px 2px;box-shadow:inset 0 0 0 2px #fff;transform:rotate(-3deg)}
.topbar-actions{display:flex;align-items:center;gap:18px;font-size:13px}.topbar-actions a{color:#475467}.topbar-actions a:hover{color:#111}
.topbar-actions .top-register{padding:6px 12px;border:1px solid var(--line-strong);border-radius:999px}.user-name{font-weight:600;color:#344054}
.work-mode-switch{display:flex;align-items:center;gap:2px;margin:0;padding:3px;border:1px solid var(--line);border-radius:999px;background:#f4f5f7}.work-mode-switch button{min-height:28px;padding:4px 12px;border:0;border-radius:999px;background:transparent;color:#667085;font-size:12px;font-weight:650;box-shadow:none}.work-mode-switch button:hover{border:0;background:#e9eaec;color:#111}.work-mode-switch button.active,.work-mode-switch button.active:hover{background:var(--blue);color:#fff}
.sidebar{position:fixed;z-index:20;left:0;top:var(--topbar);bottom:0;width:var(--sidebar);overflow:auto;padding:24px 16px 38px;border-right:1px solid var(--line);background:#fff}
.sidebar-view-switch{margin:0 0 12px;padding:0 0 16px;border-bottom:1px solid var(--line)}.sidebar-view-switch .nav-label{padding-top:0}.sidebar-work-mode-switch{display:grid;grid-template-columns:1fr 1fr;width:100%}.sidebar-work-mode-switch button{width:100%;padding:5px 8px}
.sidebar a{position:relative;display:flex;align-items:center;justify-content:space-between;padding:9px 12px;margin:2px 0;border-radius:8px;color:#4e5969;font-size:13px;font-weight:500}.sidebar a:hover{background:#f3f4f6;color:#1f2329}.sidebar a.active{background:#eef0f2;color:#1f2329;font-weight:650}.sidebar a.active:before{display:none}
.nav-label{padding:18px 10px 6px;color:#98a2b3;font:10px/1.2 var(--mono);letter-spacing:.11em;text-transform:uppercase}.nav-label:first-child{padding-top:0}
.nav-count{min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--blue);color:#fff;text-align:center;font:11px/19px var(--mono)}
.content{min-height:100vh;padding:calc(var(--topbar) + 38px) clamp(24px,3vw,52px) 76px;margin-left:var(--sidebar)}
.content>*{max-width:1480px;margin-left:auto;margin-right:auto}.public-shell .content{max-width:1280px;margin:0 auto;padding-top:calc(var(--topbar) + 46px)}
.page-title{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin:0 0 22px}.page-title h1{margin:3px 0 4px;font-size:32px;font-weight:600;line-height:1.3;letter-spacing:-.02em}.page-title p{margin:0;color:var(--muted)}
.eyebrow,.section-kicker{color:#6b7280;font:600 10px/1.4 var(--mono);letter-spacing:.13em;text-transform:uppercase}
h1,h2,h3{font-weight:700}h2{font-size:18px;margin:0 0 12px}h3{font-size:15px;margin:0 0 10px}
.surface,.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:none}
.button,button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--line-strong);background:#fff;color:#344054;border-radius:999px;padding:8px 18px;font-weight:600;cursor:pointer;text-decoration:none;transition:border-color .16s,background .16s,transform .16s}
.button:hover,button:hover{border-color:#98a2b3;background:#fafafa}.primary{background:var(--blue);border-color:var(--blue);color:#fff}.primary:hover{background:#333;border-color:#333}.danger{border-color:#efb7b2;color:var(--red);background:#fff}.wide{width:100%}
.message{padding:11px 14px;border-radius:6px;margin-bottom:16px;border:1px solid}.message.success{background:var(--green-soft);border-color:#b8e0cf;color:#116642}.message.error{background:var(--red-soft);border-color:#efc5c0;color:#a82c23}.message.notice{background:var(--blue-soft);border-color:#dcdcdc;color:#1d2939}
.config-warning{display:flex;align-items:center;justify-content:space-between;gap:16px}.config-warning a{font-weight:700}.config-count{background:var(--red)}.config-help{margin-top:16px}
.shared-key-panel{display:grid;grid-template-columns:1fr minmax(320px,.8fr);gap:28px;align-items:end;padding:20px;margin-bottom:16px}.shared-key-panel p{margin:0;color:var(--muted)}.shared-key-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.personal-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.personal-config-card{padding:20px}.company-access-card{grid-column:1/-1}.inline-config-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin:16px 0}.company-access-card ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 0;padding:0;list-style:none}.company-access-card li{padding:9px 11px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft)}
.stack-form,.form-card{display:grid;gap:16px}.form-card{padding:22px}label,.field-label{display:grid;gap:6px;font-weight:600;color:#344054}
input,textarea,select{width:100%;border:1px solid var(--line-strong);border-radius:10px;background:#fff;color:var(--text);padding:9px 10px;outline:none}
input:focus,textarea:focus,select:focus{border-color:#111;box-shadow:0 0 0 3px rgba(17,17,17,.08)}input[readonly]{background:#f8fafc;color:#475467}textarea{resize:vertical}
small,.hint{display:block;color:var(--muted);font-weight:400}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.actions{display:flex;justify-content:flex-end;align-items:center;gap:9px}.form-meta{display:flex;gap:16px;color:var(--muted);font:12px var(--mono)}
.login-header-label{color:#344054;font-weight:600}.login-shell{background:#eef1f6}.login-shell .topbar{background:rgba(247,249,252,.92);border-bottom-color:rgba(215,220,229,.7)}.login-shell .content{position:relative;max-width:none;margin:0;padding:var(--topbar) 0 0}.login-shell .content>*{max-width:none}.login-shell .content>.message{position:absolute;z-index:5;top:86px;left:50%;width:min(720px,calc(100% - 32px));transform:translateX(-50%)}
.login-stage{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(430px,.92fr) minmax(480px,1.08fr);align-items:center;min-height:calc(100vh - var(--topbar));padding:72px clamp(32px,7vw,140px);overflow:hidden;background:#f1f3f7}.login-stage:before,.login-stage:after{content:"";position:absolute;z-index:-1;pointer-events:none}.login-stage:before{inset:0;background:linear-gradient(151deg,transparent 0 46%,rgba(207,212,222,.62) 46.1% 68%,rgba(246,248,251,.72) 68.1% 100%);clip-path:polygon(42% 0,100% 0,100% 100%,17% 100%)}.login-stage:after{right:-8vw;bottom:-22vh;width:82vw;height:64vh;border:1px solid rgba(255,255,255,.92);background:rgba(255,255,255,.34);box-shadow:-18vw -12vh 0 rgba(216,220,229,.42);transform:rotate(-23deg)}
.login-card{justify-self:end;width:min(420px,100%);min-height:430px;padding:46px 44px 34px;background:#fff;border:1px solid rgba(215,220,229,.8);border-radius:4px;box-shadow:0 20px 48px rgba(43,51,65,.1)}.login-card-heading{display:flex;align-items:center;gap:14px}.login-card-heading h1{margin:4px 0 0;font-size:26px;line-height:1.25;letter-spacing:-.025em}.dingtalk-sign{display:grid;place-items:center;width:46px;height:46px;border-radius:10px;background:#f3f4f6;color:var(--blue)}.dingtalk-sign svg{width:30px;height:30px;fill:currentColor}.login-summary{margin:28px 0 26px;color:var(--muted);font-size:15px}.login-message{margin:-8px 0 20px}.login-primary{min-height:46px;border-radius:5px;font-size:15px}.login-secondary{display:flex;align-items:center;justify-content:center;gap:13px;margin-top:24px;color:#7b8494;font-size:12px}.login-secondary a,.login-secondary span{color:#667085}.login-secondary a:hover{color:var(--blue)}.login-secondary i{width:1px;height:12px;background:#d9dde5}.login-runtime{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:74px;color:#98a2b3;font-size:11px}.login-runtime span{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.login-product{align-self:center;max-width:500px;margin-left:clamp(54px,8vw,150px);padding-bottom:30px}.login-product>span{color:var(--blue);font:600 11px var(--mono);letter-spacing:.14em}.login-product h2{margin:14px 0 10px;font-size:34px;letter-spacing:-.035em}.login-product p{margin:0;color:#667085;font-size:16px}
.register-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:34px;align-items:start}.register-copy{position:sticky;top:94px;padding:18px 4px}.register-copy h1{font-size:34px;line-height:1.22;letter-spacing:-.035em}.register-copy p{color:var(--muted);font-size:15px}.steps{list-style:none;margin:34px 0 0;padding:0;border-top:1px solid var(--line)}.steps li{display:flex;gap:13px;padding:16px 0;border-bottom:1px solid var(--line);color:#475467}.steps span{font:12px var(--mono);color:var(--blue)}.register-form{padding:28px}
.permission-tree{max-height:390px;overflow:auto;border:1px solid var(--line);border-radius:7px;background:#fff}.tree-toolbar{position:sticky;top:0;z-index:2;padding:10px;background:#fff;border-bottom:1px solid var(--line)}.tree-toolbar input{padding:7px 9px}.tree-group{border-bottom:1px solid var(--line)}.tree-group:last-child{border-bottom:0}.tree-parent,.tree-children label{display:flex;align-items:center;gap:9px;padding:9px 12px;font-weight:500}.tree-parent{background:var(--surface-soft);font-weight:650}.tree-parent input,.tree-children input{width:auto}.tree-children{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:4px 12px 9px 31px}.tree-children label{padding:6px 8px}.node-type{margin-left:auto;color:#98a2b3;font:10px var(--mono)}.tree-count{min-width:21px;border-radius:11px;background:#f0f1f3;color:#52606d;text-align:center;font:10px/21px var(--mono)}.covered-by-parent{opacity:.48}.compact-empty{padding:18px!important}
.table-scroll{overflow:auto}table{border-collapse:separate;border-spacing:0;width:100%}th,td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}th{position:sticky;top:0;z-index:1;background:#f8f9fb;color:#667085;font:600 11px/1.3 var(--mono);letter-spacing:.025em;white-space:nowrap}tbody tr{transition:background .14s}tbody tr:hover{background:#f8f9fb}tbody tr:last-child td{border-bottom:0}td a{font-weight:600}.empty{text-align:center;color:var(--muted);padding:48px}.action-column{text-align:right}.all-access{color:var(--blue);font-weight:600}.text-button{min-height:auto;padding:4px 0;border:0;background:transparent;color:var(--blue)}.text-button:hover{border:0;background:transparent;color:#003cab}
code,pre{font-family:var(--mono)}code{font-size:12px;color:#344054}.status{display:inline-block;border-radius:4px;padding:3px 7px;font-size:12px;white-space:nowrap;background:#eef1f4;color:#4d5965}.status.approved,.status.pass,.status.published{background:var(--green-soft);color:var(--green)}.status.rejected,.status.reject,.status.analysis_failed{background:var(--red-soft);color:var(--red)}.status.pending_review,.status.manual,.status.partially_reviewed,.status.consultation{background:var(--amber-soft);color:var(--amber)}.status.revision_planned,.status.revising{background:#eef2f7;color:#526477}
.tabs{display:flex;gap:4px;flex-wrap:wrap}.tabs a{padding:6px 9px;color:var(--muted);border-radius:5px}.tabs a.active{background:var(--blue-soft);color:var(--blue)}
.detail-table{min-width:1050px}.detail-table td:nth-child(3){min-width:360px}.detail-table td:nth-child(5){min-width:290px}.segments{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.segments span{background:#f0f2f4;border-radius:3px;padding:2px 6px;font-size:12px;color:#59636e}.detail-table ul{margin:0;padding-left:18px;color:var(--red)}.ok{color:var(--green)}
.review-bar{position:sticky;bottom:10px;margin-top:12px;padding:13px 15px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 10px 30px rgba(29,35,41,.12)}.review-bar>div:last-child{display:flex;gap:8px}
.rule-segments{display:grid;gap:12px}.rule-segments section{border:1px solid var(--line);border-radius:6px;padding:16px;background:#fafbfc}.check{display:flex;align-items:center;justify-content:flex-start;flex-direction:row;margin-top:27px}.check input{width:auto}
.automation-switch{display:flex;align-items:flex-start;flex-direction:row;gap:12px;padding:14px;border:1px solid #dcdcdc;border-radius:8px;background:var(--blue-soft)}.automation-switch input{width:auto;margin-top:5px}.automation-switch strong{display:block;color:#1d2939}.automation-switch small{margin-top:2px}
.create-panel{margin-bottom:16px}.create-panel>summary{padding:15px 18px;cursor:pointer;font-weight:650}.create-panel[open]>summary{border-bottom:1px solid var(--line)}.manager-access-note{padding:13px 15px;border:1px solid #dcdcdc;border-radius:8px;background:var(--blue-soft);color:#52606d}.user-dialog{position:fixed;inset:0 0 0 auto;width:min(620px,92vw);max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-left:1px solid var(--line);background:#fff;box-shadow:-24px 0 70px rgba(31,35,41,.16);animation:drawer-in .2s ease-out}.user-dialog::backdrop{background:rgba(24,31,42,.32);backdrop-filter:blur(2px)}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:26px 28px 22px;border-bottom:1px solid var(--line)}.drawer-head h2{margin:5px 0 3px;font-size:22px}.drawer-head p{margin:0;color:var(--muted)}.icon-button{min-width:38px;padding:0;border:0;border-radius:50%;background:#f3f4f6;color:#667085;font-size:24px;font-weight:400}.drawer-body{height:calc(100dvh - 112px);overflow:auto;align-content:start;padding:26px 28px 110px}.drawer-actions{position:absolute;z-index:2;left:0;right:0;bottom:0;display:flex;justify-content:flex-end;gap:9px;margin:0;padding:16px 28px;border-top:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}@keyframes drawer-in{from{transform:translateX(28px);opacity:.7}to{transform:none;opacity:1}}
.approval-list{display:grid;gap:16px}.approval-item{padding:20px}.approval-head,.directory-head{display:flex;align-items:start;justify-content:space-between;gap:20px}.approval-head h2,.directory-head h2{margin:0 0 3px}.approval-head p{margin:0;color:var(--muted)}.meta-strip{display:flex;flex-wrap:wrap;gap:18px;margin:14px 0;color:var(--muted);font:12px var(--mono)}
.directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.directory-group{padding:16px}.directory-head span:not(.status){color:var(--muted);font-size:12px}.directory-group ul{list-style:none;margin:13px 0 0;padding:0;border-top:1px solid var(--line)}.directory-group li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #f0f1f3}.disabled-node{opacity:.55}
.directory-maintenance{margin-bottom:18px;padding:22px}.directory-maintenance-grid{display:grid;grid-template-columns:1fr 1.45fr;gap:24px;margin-top:18px}.compact-form{display:grid;gap:8px}.compact-form label{font-weight:650}.inline-field,.manual-company-fields{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.manual-company-fields{grid-template-columns:minmax(160px,.75fr) minmax(200px,1fr) auto}.directory-actions,.directory-company-action{display:flex;align-items:center;gap:10px}.directory-company-action form,.directory-actions form{margin:0}.directory-group li>span:first-child{display:grid;gap:2px}.directory-group li small{color:var(--muted)}.empty-row{color:var(--muted)}
.notification-list{overflow:hidden}.notification-row{width:100%;display:grid;grid-template-columns:8px 1fr auto;gap:13px;align-items:start;padding:15px 17px;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left;font-weight:400}.notification-row:last-child{border-bottom:0}.notification-row:hover{background:#fbfdff}.notification-row p{margin:3px 0;color:#475467}.notice-dot{width:7px;height:7px;margin-top:7px;border-radius:50%;background:#d0d5dd}.notification-row.unread .notice-dot{background:var(--blue)}.notification-row.unread strong{color:#1d2939}
.filter-bar{display:grid;grid-template-columns:1fr 220px auto;gap:10px;align-items:end;padding:12px;margin-bottom:14px}pre{max-width:680px;white-space:pre-wrap;word-break:break-all;color:#475467;font-size:11px}
.status-page{max-width:660px;margin:70px auto;text-align:center}.status-symbol{width:54px;height:54px;margin:18px auto;border-radius:50%;background:var(--amber-soft);border:12px solid #ffe4b8}.status-symbol.rejected,.status-symbol.disabled{background:var(--red-soft);border-color:#f7d1cc}.status-page>p{color:var(--muted);font-size:15px}.status-notices{margin:22px 0;text-align:left}.status-notices div{display:grid;gap:3px;padding:13px 15px;border-bottom:1px solid var(--line)}.status-notices div:last-child{border-bottom:0}.narrow-page{max-width:620px}
@media(max-width:1100px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-maintenance-grid{grid-template-columns:1fr}.tree-children{grid-template-columns:1fr}.login-stage{grid-template-columns:minmax(390px,.9fr) minmax(360px,1.1fr);padding-left:36px;padding-right:36px}.login-product{margin-left:52px}.login-product h2{font-size:29px}}
@media(max-width:780px){:root{--sidebar:0px}.topbar{padding:0 14px}.brand span:last-child{font-size:13px}.topbar-actions{gap:8px}.user-name{display:none}.work-mode-switch button{padding:4px 8px}.sidebar{position:fixed;top:var(--topbar);bottom:auto;width:100%;display:flex;gap:3px;overflow-x:auto;padding:8px 12px;border-right:0;border-bottom:1px solid var(--line)}.sidebar .nav-label{display:none}.sidebar-view-switch{flex:0 0 184px;margin:0 7px 0 0;padding:0 10px 0 0;border-right:1px solid var(--line);border-bottom:0}.sidebar-work-mode-switch{width:100%}.sidebar a{white-space:nowrap}.content{margin-left:0;padding:calc(var(--topbar) + 66px) 12px 50px}.public-shell .content{padding:calc(var(--topbar) + 24px) 12px}.login-shell .content{padding:var(--topbar) 0 0}.page-title{align-items:flex-start;flex-direction:column}.form-row,.filter-bar{grid-template-columns:1fr}.register-layout{grid-template-columns:1fr}.login-stage{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--topbar));padding:34px 18px}.login-stage:before{clip-path:polygon(0 35%,100% 7%,100% 100%,0 100%)}.login-stage:after{right:-42vw;bottom:-12vh;width:130vw}.login-card{justify-self:auto;width:min(420px,100%);min-height:0;padding:36px 28px 28px}.login-product{display:none}.login-runtime{margin-top:54px}.login-secondary{gap:9px}.register-copy{position:static;padding:0}.register-form{padding:18px}.directory-grid{grid-template-columns:1fr}.review-bar{display:block}.review-bar>div:last-child{margin-top:10px}.editor-popover{position:fixed;inset:90px 12px 20px;width:auto;overflow:auto}.tabs{overflow:auto;flex-wrap:nowrap;width:100%}}
@media(max-width:480px){.brand span:last-child{display:none}.topbar-actions>a:not(:last-child){display:none}}
@media(max-width:780px){.shared-key-panel,.personal-config-grid,.shared-key-form,.inline-config-form{grid-template-columns:1fr}.company-access-card ul{grid-template-columns:1fr}.config-warning{align-items:flex-start;flex-direction:column}}
.probe-card{max-width:560px;margin:8vh auto 0}.probe-card .primary-button{margin-top:8px}.probe-card .form-hint{margin-top:20px}

/* Lightweight in-DingTalk item review */
.dingtalk-review-shell{background:#f5f6f8}.dt-review{max-width:720px;min-height:100vh;margin:auto;padding:18px 14px 96px}.dt-review-nav{display:flex;justify-content:flex-end;gap:7px;margin-bottom:10px}.dt-review-nav a{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#344054;text-decoration:none;font-size:13px}.dt-review-nav a:last-child{border-color:#dcdcdc;background:var(--blue-soft);color:var(--blue)}.dt-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:4px 2px 14px}.dt-review-head span:first-child{color:var(--blue);font-size:12px;font-weight:650}.dt-review-head h1{margin:3px 0 0;font-size:21px;line-height:1.35}.dt-export-bip{display:inline-flex;margin-top:9px;color:var(--blue);font-size:12px}.dt-summary{display:grid;grid-template-columns:1fr 1fr;padding:13px 15px;margin-bottom:12px;border:1px solid var(--line);border-radius:9px;background:#fff}.dt-summary span{color:var(--muted);font-size:12px}.dt-summary span:last-child{grid-column:1/-1;margin-top:8px}.dt-summary strong{display:block;color:var(--text);font-size:13px;word-break:break-all}.dt-item-list{display:grid;gap:10px}.dt-item{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff}.dt-item-main{display:grid;grid-template-columns:28px 1fr;gap:10px;padding:15px}.dt-row{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--blue-soft);color:var(--blue);font:600 12px var(--mono)}.dt-item-main strong{display:block;font-size:15px;line-height:1.55;word-break:break-all}.dt-system{margin-top:6px}.dt-system.pass{color:var(--green)}.dt-system.reject{color:var(--red)}.dt-item-main ul{margin:7px 0 0;padding-left:18px;color:var(--red);font-size:12px}.dt-decision{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.dt-decision label{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;cursor:pointer;font-weight:650}.dt-decision label+label{border-left:1px solid var(--line)}.dt-decision .dt-select{grid-column:1/-1;justify-content:flex-start;padding:8px 11px;color:#475467;font-size:12px;font-weight:500}.dt-decision .dt-select+label{border-left:0}.dt-decision input{width:auto;margin:0}.dt-decision .reject{color:var(--red)}.dt-decision .approve{color:var(--green)}.dt-decision label:has(input:checked){background:var(--blue-soft);box-shadow:inset 0 0 0 1px #d4d4d4}.dt-result{display:flex;align-items:center;justify-content:space-between;padding:10px 15px;border-top:1px solid var(--line);background:var(--surface-soft)}.dt-result small{display:inline}.dt-review-actions{position:fixed;z-index:5;left:50%;bottom:0;width:min(720px,100%);transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(255,255,255,.96);box-shadow:0 -8px 24px rgba(31,35,41,.08);backdrop-filter:blur(10px)}.dt-review-actions>div{display:flex;gap:7px}.dt-review-actions button{min-height:40px;padding:8px 13px}
.dt-withdraw{min-height:28px;margin-left:8px;padding:3px 8px;border-color:#efb7b2;color:var(--red);font-size:12px}
.dt-decision button{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px;border:0;border-radius:0;background:#fff;font-weight:650}.dt-decision button+button{border-left:1px solid var(--line)}.dt-decision button.reject{color:var(--red)}.dt-decision button.approve{color:var(--green)}.dt-decision button:active{background:var(--blue-soft)}.dt-decision button:disabled{opacity:.5}.dt-review-actions>span{color:#667085;font-size:12px}.dt-review-actions .primary{border-color:#111;background:#111;color:#fff}
.dt-reject,.danger-text{color:var(--red)}.ai-review-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
@media(max-width:520px){.dt-review{padding:12px 10px 92px}.dt-review-actions button{padding:8px 10px}.dt-summary{grid-template-columns:1fr}.dt-summary span+span,.dt-summary span:last-child{grid-column:auto;margin-top:7px}}

/* Dedicated correction flow for AI-approved items opened from DingTalk. */
.ai-reject-shell{min-height:100vh;margin:0;background:#f5f6f8;color:var(--text)}
.ai-reject-page{width:min(620px,100%);margin:0 auto;padding:18px 16px 48px}
.ai-reject-nav{display:flex;justify-content:flex-end;gap:8px;margin-bottom:22px}
.ai-reject-nav a{display:inline-flex;align-items:center;min-height:36px;padding:7px 11px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#344054;text-decoration:none;font-size:13px}
.ai-reject-head{margin-bottom:18px}.ai-reject-head>span{color:var(--red);font-size:12px;font-weight:650}.ai-reject-head h1{margin:5px 0 8px;font-size:28px;line-height:1.25}.ai-reject-head p{margin:0;color:var(--muted);line-height:1.7}
.ai-reject-summary,.ai-reject-form,.ai-reject-finished{padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff}
.ai-reject-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}.ai-reject-summary dl>div:last-child{grid-column:1/-1}.ai-reject-summary dt,.ai-reject-value span{color:var(--muted);font-size:12px}.ai-reject-summary dd{margin:3px 0 0;font-weight:650}.ai-reject-value{margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}.ai-reject-value strong{display:block;margin-top:5px;font-size:17px;line-height:1.55;word-break:break-word}.ai-reject-ai-note{margin:14px 0 0;padding:10px 12px;border-radius:7px;background:var(--surface-soft);color:#475467;font-size:13px;line-height:1.65}
.ai-reject-form{margin-top:12px}.ai-reject-form label{display:block;margin-bottom:8px;font-weight:650}.ai-reject-form label span{color:var(--red);font-size:12px}.ai-reject-form textarea{display:block;width:100%;min-height:128px;resize:vertical}.ai-reject-form button{width:100%;min-height:44px;margin-top:12px;border-radius:7px}.ai-reject-finished{margin-top:12px}.ai-reject-finished strong{font-size:17px}.ai-reject-finished p{margin:8px 0 0;color:var(--muted);line-height:1.65}
@media(max-width:520px){.ai-reject-page{padding:12px 12px 36px}.ai-reject-head h1{font-size:25px}.ai-reject-summary,.ai-reject-form,.ai-reject-finished{padding:15px}.ai-reject-summary dl{grid-template-columns:1fr}.ai-reject-summary dl>div:last-child{grid-column:auto}}

/* Dynamic rule editor and structured application */
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.section-head h2{margin:4px 0}.section-head p{margin:0;color:var(--muted)}
.rule-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.segment-editor{display:grid;gap:14px}.segment-card{padding:18px}.segment-card-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:14px}.segment-card-head h3{margin:0}.segment-card-actions{display:flex;gap:5px}.segment-card-actions button{min-height:32px;padding:5px 9px}.segment-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.segment-grid .full-width{grid-column:1/-1}.level-editor{grid-column:1/-1;border-top:1px solid var(--line);padding-top:12px}.level-row{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:end;margin-top:8px}.level-index{display:grid;place-items:center;height:38px;border-radius:5px;background:#f1f4f8;color:#667085;font:12px var(--mono)}.rule-preview{position:sticky;top:86px;padding:18px}.rule-preview ol{margin:12px 0 0;padding-left:20px}.add-segment{border-style:dashed;background:#fbfcfe}
.application-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:16px;overflow:hidden}.application-context>div{padding:15px 17px;background:#fff}.application-context span{display:block;color:var(--muted);font-size:12px}.application-context strong{display:block;margin-top:2px}.entry-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.entry-mode-tabs{display:flex;gap:4px}.entry-mode-tabs button{min-height:34px;padding:5px 11px}.entry-mode-tabs button.active{background:var(--blue-soft);border-color:#dcdcdc;color:var(--blue)}.structured-rows{display:grid;gap:12px}.structured-row{padding:17px}.structured-row-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.structured-row-head strong{font-family:var(--mono)}.structured-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.segment-fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:7px}.segment-fieldset legend{padding:0 6px;font-weight:650}.level-fields{display:grid;gap:9px}.row-preview{margin-top:12px;padding:10px 12px;border-radius:6px;background:#f7f9fc;color:#475467}.row-preview code{color:#1d2939}.raw-entry{padding:18px}.paste-help{color:var(--muted);font-size:12px}.keyword-rule{color:var(--amber);font-size:11px}
.bip-pending{background:var(--amber-soft);color:var(--amber)}.bip-added,.status.completed{background:var(--green-soft);color:var(--green)}.status.pending_bip,.status.partially_added{background:var(--blue-soft);color:var(--blue)}

/* Master-data library */
.import-panel{margin-bottom:14px}.import-form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;padding:18px}.library-filter{display:grid;grid-template-columns:minmax(240px,1fr) 220px 150px auto;gap:10px;align-items:end;padding:13px;margin-bottom:14px}.import-preview{padding:20px}.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:18px 0;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.metric-strip>div{padding:15px 18px;background:#fff}.metric-strip strong{display:block;font:600 24px/1.1 var(--mono)}.metric-strip span{color:var(--muted);font-size:12px}.import-table{max-height:58vh}.import-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px}.structure-chips{display:flex;flex-wrap:wrap;gap:5px}.structure-chips span{padding:3px 6px;border-radius:4px;background:#f0f3f7;color:#59636e;font-size:11px}
.test-login-card{max-width:430px;margin:8vh auto;padding:26px}

.rule-structure-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:8px}.rule-structure-head h2{margin:0}.rule-structure-head p{margin:3px 0 0;color:var(--muted)}.rule-structure-head>span{font:12px var(--mono);color:var(--blue)}
.rule-segment-card{padding:18px!important;background:#fff!important}.segment-card-head>div:first-child{display:flex;align-items:center;gap:9px}.segment-number{display:grid;place-items:center;width:30px;height:26px;border-radius:5px;background:var(--blue-soft);color:var(--blue);font:600 11px var(--mono)}.segment-card-head h3{margin:0}.segment-actions{display:flex;gap:5px}.segment-actions button{min-height:32px;padding:5px 9px}.level-editor{margin:14px 0}.level-editor>.field-label{display:flex;align-items:center;justify-content:space-between}.level-editor>.field-label button{min-height:30px;padding:4px 9px}.structure-preview{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px dashed #d4d4d4;border-radius:7px;background:#f7f8fa}.structure-preview span{color:var(--muted);font-size:12px}.structure-preview code{color:var(--blue);word-break:break-all}
.variant-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 10px;padding-top:20px;border-top:1px solid var(--line)}.variant-section-head h3{margin:0}.variant-section-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.rule-variants{display:grid;gap:12px}.rule-variant{padding:16px;border:1px solid #d4d4d4;border-left:4px solid var(--blue);border-radius:8px;background:#f8f9fb}.variant-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.variant-head>div{display:flex;align-items:center;gap:8px}.condition-chip{padding:3px 7px;border-radius:4px;background:var(--blue-soft);color:var(--blue);font:600 11px var(--mono)}.inline-reference{display:flex;align-items:center;gap:8px}.inline-reference select{min-width:0}.inline-reference button{flex:0 0 auto}.empty-branch-note{padding:12px;border:1px dashed #d4d4d4;border-radius:6px;color:var(--muted);background:#fff}
.matched-condition{display:block;margin:-2px 0 10px;color:var(--blue);font-weight:600}.empty-level{padding:14px;border:1px dashed #d4d4d4;border-radius:7px;background:#f7f9fc;color:var(--muted)}
.application-entry{padding:18px;margin-bottom:12px}.application-context>.form-row{grid-column:1/-1;width:100%}.mode-tabs{display:flex;gap:4px}.mode-tabs button.active{background:var(--blue-soft);border-color:#dcdcdc;color:var(--blue)}.entry-toolbar>div:last-child{display:flex;gap:7px}.paste-panel{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;padding:14px;margin-bottom:14px;border:1px solid #dcdcdc;border-radius:7px;background:var(--blue-soft)}.paste-panel[hidden]{display:none}.segment-input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.segment-input-grid fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:7px}.segment-input-grid legend{padding:0 6px;font-weight:650}.segment-input-grid label+label{margin-top:8px}.composite-segment{display:grid;gap:7px}.composite-segment>span{font-weight:620}.composite-segment>span small{margin-left:5px;color:var(--muted);font-weight:400}.composite-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.composite-fields label+label{margin-top:0}.composite-fields em{font-size:10px}.unsigned-contract-toggle{display:flex!important;align-items:flex-start;gap:9px;margin:0!important;padding:10px 12px;border:1px solid #dcdcdc;border-radius:7px;background:var(--blue-soft);cursor:pointer}.unsigned-contract-toggle input{width:16px!important;min-width:16px;height:16px;margin-top:2px}.unsigned-contract-toggle span{display:grid;gap:2px}.unsigned-contract-toggle b{color:var(--blue)}.unsigned-contract-toggle small{color:var(--muted);font-weight:400}.composite-fields input:disabled::placeholder{color:#6b7280;opacity:1}.value-preview{display:flex;align-items:center;gap:12px;margin-top:12px;padding:9px 11px;border-radius:6px;background:#f7f9fc}.value-preview span{color:var(--muted);font-size:12px}.value-preview code{color:#1d2939;word-break:break-all}.application-submit{position:sticky;bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin-top:12px;box-shadow:0 10px 30px rgba(29,35,41,.12)}
.required-segment{border-color:#f2b9b4!important}.required-segment legend em{margin-left:5px;color:var(--red);font-size:11px;font-style:normal}.submitting-overlay{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:rgba(247,248,250,.82);backdrop-filter:blur(5px)}.submitting-overlay[hidden]{display:none}.submitting-panel{width:min(420px,100%);padding:30px;text-align:center;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 24px 70px rgba(31,35,41,.18)}.submitting-panel strong{display:block;margin-top:16px;font-size:18px}.submitting-panel p{margin:7px 0 0;color:var(--muted)}.loading-spinner{display:block;width:38px;height:38px;margin:auto;border:4px solid #dce8fb;border-top-color:var(--blue);border-radius:50%;animation:loading-spin .8s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}
.is-submitting,.is-submitting body{overflow:hidden}.submitting-overlay{z-index:1000;width:100vw;height:100dvh;max-width:none!important;margin:0!important;box-sizing:border-box}.submitting-panel{margin:0}
.entry-tools{display:flex;flex-wrap:wrap;gap:7px}.entry-tools .button{min-height:38px}.entry-tools a[aria-disabled="true"]{opacity:.45;cursor:not-allowed}.excel-import-status{padding:10px 12px;margin-bottom:12px;border-radius:6px;border:1px solid}.excel-import-status.notice{background:var(--blue-soft);border-color:#dcdcdc;color:#1d2939}.excel-import-status.success{background:var(--green-soft);border-color:#b8e0cf;color:#116642}.excel-import-status.error{background:var(--red-soft);border-color:#efc5c0;color:#a82c23}.reapply-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;margin-bottom:14px}.page-actions{display:flex;align-items:center;gap:10px}
.bip-filter-bar{display:grid;grid-template-columns:minmax(190px,1fr) minmax(220px,1fr) minmax(210px,1fr) auto;gap:12px;align-items:end;padding:14px 16px;margin-bottom:14px}.filter-actions{display:flex;gap:8px;align-items:center}.batch-select{display:inline-flex;align-items:center;gap:5px;margin:0 8px 5px 0;color:#475467;font-size:12px;white-space:nowrap}.batch-select input{accent-color:#111}

@media(max-width:1000px){.rule-editor-layout{grid-template-columns:1fr}.rule-preview{position:static}.application-context{grid-template-columns:1fr}.library-filter{grid-template-columns:1fr 1fr}.metric-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.segment-grid,.library-filter,.import-form,.paste-panel,.bip-filter-bar{grid-template-columns:1fr}.segment-grid .full-width{grid-column:auto}.entry-toolbar,.import-actions,.section-head,.rule-structure-head,.application-submit{align-items:flex-start;flex-direction:column}.application-submit{position:static;box-shadow:none}.metric-strip{grid-template-columns:1fr 1fr}.structured-fields,.segment-input-grid{grid-template-columns:1fr}.segment-actions{flex-wrap:wrap}}
.approval-flow-row td{padding:0!important;background:#fbfcfe}.approval-flow{display:flex;gap:12px;align-items:stretch;overflow-x:auto;margin:0;padding:14px 12px 18px;list-style:none;scrollbar-color:#c8d0dc transparent}.approval-flow li{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;flex:1 0 205px;min-width:205px;padding:0 14px 0 0;color:#667085}.approval-flow li::after{content:"";position:absolute;left:9px;right:-8px;top:8px;height:2px;background:#d8dee8}.approval-flow li:last-child::after{display:none}.approval-flow .flow-marker{position:relative;z-index:1;width:18px;height:18px;border:4px solid #d8dee8;border-radius:50%;background:#fff}.approval-flow li>div{position:relative;z-index:1;min-width:0;background:#fbfcfe;overflow-wrap:anywhere}.approval-flow strong{display:block;color:#344054;font-size:13px}.approval-flow small{display:block;margin-top:4px;line-height:1.45;overflow-wrap:anywhere}.approval-flow li.approved .flow-marker,.approval-flow li.completed .flow-marker{border-color:#078c5a;background:#078c5a}.approval-flow li.rejected .flow-marker{border-color:#d92d20;background:#d92d20}.approval-flow li.skipped .flow-marker{border-color:#98a2b3;background:#fff}.approval-flow li.current>div{padding:8px 10px;border-left:3px solid #111;background:#f3f4f6}.approval-flow li.current .flow-marker{border-color:#111}.review-select-cell{width:42px;text-align:center}.review-select-cell input{width:16px;height:16px;accent-color:#111}.item-operation{margin-bottom:5px}.value-before,.value-after{display:block}.value-before{color:#667085;text-decoration:line-through}.value-after{margin-top:4px;color:#1f2329}.status.create,.status.rename{font-size:11px}.status.rename{background:#fff4e5;color:#9a6700}.approval-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.approval-group-grid label{display:flex;gap:8px;align-items:flex-start;padding:9px 10px;border:1px solid #e4e7ec;border-radius:7px;background:#fff}.approval-duty-picker{padding-top:16px;border-top:1px solid #eaecf0}.dt-flow{display:grid;gap:0;margin:10px 0 12px;padding:0;list-style:none;border-left:2px solid #d8dee8}.dt-flow li{padding:6px 10px;color:#667085}.dt-flow li strong,.dt-flow li small{display:block}.dt-flow li.current{margin-left:-2px;border-left:3px solid #111;background:#f3f4f6;color:#1f2329}.dt-flow li.approved,.dt-flow li.completed{color:#078c5a}.dt-flow li.rejected{color:#d92d20}
.approval-flow-disclosure>summary,.dt-flow-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;padding:8px 12px;cursor:pointer;color:#344054;list-style:none}.approval-flow-disclosure>summary::-webkit-details-marker,.dt-flow-disclosure>summary::-webkit-details-marker{display:none}.approval-flow-disclosure>summary span,.dt-flow-disclosure>summary span{font-weight:650}.approval-flow-disclosure>summary small,.dt-flow-disclosure>summary small{margin:0;color:#667085}.approval-flow-disclosure>summary:after,.dt-flow-disclosure>summary:after{content:"展开";flex:none;color:#111;font-size:12px}.approval-flow-disclosure[open]>summary:after,.dt-flow-disclosure[open]>summary:after{content:"收起"}.approval-flow-disclosure[open]>summary,.dt-flow-disclosure[open]>summary{border-bottom:1px solid #e4e7ec}.row-review-actions{display:flex;flex-wrap:wrap;gap:6px}.row-review-actions button{min-height:32px;padding:5px 10px}.dt-flow-disclosure{border-top:1px solid #eef0f3}.dt-flow-disclosure>summary{min-height:36px;padding:8px 15px;font-size:12px}.dt-flow-disclosure .dt-flow{margin:0 15px 12px}
@media(max-width:760px){.approval-flow{display:grid;gap:0;padding-left:14px;overflow:visible}.approval-flow li{min-width:0;padding:0 0 14px}.approval-flow li::after{left:9px;right:auto;top:9px;bottom:-1px;width:2px;height:auto}.approval-group-grid{grid-template-columns:1fr}.approval-flow-row td[colspan]{display:table-cell}}
.operation-tabs{display:inline-flex;gap:4px;margin:0 0 14px;padding:4px;border:1px solid #d8dee8;border-radius:8px;background:#f5f7fa}.operation-tabs a{padding:8px 16px;border-radius:6px;color:#475467;text-decoration:none}.operation-tabs a.active{background:#fff;color:#111;box-shadow:0 1px 3px rgba(16,24,40,.12)}.archive-picker{display:grid;gap:14px}.archive-picker-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.archive-picker-head small{display:block;margin-top:5px;color:#667085}.archive-search{display:flex;gap:8px;min-width:min(420px,100%)}.archive-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:320px;overflow:auto}.archive-result{display:flex;justify-content:space-between;gap:14px;text-align:left;padding:11px 12px;border:1px solid #e4e7ec;background:#fff;border-radius:7px}.archive-result strong,.archive-result small{display:block}.archive-result small{margin-top:4px;color:#667085}.archive-result:not(:disabled):hover{border-color:#111;background:#f7f8fa}.archive-result:disabled{color:#98a2b3;background:#f5f7fa}
@media(max-width:760px){.archive-picker-head{display:grid}.archive-search{min-width:0}.archive-results{grid-template-columns:1fr}}

/* Rule configuration workflow — flat, business-first, no decorative step cards. */
.rule-center-title{align-items:flex-end}.rule-center-table{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}
.rule-center-table table{min-width:1120px}.rule-center-table th{background:var(--surface-soft)}.rule-center-table td{vertical-align:middle}.rule-center-table td:first-child strong,.rule-center-table td small,.rule-ai-state{display:block}.rule-center-table td small{max-width:320px;margin-top:4px;color:var(--muted);line-height:1.45}.rule-actions-column{width:260px}.rule-center-table form{display:inline-block;margin:0 0 0 4px}.rule-center-table td>.button+.button{margin-left:4px}.button.compact,button.compact{min-height:32px;padding:5px 9px;font-size:12px}.rule-muted{color:var(--muted)}
.rule-new-form{display:grid;gap:18px;max-width:720px;padding:24px}.rule-new-form .form-actions{display:flex;justify-content:flex-end;gap:8px}
.rule-config-title{margin-bottom:18px}.rule-config-shell{position:relative;display:grid;grid-template-columns:232px minmax(0,1fr);gap:32px;padding-bottom:88px}.rule-config-nav{position:sticky;top:82px;align-self:start;display:grid;gap:4px}.rule-config-nav button{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:42px;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:#475467;text-align:left}.rule-config-nav button:hover{background:var(--surface-soft);color:var(--text)}.rule-config-nav button.active{background:var(--blue-soft);color:var(--text);font-weight:700}.rule-config-nav button span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:#667085;font:11px var(--mono)}.rule-config-nav button.active span{background:var(--text);color:#fff}.rule-config-nav em{color:var(--muted);font-size:10px;font-style:normal;font-weight:400;white-space:nowrap}
.rule-config-content{min-width:0}.rule-config-section{scroll-margin-top:86px;padding:4px 0 40px;margin-bottom:36px;border-bottom:1px solid var(--line)}.rule-config-section:last-child{border-bottom:0}.rule-config-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.rule-config-section h2{margin:0;font-size:20px}.rule-config-section header p{margin:6px 0 0;color:var(--muted);font-size:13px}.rule-section-actions,.rule-branch-actions{display:flex;gap:8px}.rule-overview-form{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(340px,1.2fr);gap:16px}.rule-field-table{max-height:560px;border:1px solid var(--line);border-radius:8px}.rule-field-table table{min-width:1000px}.rule-field-table thead th{position:sticky;z-index:2;top:0;background:var(--surface-soft)}.rule-field-table td{height:48px;padding:9px 12px}.rule-field-table td strong,.rule-field-table td small{display:block}.rule-field-table td small{margin-top:2px;color:var(--muted);font:10px var(--mono)}.rule-row-actions{white-space:nowrap}.rule-row-actions button+button{margin-left:4px}.rule-row-actions .danger{color:var(--red)}.rule-empty-branch{color:var(--muted)}.rule-branch-actions{justify-content:flex-end;margin-top:10px}
.rule-check-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rule-check-summary>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:16px 14px;border-bottom:1px solid var(--line)}.rule-check-summary>div:nth-last-child(-n+3){border-bottom:0}.rule-check-summary strong{font:650 20px var(--mono)}.rule-check-summary span{color:var(--muted);font-size:12px}.rule-inline-note{margin:14px 0 0;color:var(--muted);font-size:12px}.rule-switch-row{display:flex!important;align-items:flex-start;gap:10px;padding:14px 0;margin-bottom:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rule-switch-row input,.rule-inline-check input{flex:0 0 auto;width:17px;height:17px;margin-top:2px;accent-color:var(--text)}.rule-switch-row span{display:grid;gap:4px}.rule-switch-row small{color:var(--muted)}.rule-decision-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rule-decision-facts>div{display:grid;gap:6px;padding:16px}.rule-decision-facts>div+div{border-left:1px solid var(--line)}.rule-decision-facts span{color:var(--muted);font-size:12px;line-height:1.6}
.rule-approval-path{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rule-approval-path li{display:grid;gap:6px;padding:18px 16px}.rule-approval-path li+li{border-left:1px solid var(--line)}.rule-approval-path span{color:var(--muted);font-size:12px;line-height:1.55}.rule-release-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.rule-scenario-workspace,.rule-publish-workspace{display:grid;align-content:start;gap:14px}.rule-scenario-workspace h3,.rule-publish-workspace h3{margin:0}.rule-model-simulation{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rule-diff-summary{display:grid;grid-template-columns:repeat(3,1fr);margin:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rule-diff-summary div{padding:14px}.rule-diff-summary dt{color:var(--muted);font-size:11px}.rule-diff-summary dd{margin:5px 0 0;font-weight:700}.rule-result-panel{overflow:auto;max-height:360px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.rule-result-panel:empty{display:none}.rule-result-panel table{margin-top:12px;font-size:12px}.rule-result-panel ul{margin:8px 0 0;padding-left:20px}.rule-result-panel li+li{margin-top:6px}.rule-result-panel code{display:inline-block;margin-right:8px;color:var(--muted);font-size:10px}.rule-result-errors>strong{color:var(--red)}.rule-result-warnings>strong{color:var(--amber)}.rule-result-success{display:grid;gap:4px}.rule-result-success strong{color:var(--green)}
.rule-level-list{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.rule-level-item{display:grid!important;grid-template-columns:24px minmax(120px,220px) auto;align-items:center;gap:6px;margin:0}.rule-level-item>span{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:var(--surface-soft);color:var(--muted);font:11px var(--mono)}.rule-level-item input{min-height:34px;padding:6px 9px}.rule-dialog-help{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.rule-field-dialog-body [hidden]{display:none!important}
.rule-config-actions{position:fixed;z-index:20;right:26px;bottom:18px;left:26px;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:58px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:10px;background:#fff}.rule-config-actions>span{color:var(--muted);font-size:12px}.rule-config-actions>span[data-tone="success"]{color:var(--green)}.rule-config-actions>span[data-tone="warning"]{color:var(--amber)}.rule-config-actions>span[data-tone="error"]{color:var(--red)}.rule-config-actions>div{display:flex;gap:8px}.rule-config-shell.is-busy{cursor:progress}.rule-config-shell.is-busy .rule-config-content{opacity:.72}
.rule-field-dialog,.rule-branch-dialog,.rule-publish-dialog{z-index:140;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--line-strong);border-radius:12px;background:#fff}.rule-field-dialog::backdrop,.rule-branch-dialog::backdrop,.rule-publish-dialog::backdrop{background:rgba(17,17,17,.38)}.rule-field-dialog>form,.rule-branch-dialog>form,.rule-publish-dialog>form{display:flex;max-height:calc(100dvh - 42px);flex-direction:column}.rule-field-dialog header,.rule-branch-dialog header,.rule-publish-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--line)}.rule-field-dialog h2,.rule-branch-dialog h2,.rule-publish-dialog h2{margin:0;font-size:18px}.rule-field-dialog header p,.rule-branch-dialog header p,.rule-publish-dialog header p{margin:4px 0 0;color:var(--muted);font-size:12px}.rule-field-dialog header button,.rule-branch-dialog header button,.rule-publish-dialog header button{min-width:32px;width:32px;height:32px;padding:0;border:0;background:transparent;font-size:24px}.rule-field-dialog-body{display:grid;gap:16px;overflow-y:auto;padding:20px 22px}.rule-field-dialog-body fieldset{display:grid;gap:12px;margin:0;padding:14px;border:1px solid var(--line);border-radius:8px}.rule-field-dialog-body legend{padding:0 6px;font-weight:700}.rule-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rule-inline-check{display:flex!important;align-items:flex-start;gap:8px;margin:0}.rule-field-dialog footer,.rule-branch-dialog footer,.rule-publish-dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--line);background:var(--surface-soft)}
@media(max-width:1050px){.rule-config-shell{grid-template-columns:1fr}.rule-config-nav{position:sticky;z-index:10;top:64px;display:flex;overflow-x:auto;padding:6px;border-bottom:1px solid var(--line);background:var(--bg)}.rule-config-nav button{flex:0 0 auto}.rule-config-actions{left:18px}.rule-release-grid{grid-template-columns:1fr}}
@media(max-width:700px){.rule-overview-form,.rule-dialog-grid,.rule-model-simulation,.rule-decision-facts,.rule-approval-path{grid-template-columns:1fr}.rule-config-section>header{display:grid}.rule-decision-facts>div+div,.rule-approval-path li+li{border-top:1px solid var(--line);border-left:0}.rule-check-summary{grid-template-columns:1fr 1fr}.rule-check-summary>div:nth-last-child(-n+3){border-bottom:1px solid var(--line)}.rule-check-summary>div:nth-last-child(-n+2){border-bottom:0}.rule-config-actions{right:8px;bottom:8px;left:8px;align-items:flex-start}.rule-config-actions>div{flex-wrap:wrap;justify-content:flex-end}.rule-config-actions .button,.rule-config-actions button{min-height:36px;padding:6px 9px}}

/* Internal publication: restrained, line-based voucher inspection. */
.voucher-publication-page{max-width:1380px;margin:0 auto}
.voucher-publication-title{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:4px 0 22px;border-bottom:1px solid var(--line)}
.voucher-publication-title h1{margin:0 0 8px;font-size:28px;letter-spacing:-.02em}
.voucher-publication-title p{margin:0;color:var(--muted);font-size:13px}
.voucher-publication-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--muted);font-size:12px;white-space:nowrap}
.voucher-publication-title-actions>span{margin-right:4px}
.voucher-disclosure-button{min-height:32px;padding:5px 10px;border:1px solid #cfd6df;border-radius:5px;background:#f7f8fa;color:#344054;font:inherit;cursor:pointer}
.voucher-disclosure-button:hover{border-color:#98a2b3;background:#eef1f5;color:#101828}
.voucher-disclosure-button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.voucher-status-tabs{display:flex;gap:26px;border-bottom:1px solid var(--line)}
.voucher-status-tabs a{padding:16px 0 12px;border-bottom:2px solid transparent;color:#555f6d;font-size:13px;font-weight:650}
.voucher-status-tabs a.active{border-bottom-color:var(--blue);color:var(--blue)}
.voucher-publication-filter{display:grid;grid-template-columns:minmax(160px,1fr) 120px minmax(190px,1.25fr) 126px minmax(140px,.85fr) auto;gap:12px;align-items:end;padding:20px 0 24px;border-bottom:1px solid var(--line)}
.voucher-publication-filter label{display:grid;gap:7px;min-width:0;color:var(--muted);font-size:12px}
.voucher-publication-filter select,.voucher-publication-filter input{width:100%;min-width:0;background:#fff}
.voucher-filter-actions{display:flex;gap:8px}
.voucher-filter-actions .button{min-width:66px}
.voucher-exception-list{border-top:0}
.voucher-exception-row{border-bottom:1px solid var(--line)}
.voucher-exception-row>summary{display:grid;grid-template-columns:minmax(190px,1fr) 112px 112px 90px 90px 82px 58px;grid-template-areas:"company date number preparer reviewer flags expand" "reason reason reason reason reason reason reason";gap:10px 16px;align-items:center;padding:20px 2px 14px;cursor:pointer;list-style:none}
.voucher-exception-row>summary::-webkit-details-marker{display:none}
.voucher-exception-row>summary:hover .voucher-exception-company,.voucher-exception-row[open]>summary .voucher-exception-company{color:var(--blue)}
.voucher-exception-company{grid-area:company;font-weight:700}
.voucher-exception-date{grid-area:date;color:#667085;font-variant-numeric:tabular-nums}
.voucher-exception-number{grid-area:number;color:#667085}
.voucher-exception-preparer{grid-area:preparer}.voucher-exception-reviewer{grid-area:reviewer}.voucher-exception-preparer,.voucher-exception-reviewer{display:grid;gap:2px;color:#1d2939;font-size:12px;white-space:nowrap}.voucher-exception-preparer small,.voucher-exception-reviewer small{color:#667085;font-size:10px;font-weight:400}
.voucher-exception-flags{grid-area:flags;display:flex;align-items:center;white-space:nowrap}
.voucher-major-risk,.voucher-related-party{color:var(--red);font-size:12px;font-weight:700}
.voucher-exception-reason{grid-area:reason;display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 14px;color:#475467;font-size:12px;line-height:1.65}
.voucher-exception-reason>strong{color:var(--red);font-size:12px}.voucher-issue-location{color:var(--red);font-weight:700}
.voucher-reason-text{color:#1d2939;font-size:13px;font-weight:650;line-height:1.6}
.voucher-expand-label{grid-area:expand;color:var(--blue);font-size:12px;text-align:right;white-space:nowrap}
.voucher-exception-row[open] .voucher-expand-label{font-size:0}
.voucher-exception-row[open] .voucher-expand-label::after{content:"收起";font-size:12px}
.voucher-publication-status.open{color:var(--amber)}
.voucher-publication-status.resolved{color:var(--green)}
.app-shell .status.voucher-publication-status.open{background:var(--amber-soft)!important;color:var(--amber)}
.app-shell .status.voucher-publication-status.resolved{background:var(--green-soft)!important;color:var(--green)}
.voucher-exception-detail{padding:0 2px 26px}
.voucher-exception-meta{display:flex;flex-wrap:wrap;gap:10px 22px;padding:0 0 12px;color:var(--muted);font-size:11px}
.voucher-access-state.full{color:var(--blue)}
.voucher-access-state.masked{color:#667085}
.voucher-line-table-wrap{overflow-x:auto;border-top:1px solid var(--line)}
.voucher-line-table{width:100%;min-width:1120px;border-collapse:collapse}
.voucher-line-table th,.voucher-line-table td{padding:11px 12px;border-bottom:1px solid #edf0f3;text-align:left;vertical-align:top}
.voucher-line-table th{color:var(--muted);font-size:11px;font-weight:600}
.voucher-line-table td{font-size:12px;line-height:1.6}
.voucher-line-table th:first-child,.voucher-line-table td:first-child{width:62px;padding-left:2px}
.voucher-line-table th:nth-last-child(-n+2),.voucher-line-table td:nth-last-child(-n+2){width:100px;text-align:right}
.voucher-line-number-cell{white-space:nowrap}.voucher-line-number.issue,.voucher-line-marker,.voucher-cell-issue{color:var(--red);font-weight:700}.voucher-line-marker{display:block;margin-top:2px;font-size:10px}.voucher-cell-issue{text-decoration:underline;text-decoration-color:#d9a3a0;text-decoration-thickness:1px;text-underline-offset:3px}
.voucher-mask-note{margin:10px 0 0;color:#8992a0;font-size:11px}
.voucher-publication-empty{padding:48px 2px;color:var(--muted);text-align:left}
.voucher-publication-pagination{margin-top:22px}
.receivable-publication-filter{display:grid;grid-template-columns:minmax(180px,1fr) 130px minmax(180px,1fr) 150px auto;gap:12px;align-items:end;padding:20px 0 24px;border-bottom:1px solid var(--line)}
.receivable-publication-filter label{display:grid;gap:7px;min-width:0;color:var(--muted);font-size:12px}
.receivable-publication-filter select{width:100%;min-width:0;background:#fff}
.receivable-table-wrap{overflow-x:auto}
.receivable-publication-table{width:100%;min-width:1320px;border-collapse:collapse}
.receivable-publication-table th,.receivable-publication-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:12px;line-height:1.55}
.receivable-publication-table th{color:var(--muted);font-size:11px;font-weight:600;white-space:nowrap}
.receivable-publication-table th:first-child,.receivable-publication-table td:first-child{padding-left:2px}
.receivable-publication-table .numeric{font-variant-numeric:tabular-nums;white-space:nowrap}
.receivable-exception-reason,.receivable-exception-direction{color:var(--red);font-weight:700}
.receivable-publication-empty{padding:48px 2px!important;color:var(--muted);text-align:left!important}
@media(max-width:1050px){
  .voucher-publication-filter{grid-template-columns:1fr 130px 1fr}.voucher-filter-search{grid-column:1/3}.voucher-filter-actions{justify-content:flex-end}
  .receivable-publication-filter{grid-template-columns:1fr 130px 1fr}.receivable-publication-filter .voucher-filter-actions{grid-column:1/-1;justify-content:flex-start}
  .voucher-exception-row>summary{grid-template-columns:minmax(170px,1fr) 104px 104px 82px 82px 78px 54px;column-gap:12px}
}
@media(max-width:720px){
  .voucher-publication-title{align-items:flex-start;flex-direction:column}.voucher-publication-title-actions{flex-wrap:wrap;justify-content:flex-start}.voucher-publication-filter{grid-template-columns:1fr 1fr}.voucher-publication-filter label,.voucher-filter-search{grid-column:auto}.voucher-publication-filter label:nth-child(3){grid-column:1/-1}.voucher-filter-actions{grid-column:1/-1;justify-content:flex-start}
  .receivable-publication-filter{grid-template-columns:1fr 1fr}.receivable-publication-filter label:nth-child(3){grid-column:1/-1}
  .voucher-exception-row>summary{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"company flags" "date number" "preparer reviewer" "reason reason" "expand expand";gap:8px 14px;padding-top:18px}.voucher-expand-label{text-align:left}.voucher-exception-reason{margin-top:2px}
}

/* Ordered batch-application workspace */
.batch-application-page{max-width:1320px!important}.batch-page-title{align-items:center;margin-bottom:18px}.batch-page-title h1{font-size:26px}.batch-page-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.batch-page-actions .operation-tabs{margin:0}.application-form{display:grid;grid-template-columns:205px minmax(0,1fr);gap:16px;align-items:start}.application-step-rail{position:sticky;top:82px;display:grid;gap:3px;padding:14px}.step-rail-label{padding:4px 8px 10px;color:#98a2b3;font:600 10px var(--mono);letter-spacing:.1em}.application-step-rail a{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:start;padding:11px 9px;border-radius:7px;color:#475467;text-decoration:none}.application-step-rail a:hover{background:#f5f8fc}.application-step-rail a.current{background:var(--blue-soft);color:var(--blue)}.application-step-rail b{display:grid;place-items:center;width:26px;height:26px;border:1px solid #d7e3f6;border-radius:5px;background:#fff;color:var(--blue);font:600 10px var(--mono)}.application-step-rail span{font-size:13px;font-weight:650}.application-step-rail small{margin-top:2px;font-size:11px;line-height:1.45}.application-workbench{display:grid;min-width:0;gap:12px}.batch-application-page .application-context{grid-template-columns:1fr;gap:18px;margin:0;padding:20px;overflow:visible}.batch-application-page .application-context>div{padding:0;background:transparent}.batch-application-page .application-context .form-row{width:100%;gap:16px}.application-section-head{display:flex;align-items:flex-start;gap:11px}.application-section-head>span{display:grid!important;place-items:center;flex:0 0 auto;width:30px;height:30px;border-radius:6px;background:var(--blue-soft);color:var(--blue)!important;font:600 11px var(--mono)}.application-section-head>div{display:grid}.application-section-head strong{margin:0!important;font-size:15px}.application-section-head small{margin-top:2px}.archive-picker{gap:13px;padding:20px}.archive-picker-head{align-items:center}.archive-picker-head>.application-section-head{flex:1}.archive-source-badge{flex:0 0 auto;padding:4px 8px;border:1px solid #dcdcdc;border-radius:5px;background:#f7f8fa;color:#1d2939;font-size:11px;font-weight:650}.archive-filter{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.archive-filter button{min-width:72px}.archive-result-summary{color:var(--muted);font-size:12px}.archive-results{grid-template-columns:repeat(2,minmax(0,1fr));max-height:300px;padding:2px}.archive-results>.empty{grid-column:1/-1}.archive-results .compact-empty{padding:32px 18px;border:1px dashed var(--line);border-radius:7px;background:#fbfcfe}.archive-result{position:relative;min-height:66px;padding:11px 48px 11px 12px}.archive-result>span:first-child{min-width:0}.archive-result>span:last-child{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--blue);font-size:12px}.archive-result:not(:disabled):after{content:"";position:absolute;right:14px;top:13px;width:6px;height:6px;border-radius:50%;background:#c9c9c9}.archive-result:disabled>span:last-child{color:#98a2b3}.application-entry{margin:0;padding:20px}.entry-section-head{padding-bottom:15px;margin-bottom:14px;border-bottom:1px solid var(--line)}.entry-toolbar{padding:0;margin-bottom:14px}.application-entry .empty{padding:36px 18px}.application-submit{bottom:10px;margin:0;padding:13px 16px;border-color:#cfd8e6}.application-submit strong{font-size:15px}.application-submit #submitBatch{min-width:142px}
@media(max-width:1050px){.application-form{grid-template-columns:1fr}.application-step-rail{position:static;display:flex;overflow-x:auto}.step-rail-label{display:none}.application-step-rail a{min-width:170px}.application-workbench{min-width:0}}
@media(max-width:700px){.batch-page-title,.archive-picker-head{align-items:flex-start;flex-direction:column}.batch-page-actions{width:100%;align-items:flex-start}.application-step-rail{padding:8px}.application-step-rail a{min-width:150px;padding:8px}.batch-application-page .application-context .form-row{grid-template-columns:1fr}.archive-filter{grid-template-columns:1fr}.archive-filter button{width:100%}.archive-results{grid-template-columns:1fr}.entry-toolbar{align-items:flex-start}.entry-tools{width:100%}.entry-tools>*{flex:1}.application-submit{align-items:stretch}.application-submit #submitBatch{width:100%}}

/* The application rail is a real scroll position indicator and in-page navigation. */
.application-step-rail a{cursor:pointer;transition:background-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}
.application-step-rail a:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.application-step-rail a.current{box-shadow:inset 3px 0 var(--blue);transform:translateX(2px)}
#applicationContext,#archivePicker,#applicationEntry,#applicationSubmit{scroll-margin-top:96px}
@media(prefers-reduced-motion:reduce){.application-step-rail a{transition:none}}

/* Company-first approval responsibility console */
.duty-page-title{align-items:center}.duty-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:18px;align-items:end;padding:15px 17px;margin-bottom:14px}.duty-filter-check{display:flex;align-items:center;min-height:40px;grid-template-columns:auto 1fr;gap:8px}.duty-filter-check input,.duty-select-cell input,.approver-options input{width:auto}.duty-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.duty-toolbar-actions span{color:var(--muted);font-size:12px}.duty-table-wrap{max-height:calc(100vh - 330px)}.duty-table{min-width:920px}.duty-table th{top:0}.duty-select-cell{width:48px;text-align:center}.duty-table td>small{margin-top:3px}.company-count{display:inline-grid;place-items:center;min-width:26px;height:24px;border-radius:5px;background:#eef2f7;color:#475467;font:600 11px var(--mono)}.approver-chips{display:flex;flex-wrap:wrap;gap:6px}.approver-chips>span,.selected-group-list>span{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid #dcdcdc;border-radius:5px;background:var(--blue-soft);color:#1d2939;font-size:12px}.approver-chips>span.inactive{border-color:#ead4d1;background:var(--red-soft);color:var(--red)}.approver-chips small{display:inline;color:inherit}.unassigned-text{color:var(--red);font-size:12px}.duty-footnote{margin-top:10px!important;color:var(--muted);font-size:12px}.duty-dialog{width:min(680px,94vw)}.duty-form{display:grid;gap:22px}.selected-group-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.duty-form section>small{margin-top:7px}.approver-picker{padding-top:18px;border-top:1px solid var(--line)}.approver-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}.approver-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:48vh;overflow:auto;margin-top:10px;padding:2px}.approver-options label{display:flex;align-items:flex-start;grid-template-columns:auto 1fr;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:7px;background:#fff}.approver-options label:has(input:checked){border-color:#c9c9c9;background:#f7f8fa}.approver-options strong,.approver-options small{display:block}.approver-options small{margin-top:2px}
@media(max-width:900px){.duty-toolbar{grid-template-columns:1fr 1fr}.duty-toolbar-actions{grid-column:1/-1;justify-content:space-between}.duty-table-wrap{max-height:none}}
@media(max-width:620px){.duty-toolbar{grid-template-columns:1fr}.duty-toolbar-actions{grid-column:auto;align-items:stretch;flex-direction:column}.approver-options{grid-template-columns:1fr}.duty-metrics{grid-template-columns:1fr 1fr}}

/* Applicant rule guide: live documentation generated from published rule JSON. */
.rule-guide-page{max-width:1360px!important}.rule-guide-title{align-items:center}.rule-guide-overview{display:grid;grid-template-columns:repeat(3,minmax(130px,.7fr)) minmax(280px,1.4fr);margin-bottom:14px;overflow:hidden}.rule-guide-overview>div{display:grid;gap:1px;padding:14px 17px;border-right:1px solid var(--line)}.rule-guide-overview>div:last-child{border-right:0}.rule-guide-overview strong{font:700 22px var(--mono)}.rule-guide-overview span{color:var(--muted);font-size:12px}.rule-guide-overview .rule-guide-freshness strong{font:650 14px var(--sans);color:var(--green)}
.rule-guide-callout{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:14px;padding:13px 15px;border-color:#c6d9f7;background:#f6f9fe}.rule-guide-callout svg{width:25px;height:25px;fill:none;stroke:var(--blue);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.rule-guide-callout>div{display:grid}.rule-guide-callout small{margin-top:1px;color:#526985}.rule-guide-callout .button{min-width:136px}
.rule-guide-principles{padding:20px;margin-bottom:14px}.rule-guide-principles h2{margin:5px 0 14px}.rule-guide-principle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.rule-guide-principle-grid>div{padding:13px 15px;border-right:1px solid var(--line);background:#fbfcfe}.rule-guide-principle-grid>div:last-child{border-right:0}.rule-guide-principle-grid b{color:#344054}.rule-guide-principle-grid p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
.rule-guide-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px;align-items:start}.rule-guide-toc{position:sticky;top:82px;max-height:calc(100vh - 100px);overflow:auto;padding:12px}.rule-guide-toc-head{display:grid;gap:3px;padding:4px 5px 10px}.rule-guide-toc-head>strong{font-size:15px}.rule-guide-toc-head label{margin-top:8px}.rule-guide-toc-head input{padding:8px 9px;font-size:12px}.rule-guide-toc nav{display:grid;gap:2px}.rule-guide-toc nav a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:6px;color:#475467;font-size:12px}.rule-guide-toc nav a:hover{background:#f5f8fc;color:var(--blue)}.rule-guide-toc nav a.active{background:var(--blue-soft);color:var(--blue);box-shadow:inset 3px 0 var(--blue)}.rule-guide-toc nav a small{flex:none;color:inherit;font:10px var(--mono)}.rule-guide-content{display:grid;gap:14px;min-width:0}.rule-guide-no-results{padding:48px;text-align:center;color:var(--muted)}
.rule-guide-toc nav .rule-guide-toc-level{padding:6px 10px 6px 21px;color:#667085;font-size:11px}.rule-guide-toc nav .rule-guide-toc-level.active{background:#f7f8fa}.rule-guide-reference{padding:9px 14px;border-bottom:1px solid #d6e3f7;background:#f6f9fe;color:#526985;font-size:12px}.rule-guide-reference a{font-weight:700}
.rule-guide-rule{overflow:hidden;scroll-margin-top:82px}.rule-guide-rule>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px;border-bottom:1px solid var(--line)}.rule-guide-rule>header h2{margin:5px 0 3px;font-size:22px}.rule-guide-rule>header p{margin:0;color:var(--muted)}.rule-guide-purpose{display:grid;grid-template-columns:130px 1fr;gap:16px;padding:13px 24px;border-bottom:1px solid var(--line);background:#f8f9fb}.rule-guide-purpose p{margin:0;color:#475467}.rule-guide-level{padding:22px 24px;scroll-margin-top:82px}.rule-guide-level+.rule-guide-level{border-top:1px solid var(--line)}.rule-guide-level-head{display:flex;align-items:center;gap:11px;margin-bottom:12px}.rule-guide-level-head>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #cbdcf6;border-radius:6px;background:var(--blue-soft);color:var(--blue);font:650 11px var(--mono)}.rule-guide-level-head h3{margin:0}.rule-guide-level-head p{margin:1px 0 0;color:var(--muted);font-size:11px}.rule-guide-branches{display:grid;gap:8px}.rule-guide-branch{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.rule-guide-branch>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;cursor:pointer;list-style:none;background:#fbfcfe}.rule-guide-branch>summary::-webkit-details-marker{display:none}.rule-guide-branch>summary span{display:grid}.rule-guide-branch>summary small{margin-top:2px}.rule-guide-branch>summary em{flex:none;color:var(--blue);font-size:11px;font-style:normal}.rule-guide-branch>summary:after{content:"展开";color:var(--blue);font-size:11px}.rule-guide-branch[open]>summary:after{content:"收起"}.rule-guide-branch[open]>summary{border-bottom:1px solid var(--line)}.rule-guide-empty-branch{padding:16px;color:var(--muted)}.rule-guide-segments{display:grid}.rule-guide-segment{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;padding:17px 18px}.rule-guide-segment+.rule-guide-segment{border-top:1px solid var(--line)}.rule-guide-segment-title{display:flex;align-items:flex-start;gap:10px}.rule-guide-segment-title>span{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:5px;background:#eef2f7;color:#475467;font:650 10px var(--mono)}.rule-guide-segment-title h4{margin:0;font-size:14px}.rule-guide-segment-title small{margin-top:2px}.rule-guide-composite,.rule-guide-checks,.rule-guide-semantic{grid-column:2;min-width:0}.rule-guide-composite{padding:11px 12px;border:1px solid #cdddf5;border-radius:7px;background:#f6f9fe}.rule-guide-composite>div{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.rule-guide-composite>div span{padding:3px 7px;border-radius:4px;background:#fff;color:#344054;font-size:11px}.rule-guide-composite small{color:#52606d}.rule-guide-checks b,.rule-guide-semantic b{font-size:12px}.rule-guide-checks ul{margin:5px 0 0;padding-left:18px;color:#475467}.rule-guide-checks li+li{margin-top:3px}.rule-guide-semantic p{margin:4px 0 1px;color:#344054}.rule-guide-semantic small{color:var(--muted)}.rule-guide-examples{grid-column:2;display:grid;grid-template-columns:1fr 1fr;gap:8px}.rule-guide-examples>div{display:grid;gap:3px;padding:9px 10px;border-left:3px solid;border-radius:0 6px 6px 0;background:#fafbfc}.rule-guide-examples .good{border-color:var(--green)}.rule-guide-examples .bad{border-color:var(--red)}.rule-guide-examples span{color:var(--muted);font-size:10px}.rule-guide-examples code{overflow-wrap:anywhere}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:1050px){.rule-guide-overview{grid-template-columns:repeat(3,1fr)}.rule-guide-overview .rule-guide-freshness{grid-column:1/-1;border-top:1px solid var(--line)}.rule-guide-principle-grid{grid-template-columns:1fr 1fr}.rule-guide-principle-grid>div:nth-child(2){border-right:0}.rule-guide-principle-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:820px){.rule-guide-layout{grid-template-columns:1fr}.rule-guide-toc{position:sticky;z-index:4;top:64px;max-height:none;overflow:hidden}.rule-guide-toc-head{grid-template-columns:auto 1fr;align-items:center}.rule-guide-toc-head .section-kicker{display:none}.rule-guide-toc-head label{margin:0}.rule-guide-toc nav{display:flex;overflow:auto;padding-top:6px}.rule-guide-toc nav a{flex:none}.rule-guide-segment{grid-template-columns:1fr}.rule-guide-composite,.rule-guide-checks,.rule-guide-semantic,.rule-guide-examples{grid-column:1}}
@media(max-width:620px){.rule-guide-title{align-items:flex-start}.rule-guide-title .page-actions{width:100%}.rule-guide-title .page-actions>*{flex:1}.rule-guide-callout{grid-template-columns:auto 1fr}.rule-guide-callout .button{grid-column:1/-1;width:100%}.rule-guide-overview{grid-template-columns:1fr 1fr}.rule-guide-overview>div:nth-child(2){border-right:0}.rule-guide-overview .rule-guide-freshness{grid-column:1/-1}.rule-guide-principle-grid,.rule-guide-examples{grid-template-columns:1fr}.rule-guide-principle-grid>div{border-right:0;border-bottom:1px solid var(--line)}.rule-guide-rule>header,.rule-guide-purpose{grid-template-columns:1fr;padding-left:16px;padding-right:16px}.rule-guide-level{padding:18px 16px}.rule-guide-branch>summary{align-items:flex-start}.rule-guide-branch>summary em{display:none}}

/* Rule builder: structure on the left, one editable object on the right */
.rule-page-title{align-items:center}.rule-title-actions{display:flex;gap:8px}.rule-builder-form{display:grid;gap:14px}.rule-basics{overflow:hidden}.rule-basics>summary{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;cursor:pointer;list-style:none}.rule-basics>summary::-webkit-details-marker{display:none}.rule-basics>summary:after{content:"展开";color:var(--blue);font-size:12px}.rule-basics[open]>summary:after{content:"收起"}.rule-basics>summary span{display:grid}.rule-basics>summary small{margin-top:2px}.rule-basics-body{display:grid;gap:15px;padding:0 18px 18px;border-top:1px solid var(--line)}.rule-basics-body>.form-row:first-child{margin-top:18px}
.rule-builder-workspace{display:grid;grid-template-columns:300px minmax(0,1fr);gap:14px;align-items:start}.rule-outline-panel{position:sticky;top:80px;max-height:calc(100vh - 98px);overflow:auto;padding:12px}.rule-outline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:4px 4px 12px}.rule-outline-head>div{display:grid}.rule-outline-head small{margin-top:2px}.rule-help-button{min-height:28px;padding:3px 8px;border:0;background:transparent;color:var(--blue);font-size:12px}.rule-reading-help{padding:10px 11px;margin-bottom:10px;border-radius:7px;background:var(--blue-soft);color:#52606d;font-size:12px}.rule-reading-help p{margin:0 0 5px}.rule-reading-help p:last-child{margin-bottom:0}
.rule-outline{display:grid;gap:9px}.rule-outline-level{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.rule-outline button{width:100%;min-height:0;justify-content:space-between;border:0;border-radius:0;text-align:left}.rule-outline button:hover{background:#f5f8fc;border:0}.rule-outline button.active{background:var(--blue-soft);color:var(--blue);box-shadow:inset 3px 0 var(--blue)}.rule-outline button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-outline button>small{flex:0 0 auto;font-size:10px}.rule-outline-level-button{padding:10px 11px;background:#f8f9fb;font-weight:700}.rule-outline-group{display:grid;padding:7px 0;border-top:1px solid var(--line)}.rule-outline-group>span{padding:2px 11px 5px;color:#98a2b3;font:10px var(--mono);letter-spacing:.06em}.rule-outline-group>em{padding:6px 12px;color:#98a2b3;font-size:11px;font-style:normal}.rule-outline-segment{padding:6px 11px 6px 20px;color:#475467;font-weight:500}.rule-outline-variant{padding:7px 11px 7px 17px;color:#344054;background:#fbfcfe}.rule-outline-branch+.rule-outline-branch{border-top:1px dashed var(--line)}.rule-outline-children{display:grid}.rule-outline-children .rule-outline-segment{padding-left:30px}.rule-outline-empty{display:block;padding:5px 12px 8px 30px;color:#98a2b3;font-size:11px}.rule-outline-add{width:100%;margin-top:10px;border-style:dashed;background:#fafcff;color:var(--blue)}
.rule-edit-panel{min-height:520px;padding:24px}.rule-breadcrumb{display:flex;align-items:center;gap:7px;margin-bottom:18px;color:#98a2b3;font-size:12px}.rule-breadcrumb span:after{content:"/";margin-left:7px;color:#d0d5dd}.rule-breadcrumb b{color:#475467}.rule-object-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}.rule-object-head h2{margin:4px 0 3px;font-size:21px}.rule-object-head p{margin:0;color:var(--muted)}.rule-object-type{color:var(--blue);font:600 10px var(--mono);letter-spacing:.1em}.rule-object-actions{display:flex;gap:5px;flex:0 0 auto}.rule-object-actions button{min-height:32px;padding:5px 9px}
.rule-section-block{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.rule-section-block.compact{display:grid;gap:13px;padding:16px;margin-top:16px;border:1px solid var(--line);border-radius:8px;background:#fbfcfe}.rule-section-block.compact>.form-row{margin-top:0}.rule-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:11px}.rule-section-heading>div{display:grid}.rule-section-heading button{min-height:32px;padding:5px 10px}.rule-object-list{display:grid;gap:7px}.rule-object-list>button{justify-content:space-between;padding:10px 12px;text-align:left}.rule-object-list>button>span{display:flex;gap:10px;align-items:center}.rule-object-list>button b{min-width:68px;color:var(--blue);font-size:12px}.rule-list-empty{padding:18px;border:1px dashed var(--line-strong);border-radius:7px;color:var(--muted);text-align:center}.rule-info-note{padding:12px 14px;margin-top:18px;border:1px solid #dcdcdc;border-radius:7px;background:var(--blue-soft);color:#52606d}.rule-required-switch{display:flex;align-items:center;align-self:end;min-height:65px;grid-template-columns:auto 1fr;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fbfcfe}.rule-required-switch input{width:auto}.rule-required-switch span{display:grid}.rule-required-switch small{margin-top:1px}
.rule-block-intro{margin:0;color:var(--muted);line-height:1.65}.rule-calculation-block .rule-info-note{margin-top:0}.calculated-segment{display:grid;gap:5px;padding:12px 14px;border:1px solid #d4d4d4;border-left:3px solid var(--blue);border-radius:7px;background:#f6f7f8}.calculated-segment>span{font-weight:700}.calculated-segment>span small,.calculated-segment>small{color:var(--muted);font-weight:400}.calculated-segment>strong{color:var(--blue);font-size:16px}.calculated-segment.has-error{border-color:#f1b7b2;border-left-color:var(--danger);background:#fff7f6}.calculated-segment.has-error>strong{color:var(--muted)}.calculated-segment>em{color:var(--danger);font-style:normal}
.rule-advanced{margin-top:16px;border:1px solid var(--line);border-radius:8px;background:#fff}.rule-advanced>summary{padding:12px 14px;cursor:pointer;font-weight:650}.rule-advanced>summary small{display:inline;margin-left:6px}.rule-advanced>div{display:grid;gap:14px;padding:15px;border-top:1px solid var(--line);background:#fbfcfe}.rule-segment-preview{display:flex;align-items:center;gap:12px;padding:11px 13px;margin-top:16px;border-radius:7px;background:var(--blue-soft)}.rule-segment-preview span{color:var(--muted);font-size:12px}.rule-segment-preview code{color:var(--blue);word-break:break-all}.rule-live-preview{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 17px}.rule-live-preview>div{display:grid}.rule-live-preview code{max-width:65%;color:var(--blue);font-size:13px;word-break:break-all}.rule-save-bar{position:sticky;z-index:5;bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 15px;box-shadow:0 12px 32px rgba(31,35,41,.14)}.rule-save-bar>span{color:var(--muted);font-size:12px}.rule-save-bar>div{display:flex;gap:8px}
@media(max-width:1050px){.rule-builder-workspace{grid-template-columns:250px minmax(0,1fr)}}
@media(max-width:820px){.rule-title-actions{width:100%}.rule-builder-workspace{grid-template-columns:1fr}.rule-outline-panel{position:static;max-height:none}.rule-edit-panel{min-height:0;padding:18px}.rule-object-head,.rule-section-heading,.rule-live-preview,.rule-save-bar{align-items:flex-start;flex-direction:column}.rule-object-actions{flex-wrap:wrap}.rule-live-preview code{max-width:100%}.rule-save-bar{position:static}.rule-save-bar>div{width:100%}.rule-save-bar button{flex:1}}

/* Rule builder v2: a guided workflow instead of an always-expanded configuration tree. */
.rule-stepper{display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;padding:0}.rule-stepper button{position:relative;display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-height:74px;padding:13px 16px;border:0;border-right:1px solid var(--line);border-radius:0;background:#fff;text-align:left}.rule-stepper button:last-child{border-right:0}.rule-stepper button:hover{border-color:var(--line);background:#f8fafc}.rule-stepper button>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border:1px solid #d0d5dd;border-radius:7px;color:#667085;font:650 11px var(--mono)}.rule-stepper button>b{align-self:end;color:#344054;font-size:13px}.rule-stepper button>small{align-self:start;margin-top:1px;font-size:10px}.rule-stepper button.active{background:var(--blue-soft);box-shadow:inset 0 -3px var(--blue)}.rule-stepper button.active>span{border-color:#a9c8fa;background:#fff;color:var(--blue)}.rule-stepper button.active>b{color:var(--blue)}
.rule-step-panel{display:grid;gap:12px}.rule-step-panel[hidden],.rule-builder-workspace[hidden]{display:none!important}.rule-step-intro{display:flex;align-items:center;gap:14px;padding:4px 2px}.rule-step-intro>span{flex:none;padding:4px 8px;border-radius:5px;background:var(--blue-soft);color:var(--blue);font:650 10px var(--mono)}.rule-step-intro>div{display:grid;gap:2px;min-width:0}.rule-step-intro h2{margin:0;font-size:19px}.rule-step-intro p{margin:0;color:var(--muted);font-size:12px}.rule-step-intro>button{margin-left:auto}.rule-basics-body{padding:18px;border-top:0}.rule-basics-body>.form-row:first-child{margin-top:0}
.rule-outline-level-detail{display:grid}.rule-outline-variant{grid-template-columns:minmax(0,1fr) auto;padding:8px 11px 8px 17px}.rule-outline-variant>span{font-weight:600}.rule-outline-variant>small{max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-task-banner{display:flex;align-items:center;gap:10px;padding:10px 12px;margin:-8px 0 18px;border:1px solid #dcdcdc;border-radius:7px;background:#f7f8fa;color:#52606d}.rule-task-banner span{flex:none;padding:3px 6px;border-radius:4px;background:#fff;color:var(--blue);font:650 9px var(--mono)}.rule-task-banner b{font-size:12px}.rule-numbered-section{position:relative}.rule-numbered-section:before{content:attr(data-section-number);position:absolute;top:16px;left:-15px;display:grid;place-items:center;width:25px;height:25px;border:1px solid #dcdcdc;border-radius:6px;background:#fff;color:var(--blue);font:650 10px var(--mono)}.rule-numbered-section:not(.compact){padding-left:24px}.rule-numbered-section.compact{padding-left:24px}.rule-numbered-section.compact:before{left:-13px}
.rule-review-card{overflow:hidden}.rule-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--line)}.rule-review-head>div{display:grid;gap:3px}.rule-review-head span{color:var(--muted);font-size:11px}.rule-review-head h2{margin:0;font-size:21px}.rule-review-head p{margin:0;color:var(--muted)}.rule-review-head button,.rule-review-levels button{min-height:30px;padding:4px 9px;color:var(--blue);background:#fff}.rule-review-stats{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);background:#fbfcfe}.rule-review-stats>div{display:flex;align-items:baseline;gap:7px;padding:14px 22px;border-right:1px solid var(--line)}.rule-review-stats>div:last-child{border-right:0}.rule-review-stats b{font:700 24px var(--mono);color:#1d2939}.rule-review-stats span{color:var(--muted);font-size:11px}.rule-review-levels{display:grid}.rule-review-levels>section{padding:17px 22px;border-bottom:1px solid var(--line)}.rule-review-levels header{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.rule-review-levels header>b{font-size:14px}.rule-review-levels section>div{display:grid;grid-template-columns:minmax(130px,30%) 1fr;gap:14px;padding:6px 0}.rule-review-levels section>div span{color:#667085;font-size:11px}.rule-review-levels section>div strong{font-size:12px}.rule-review-preview{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:15px 22px;background:var(--blue-soft)}.rule-review-preview span{color:#52606d;font-size:11px}.rule-review-preview code{color:var(--blue);overflow-wrap:anywhere}.rule-review-note{margin:0;padding:12px 22px;color:var(--muted);font-size:11px}
.rule-save-bar button[hidden]{display:none!important}
@media(max-width:900px){.rule-stepper{grid-template-columns:1fr 1fr}.rule-stepper button:nth-child(2){border-right:0}.rule-stepper button:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:620px){.rule-stepper{grid-template-columns:1fr}.rule-stepper button{min-height:62px;border-right:0;border-bottom:1px solid var(--line)}.rule-stepper button:last-child{border-bottom:0}.rule-step-intro{align-items:flex-start;flex-wrap:wrap}.rule-step-intro>button{width:100%;margin-left:0}.rule-review-head{flex-direction:column}.rule-review-stats{grid-template-columns:1fr}.rule-review-stats>div{border-right:0;border-bottom:1px solid var(--line)}.rule-review-stats>div:last-child{border-bottom:0}.rule-review-levels section>div,.rule-review-preview{grid-template-columns:1fr;gap:3px}}

/* Rule builder v3: business logic first, with less card nesting and clearer cause/effect. */
.rule-stepper{display:flex;align-items:stretch;gap:0;padding:8px 10px;background:#fff}.rule-stepper button{display:grid;grid-template-columns:28px auto;grid-template-rows:auto;column-gap:8px;flex:1;min-height:48px;padding:8px 12px;border:0;border-right:0;background:transparent}.rule-stepper button:after{content:"";position:absolute;top:50%;right:-1px;width:1px;height:24px;background:var(--line);transform:translateY(-50%)}.rule-stepper button:last-child:after{display:none}.rule-stepper button>span{grid-row:auto;width:26px;height:26px;border-radius:5px}.rule-stepper button>b{align-self:center;font-size:12px}.rule-stepper button>small{display:none}.rule-stepper button.active{border-radius:6px;background:var(--blue-soft);box-shadow:none}.rule-stepper button.active:after{display:none}
.rule-basics-body{gap:0;padding:0 22px}.rule-identity-row{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.rule-identity-row>span{color:var(--muted);font-size:12px}.rule-identity-row>div{display:grid;gap:3px}.rule-identity-row strong{font-size:18px}.rule-identity-row em{padding:4px 8px;border-radius:5px;background:#eef2f6;color:#667085;font-size:10px;font-style:normal}.rule-primary-field{padding:20px 0}.rule-basics-section{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;padding:22px 0;border-top:1px solid var(--line)}.rule-identity-row+.rule-basics-section{border-top:0}.rule-basics-heading{display:grid;align-content:start;gap:4px}.rule-basics-heading b{font-size:14px}.rule-basics-heading small{line-height:1.6}.rule-basics-section>.automation-switch,.rule-basics-section>label{grid-column:2}.rule-basics-section>.automation-switch+label{margin-top:12px}
.rule-edit-panel{padding:26px 30px}.rule-task-banner{margin:-2px 0 22px;padding:9px 11px;background:#f7f8fa}.rule-object-head{margin-bottom:0}.rule-editor-section{padding:26px 0;border-bottom:1px solid var(--line)}.rule-editor-section:last-child{border-bottom:0}.rule-editor-section>header{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:12px;margin-bottom:18px}.rule-editor-section>header>span,.rule-condition-side>header>span{display:grid;place-items:center;width:26px;height:26px;border:1px solid #c9daf6;border-radius:5px;color:var(--blue);font:650 10px var(--mono)}.rule-editor-section>header>div,.rule-condition-side>header>div{display:grid;gap:3px}.rule-editor-section h3,.rule-condition-side h3,.rule-form-section h3{margin:0;font-size:15px}.rule-editor-section header p,.rule-condition-side header p,.rule-form-section header p{margin:0;color:var(--muted);font-size:11px}.rule-editor-section>header>button{min-height:32px;padding:5px 10px}.rule-editor-section>.rule-primary-field{display:block;max-width:660px;margin-left:42px;padding:0}
.rule-logic-list{display:grid;margin-left:42px;border:1px solid var(--line);border-radius:7px;overflow:hidden}.rule-logic-list>button{display:grid;grid-template-columns:28px minmax(0,1fr) auto 36px;align-items:center;gap:10px;min-height:58px;padding:9px 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;text-align:left}.rule-logic-list>button:last-child{border-bottom:0}.rule-logic-list>button:hover{background:#f8f9fb}.rule-logic-index{display:grid;place-items:center;width:24px;height:24px;border-radius:4px;background:#eef2f6;color:#475467;font:650 10px var(--mono)}.rule-logic-main{display:grid;gap:3px;min-width:0}.rule-logic-main>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-logic-main>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-logic-list em{padding:3px 7px;border-radius:4px;background:#f2f4f7;color:#667085;font-size:10px;font-style:normal}.rule-logic-list i{color:var(--blue);font-size:11px;font-style:normal}
.rule-condition-list{display:grid;gap:8px;margin-left:42px}.rule-condition-list>button{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1.5fr) 36px;align-items:center;gap:12px;min-height:68px;padding:10px 14px;border:1px solid var(--line);border-radius:7px;background:#fff;text-align:left}.rule-condition-list>button:hover{border-color:#aac8f6;background:#fafdff}.rule-condition-list>button>span{display:grid;gap:3px;min-width:0}.rule-condition-list>button small{color:var(--muted);font-size:10px}.rule-condition-list>button b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-condition-list>button>strong{color:#98a2b3;text-align:center}.rule-condition-list>button>i{color:var(--blue);font-size:11px;font-style:normal}.rule-plain-note{padding:13px 15px;margin:18px 0 0 42px;border-left:3px solid #c9daf6;background:#f8f9fb;color:#526985;font-size:12px}
.rule-condition-flow{display:grid;grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr);align-items:start;padding-top:26px}.rule-condition-side{display:grid;gap:16px;min-width:0}.rule-condition-side>header{display:grid;grid-template-columns:30px 1fr;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line)}.rule-condition-side label{margin:0}.rule-condition-arrow{display:grid;justify-items:center;align-content:center;gap:4px;min-height:210px;color:#98a2b3}.rule-condition-arrow span{font-size:9px;writing-mode:vertical-rl}.rule-condition-arrow b{color:var(--blue);font-size:22px}.rule-condition-side .rule-logic-list{margin-left:0}.rule-condition-side .rule-plain-note{margin-left:0}.rule-section-inline-head{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.rule-section-inline-head button{min-height:30px;padding:4px 8px}
.rule-source-row{display:flex;align-items:center;gap:10px;padding:14px 0}.rule-source-row>span{color:var(--muted);font-size:11px}.rule-source-row select{width:auto;min-width:180px}.rule-segment-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line)}.rule-segment-tabs button{min-height:42px;padding:8px 2px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#667085}.rule-segment-tabs button:hover{border-color:#b7cef1;background:transparent;color:#344054}.rule-segment-tabs button.active{border-color:var(--blue);color:var(--blue);font-weight:700}.rule-segment-tab-content{min-height:360px}.rule-tab-explainer{display:flex;align-items:baseline;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.rule-tab-explainer b{font-size:12px}.rule-tab-explainer span{color:var(--muted);font-size:11px}.rule-form-section{padding:24px 0;border-bottom:1px solid var(--line)}.rule-form-section:last-child{border-bottom:0}.rule-form-section>header{display:grid;gap:3px;margin-bottom:16px}.rule-form-section>.rule-required-switch{margin-top:12px}.rule-result-line{display:grid;grid-template-columns:130px minmax(0,1fr);gap:14px;padding:12px 14px;margin-top:16px;border-radius:6px;background:var(--blue-soft)}.rule-result-line span{color:#526985;font-size:11px}.rule-result-line b{color:#1f5cae;font-size:12px;overflow-wrap:anywhere}
.rule-segment-tab-content.calculated{min-height:0}.rule-calculation-editor{display:grid;gap:0;padding-top:22px}.rule-calculation-editor>.rule-calculation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;margin:0;border-bottom:1px solid var(--line)}.rule-calculation-header>div{display:grid;gap:4px}.rule-system-badge{flex:none;padding:5px 8px;border:1px solid var(--line-strong);border-radius:5px;color:#475467;font-size:10px;font-weight:650}.rule-calculation-stage{display:grid;gap:16px;padding:22px 0;border-bottom:1px solid var(--line)}.rule-calculation-stage-head{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px}.rule-calculation-stage-head>span{display:grid;place-items:center;width:26px;height:26px;border:1px solid #d0d5dd;border-radius:5px;color:#667085;font:650 10px var(--mono)}.rule-calculation-stage-head>div{display:grid;gap:3px}.rule-calculation-stage-head b{font-size:13px}.rule-calculation-stage-head small{font-size:11px;line-height:1.55}.rule-calculation-years{max-width:calc(50% - 9px)}.rule-date-order-check{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr);align-items:end;gap:24px;padding:18px 20px;margin:20px 0 0;border:1px solid #ead7d4;border-radius:7px;background:#fffafa}.rule-date-order-check>div{display:grid;align-content:center;gap:4px}.rule-date-order-check b{font-size:13px}.rule-date-order-check small{color:#7a514c;font-size:11px;line-height:1.55}.rule-date-order-check label{margin:0}.rule-calculation-preview{display:grid;grid-template-columns:140px repeat(3,minmax(0,1fr));gap:12px;align-items:center;padding:14px 16px;margin-top:22px;border:1px solid var(--line);border-radius:7px;background:#f8f9fb}.rule-calculation-preview span{color:#667085;font-size:11px}.rule-calculation-preview b{font-size:11px;font-weight:650;line-height:1.55}.rule-calculation-preview b:first-of-type{color:var(--danger)}
@media(max-width:900px){.rule-stepper{overflow-x:auto}.rule-stepper button{flex:0 0 150px}.rule-basics-section{grid-template-columns:1fr;gap:12px}.rule-basics-section>.automation-switch,.rule-basics-section>label{grid-column:1}.rule-condition-flow{grid-template-columns:1fr}.rule-condition-arrow{grid-template-columns:auto auto;justify-content:start;align-items:center;min-height:64px;padding-left:12px}.rule-condition-arrow span{writing-mode:horizontal-tb}.rule-condition-arrow b{transform:rotate(90deg)}}
@media(max-width:620px){.rule-identity-row{grid-template-columns:1fr;gap:6px}.rule-edit-panel{padding:18px}.rule-editor-section>header{grid-template-columns:28px 1fr}.rule-editor-section>header>button{grid-column:1/-1;width:100%}.rule-editor-section>.rule-primary-field,.rule-logic-list,.rule-condition-list,.rule-plain-note{margin-left:0}.rule-condition-list>button{grid-template-columns:1fr}.rule-condition-list>button>strong{transform:rotate(90deg)}.rule-logic-list>button{grid-template-columns:26px minmax(0,1fr) auto}.rule-logic-list i{display:none}.rule-segment-tabs{gap:16px;overflow-x:auto}.rule-result-line{grid-template-columns:1fr}.rule-calculation-editor>.rule-calculation-header{display:grid}.rule-system-badge{justify-self:start}.rule-date-order-check{grid-template-columns:1fr;padding:16px}.rule-calculation-years{max-width:none}.rule-calculation-preview{grid-template-columns:1fr}.rule-calculation-preview span{padding-bottom:6px;border-bottom:1px solid var(--line)}}

/* Unified application shell: stable navigation, compact hierarchy and fast list updates. */
html{scrollbar-gutter:stable}
.app-shell .topbar{background:#fff;backdrop-filter:none}

.app-navigation-progress{position:fixed;z-index:1001;top:0;left:0;right:0;height:2px;overflow:hidden;pointer-events:none}
.app-navigation-progress span{display:block;width:42%;height:100%;background:var(--blue);opacity:0;transform:translateX(-110%)}
.app-navigation-progress.active span{opacity:1;animation:app-progress .8s ease-in-out infinite}
@keyframes app-progress{0%{transform:translateX(-110%)}70%,100%{transform:translateX(260%)}}
.content.is-loading{pointer-events:none;cursor:progress}
.app-operation-status{position:fixed;z-index:1100;right:22px;bottom:22px;display:flex;align-items:center;gap:10px;min-width:148px;padding:12px 15px;border:1px solid #d7dce3;border-radius:9px;background:#fff;color:#1f2329;box-shadow:0 10px 30px rgba(31,35,41,.14);font-size:13px}
.app-operation-status[hidden]{display:none}
.app-operation-status span{width:15px;height:15px;border:2px solid #d6dae1;border-top-color:#1769e0;border-radius:50%;animation:loading-spin .75s linear infinite}
.app-operation-status strong{font-weight:600}
form.is-submitting{pointer-events:none}
form.is-submitting :is(button[type="submit"],input[type="submit"]){cursor:wait;opacity:.68}
@media(max-width:620px){.app-operation-status{left:16px;right:16px;bottom:16px;justify-content:center}}
.button.is-refreshing{color:var(--muted);background:var(--surface-soft);pointer-events:none}

.app-shell .sidebar{width:232px;padding:18px 13px 32px}
.app-shell .content{margin-left:232px;padding:calc(var(--topbar) + 26px) clamp(22px,2.8vw,44px) 64px}
.app-shell .content>*{max-width:1380px}
.app-shell .page-title{align-items:center;min-height:50px;margin-bottom:16px}
.app-shell .page-title h1{margin:0 0 3px;font-size:25px}
.app-shell .page-title p{max-width:780px;font-size:13px;line-height:1.55}
.app-shell .page-title .eyebrow{display:none}
.compact-page-title{min-height:auto!important;margin-bottom:12px!important}
.result-count{flex:0 0 auto;color:var(--muted);font:12px var(--mono)}
.app-shell .surface,.app-shell .card{box-shadow:none}
.app-shell .message{margin-bottom:12px}
.app-shell .empty{padding:38px 20px}
.app-shell .page-actions{flex-wrap:wrap;justify-content:flex-end}

.app-shell .sidebar a{padding:8px 11px;margin:1px 0}
.app-shell .nav-label{padding:15px 10px 5px;letter-spacing:.08em}
.app-shell .nav-label:first-child{padding-top:0}

.queue-tabs{display:flex;align-items:center;gap:2px;overflow-x:auto;margin-bottom:12px;padding:5px;flex-wrap:nowrap}
.queue-tabs a{flex:0 0 auto;padding:7px 11px;border-radius:5px}
.queue-tabs a:hover{background:#f3f6fb;color:var(--blue)}
.queue-tabs a.active{background:var(--blue);color:#fff}
.compact-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 12px;border-radius:8px}
.compact-metrics>div{display:flex;align-items:baseline;gap:9px;padding:10px 14px}
.compact-metrics strong{font-size:18px}
.compact-metrics span{white-space:nowrap}
.review-queue-page{display:grid;gap:12px;width:100%}
.review-queue-page>*{width:100%;max-width:none;margin:0!important}
.review-queue-header{align-items:center!important}
.review-queue-header .page-actions{display:flex;align-items:center;min-height:38px}
.review-queue-metrics>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:9px;min-width:0;padding:11px 14px}
.review-queue-metrics strong{min-width:2ch;font-size:18px;line-height:1.2}
.review-queue-metrics span{overflow:hidden;text-overflow:ellipsis;line-height:1.35;white-space:nowrap}
.review-queue-table{min-height:150px}
.queue-explanation{display:flex;align-items:center;min-height:42px}

.live-filter-bar{margin-bottom:12px!important;padding:11px 13px!important;border-radius:8px!important}
.filter-hint{display:flex;align-items:center;align-self:end;min-height:38px;padding:0 4px;color:#98a2b3;font-size:12px;white-space:nowrap}
.filter-hint:before{content:"";width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--green)}
.library-filter{grid-template-columns:minmax(240px,1fr) 220px 150px auto}
.filter-bar{grid-template-columns:1fr 220px auto}

.app-shell th,.app-shell td{padding:11px 14px}
.app-shell th{background:#f7f8fa}
.app-shell tbody tr{transition:background-color .12s ease}
.app-shell .review-bar{bottom:8px;padding:11px 13px;box-shadow:0 8px 24px rgba(29,35,41,.1)}
.app-shell button:focus-visible,.app-shell a:focus-visible,.app-shell input:focus-visible,.app-shell select:focus-visible,.app-shell textarea:focus-visible{outline:2px solid var(--blue);outline-offset:2px}

@media(max-width:1000px){
  .compact-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .compact-metrics>div{justify-content:space-between}
  .review-queue-metrics>div{grid-template-columns:auto 1fr;justify-content:normal}
}
@media(max-width:780px){
  .topbar{padding:0 14px}.topbar-leading{gap:9px}.app-back-button{width:36px;min-width:36px;padding:0;justify-content:center}.app-back-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.brand{gap:8px}.brand>span:last-child{max-width:122px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .app-shell .sidebar{width:100%;padding:7px 10px}
  .app-shell .content{margin-left:0;padding:calc(var(--topbar) + 58px) 12px 48px}
  .app-shell .page-title{align-items:flex-start;min-height:0;margin-bottom:14px}
  .app-shell .page-title h1{font-size:22px}
  .app-shell .page-actions{justify-content:flex-start}
  .queue-tabs{margin-left:-2px;margin-right:-2px}
  .live-filter-bar{grid-template-columns:1fr!important}
  .filter-hint{display:none}
  .compact-metrics{grid-template-columns:1fr 1fr}
  .compact-metrics>div{display:grid;gap:2px}
}
@media(prefers-reduced-motion:reduce){
  .app-navigation-progress.active span{animation:none;transform:none;width:100%}
}

/* Manager operations analytics: dense, source-backed and chart-led. */
.analytics-title{align-items:flex-end!important}.analytics-freshness{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:4px 12px;color:var(--muted);font-size:12px}.analytics-freshness strong{color:#344054;font:12px var(--mono)}.analytics-freshness .button{grid-row:1/3;grid-column:3;min-height:34px}
.analytics-filter{display:grid;grid-template-columns:150px 150px minmax(210px,1fr) minmax(190px,.8fr) auto;gap:10px;align-items:end;padding:13px;margin-bottom:14px}.analytics-filter label{gap:4px;font-size:12px}.analytics-filter input,.analytics-filter select{min-height:38px;padding:7px 9px}.analytics-filter-actions{display:flex;gap:7px}.analytics-filter-actions>*{min-height:38px;white-space:nowrap}
.analytics-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:hidden;margin-bottom:14px;border:1px solid var(--line);border-radius:6px;background:#fff}.analytics-kpi{display:grid;gap:2px;min-width:0;padding:16px 17px;border-right:1px solid var(--line);color:inherit;text-decoration:none;transition:background-color .12s ease}.analytics-kpi:last-child{border-right:0}.analytics-kpi:hover,.analytics-kpi:focus-visible{background:#f6f7f8}.analytics-kpi span{color:#667085;font-size:12px;font-weight:650}.analytics-kpi strong{font:700 27px/1.2 var(--mono);letter-spacing:-.04em}.analytics-kpi small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-kpi b{margin-top:4px;color:#52606d;font-size:10px;font-weight:650}.analytics-kpi.primary-kpi{background:#fff;box-shadow:none}.analytics-kpi.primary-kpi:hover,.analytics-kpi.primary-kpi:focus-visible{background:#f6f7f8;box-shadow:none}.analytics-kpi.primary-kpi strong{color:var(--text)}
.analytics-main-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:14px;margin-bottom:14px}.analytics-rank-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.analytics-panel{min-width:0;overflow:hidden}.analytics-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:17px 19px 13px;border-bottom:1px solid var(--line)}.analytics-panel>header h2{margin:2px 0 0;font-size:17px}.analytics-panel>header small{margin-top:4px;text-align:right}.analytics-chart{min-height:280px;padding:10px 14px 0}.analytics-grid-line{stroke:#e7e9ed;stroke-width:1}.analytics-axis-label{fill:#7b8494;font:10px var(--mono)}.analytics-area{fill:#f3f4f6}.analytics-line{fill:none;stroke:var(--blue);stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round}.analytics-point{fill:#fff;stroke:var(--blue);stroke-width:2}
.analytics-outcomes{display:grid;gap:5px;padding:12px}.analytics-outcome-row{display:grid;grid-template-columns:1fr 55px;gap:5px 10px;padding:7px;border-radius:6px;color:inherit;text-decoration:none;transition:background-color .12s ease}.analytics-outcome-row:hover,.analytics-outcome-row:focus-visible{background:#f7f8fa}.analytics-outcome-row>div:first-child{grid-column:1/-1;display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:8px}.analytics-outcome-row strong{font:650 13px var(--mono)}.analytics-outcome-row small{text-align:right;font:10px var(--mono);color:var(--blue)}.analytics-dot{width:8px;height:8px;border-radius:50%;background:#98a2b3}.analytics-dot.blue,.analytics-bar-track span.blue{background:var(--blue)}.analytics-dot.green,.analytics-bar-track span.green{background:var(--green)}.analytics-dot.red,.analytics-bar-track span.red{background:var(--red)}.analytics-dot.dark-red,.analytics-bar-track span.dark-red{background:#9f2922}.analytics-dot.amber,.analytics-bar-track span.amber{background:#d48300}.analytics-dot.gray,.analytics-bar-track span.gray{background:#98a2b3}.analytics-bar-track{height:6px;overflow:hidden;border-radius:4px;background:#eef0f3}.analytics-bar-track span{display:block;height:100%;min-width:0;border-radius:inherit;background:var(--blue)}
.analytics-ranking{padding:4px 18px 9px}.analytics-rank-row{display:grid;grid-template-columns:24px minmax(0,1fr) 44px;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #eff1f4}.analytics-rank-row:last-child{border-bottom:0}.rank-number{display:grid;place-items:center;width:22px;height:22px;border-radius:4px;background:#f1f3f6;color:#667085;font:11px var(--mono)}.analytics-rank-row:nth-child(-n+3) .rank-number{background:var(--blue-soft);color:var(--blue);font-weight:700}.rank-main{display:grid;gap:5px;min-width:0}.rank-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.rank-main small{font-size:10px}.rank-main .analytics-bar-track{height:4px}.analytics-rank-row>b{text-align:right;font:650 14px var(--mono)}
.analytics-pending-overview{margin-bottom:14px;overflow:hidden}.analytics-pending-overview>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid var(--line)}.analytics-pending-overview>header h2{margin:2px 0 3px;font-size:17px}.analytics-pending-overview>header small{display:block}.analytics-stage-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-stage-strip>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;min-width:0;padding:15px 18px;border-right:1px solid var(--line);color:inherit;text-decoration:none;transition:background-color .12s ease}.analytics-stage-strip>a:last-child{border-right:0}.analytics-stage-strip>a:hover{background:#f7f8fa}.analytics-stage-strip span{color:#475467;font-size:12px;font-weight:650}.analytics-stage-strip strong{grid-row:1/3;grid-column:2;font:700 25px/1 var(--mono);color:var(--blue)}.analytics-stage-strip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-stage-strip .has-error strong{color:var(--red)}
.analytics-manager-panel{grid-column:1/-1}.analytics-manager-ranking{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.analytics-manager-ranking .analytics-rank-row{grid-template-columns:24px minmax(150px,1fr) minmax(260px,.9fr)}.manager-decision-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.manager-decision-counts span{display:grid;gap:1px;padding:7px 8px;border-radius:6px;background:#f7f8fa;color:#667085;font-size:10px}.manager-decision-counts b{color:#1d2939;font:650 13px var(--mono)}
.pending-flow-title{align-items:flex-end!important}.pending-flow-filter{grid-template-columns:135px 135px minmax(190px,1fr) minmax(170px,.8fr) minmax(170px,.75fr) auto}.pending-flow-panel{overflow:hidden}.pending-flow-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line)}.pending-flow-panel>header h2{margin:2px 0 0;font-size:18px}.pending-flow-table-wrap{max-height:65vh;overflow:auto}.pending-flow-table{min-width:960px}.pending-flow-table thead{position:sticky;top:0;z-index:2}.pending-flow-table th{background:#f8fafc;box-shadow:0 1px var(--line)}.pending-flow-table td{vertical-align:top}.pending-flow-table td:first-child{width:28%}.pending-flow-table td:nth-child(2){width:18%}.pending-flow-table td:nth-child(4){width:20%}.pending-flow-table td strong,.pending-flow-table td span,.pending-flow-table td b,.pending-flow-table td small{display:block}.pending-flow-table td small{margin-top:4px}.pending-flow-table .status{display:inline-flex}.pending-flow-panel .pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border-top:1px solid var(--line);background:#fbfcfe}
.analytics-definition{overflow:hidden}.analytics-definition>summary{padding:13px 17px;cursor:pointer;color:#475467;font-weight:650}.analytics-definition>div{display:grid;grid-template-columns:1fr 1fr;gap:9px 28px;padding:15px 17px;border-top:1px solid var(--line);background:#fbfcfe}.analytics-definition p{margin:0;color:#667085;font-size:12px}.analytics-definition strong{color:#344054}.analytics-empty{display:grid;place-items:center;min-height:160px;color:#98a2b3}
.analytics-detail-title{align-items:flex-end!important}.analytics-data-note{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;padding:12px 14px;border:1px solid #f0d39d;border-radius:8px;background:#fffaf0;color:#7a4a00;font-size:12px}.analytics-data-note strong{white-space:nowrap}.analytics-detail-filter{grid-template-columns:150px 150px minmax(210px,1fr) minmax(190px,.8fr) auto}.analytics-detail-panel{overflow:hidden}.analytics-detail-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line)}.analytics-detail-panel>header h2{margin:2px 0 0;font-size:18px}.analytics-detail-table-wrap{max-height:68vh;overflow:auto}.analytics-detail-table{min-width:1320px}.analytics-detail-table thead{position:sticky;top:0;z-index:2}.analytics-detail-table th{background:#f8fafc;box-shadow:0 1px var(--line)}.analytics-detail-table td{vertical-align:top}.analytics-detail-table td:first-child{width:25%}.analytics-detail-table td:nth-child(3){width:24%;color:#667085}.analytics-detail-table td strong,.analytics-detail-table td span,.analytics-detail-table td small{display:block}.analytics-detail-table td small{margin-top:4px}.analytics-detail-table .status{display:inline-flex}.analytics-detail-link{display:inline-flex;align-items:center;gap:6px}.analytics-detail-panel .pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border-top:1px solid var(--line);background:#fbfcfe}
@media(max-width:1200px){.analytics-filter,.pending-flow-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-filter-actions{grid-column:1/-1;justify-content:flex-end}.analytics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-kpi:nth-child(3){border-right:0}.analytics-kpi:nth-child(-n+3){border-bottom:1px solid var(--line)}.analytics-manager-ranking{grid-template-columns:1fr}}
@media(max-width:900px){.analytics-main-grid,.analytics-rank-grid{grid-template-columns:1fr}.analytics-filter,.pending-flow-filter{grid-template-columns:1fr 1fr}.analytics-title,.pending-flow-title,.analytics-detail-title{align-items:flex-start!important}.analytics-freshness{grid-template-columns:auto auto}.analytics-freshness .button{grid-row:auto;grid-column:1/-1}.analytics-definition>div{grid-template-columns:1fr}.analytics-stage-strip{grid-template-columns:1fr}.analytics-stage-strip>a{border-right:0;border-bottom:1px solid var(--line)}.analytics-stage-strip>a:last-child{border-bottom:0}.analytics-manager-panel{grid-column:auto}}
@media(max-width:560px){.analytics-filter,.pending-flow-filter{grid-template-columns:1fr}.analytics-filter-actions{justify-content:stretch}.analytics-filter-actions>*{flex:1}.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-kpi,.analytics-kpi:nth-child(3){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.analytics-kpi:nth-child(even){border-right:0}.analytics-kpi:nth-last-child(-n+2){border-bottom:0}.analytics-kpi strong{font-size:23px}.analytics-chart{overflow-x:auto}.analytics-panel>header,.analytics-pending-overview>header,.pending-flow-panel>header{padding:15px}.analytics-pending-overview>header{align-items:flex-start;flex-direction:column}.analytics-ranking{padding-left:14px;padding-right:14px}.analytics-manager-ranking .analytics-rank-row{grid-template-columns:24px minmax(0,1fr)}.manager-decision-counts{grid-column:2;grid-template-columns:1fr 1fr}.pending-flow-table-wrap{max-height:none}}
.ai-effect-metrics{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:20px}.ai-effect-explainer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}.ai-effect-explainer p{margin:8px 0 0;color:var(--muted);line-height:1.7}.ai-effect-explainer>small{max-width:320px;color:var(--muted)}.status.learning{background:#fff6e5;color:#a86200}.status.normal{background:#e9f8f1;color:#087a52}.status.guarded{background:#fff0ed;color:#c7372f}.notice-text{color:#76520b;line-height:1.6}.ai-effect-metrics .metric strong{font-size:30px}@media(max-width:1200px){.ai-effect-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.ai-effect-metrics{grid-template-columns:1fr}.ai-effect-explainer{align-items:flex-start;flex-direction:column}}

/* AI effect center follows the operations analytics visual system. */
.ai-effect-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.ai-effect-kpis .analytics-kpi:last-child{border-right:0}.ai-effect-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 13px;color:#667085;font-size:10px}.ai-effect-legend span{display:inline-flex;align-items:center;gap:5px}.ai-effect-legend span::before{width:14px;height:3px;border-radius:2px;background:var(--blue);content:""}.ai-effect-legend .completed::before{background:#7b8494}.ai-effect-legend .matched::before{background:var(--green)}.ai-effect-line-completed,.ai-effect-line-matched{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.ai-effect-line-completed{stroke:#7b8494;stroke-dasharray:5 5}.ai-effect-line-matched{stroke:var(--green)}.ai-quality-outcomes{padding-bottom:4px}.ai-quality-outcomes .analytics-outcome-row{cursor:default}.ai-quality-outcomes .analytics-outcome-row:hover{background:transparent}.ai-quality-summary{display:grid;gap:2px;margin:5px 18px 17px;padding:12px 13px;border-left:3px solid var(--green);background:#f3faf7}.ai-quality-summary strong{font-size:12px}.ai-quality-summary span{color:#667085;font-size:11px}.ai-effect-section{margin-bottom:14px}.ai-effect-section>header{align-items:center}.ai-effect-table-wrap{max-height:440px}.ai-effect-table{min-width:1040px}.ai-effect-table th{position:sticky;top:0;z-index:1;background:#f8fafc;box-shadow:0 1px var(--line);font-size:11px}.ai-effect-table td{vertical-align:middle;padding-top:11px;padding-bottom:11px;font-size:12px}.ai-effect-table td strong,.ai-effect-table td small{display:block}.ai-effect-table td small{margin-top:4px}.ai-effect-table td:first-child{min-width:190px}.ai-effect-table td:last-child{max-width:330px;color:#667085}.ai-effect-audit-table td:nth-child(3){min-width:280px;max-width:440px}.ai-effect-audit-table .analytics-detail-link{display:block;overflow-wrap:anywhere}.mono-value{font-family:var(--mono);font-variant-numeric:tabular-nums}.ai-effect-definition{margin-bottom:0}.ai-effect-definition>div{grid-template-columns:1fr 1fr}
@media(max-width:1200px){.ai-effect-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-effect-kpis .analytics-kpi:nth-child(3){border-right:0}.ai-effect-kpis .analytics-kpi:nth-child(-n+3){border-bottom:1px solid var(--line)}.ai-effect-kpis .analytics-kpi:nth-child(4){border-right:1px solid var(--line)}.ai-effect-kpis .analytics-kpi:last-child{border-right:1px solid var(--line)}}
@media(max-width:900px){.ai-effect-definition>div{grid-template-columns:1fr}}
@media(max-width:560px){.ai-effect-kpis{grid-template-columns:1fr 1fr}.ai-effect-kpis .analytics-kpi,.ai-effect-kpis .analytics-kpi:nth-child(3),.ai-effect-kpis .analytics-kpi:nth-child(4),.ai-effect-kpis .analytics-kpi:last-child{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.ai-effect-kpis .analytics-kpi:nth-child(even){border-right:0}.ai-effect-kpis .analytics-kpi:last-child{grid-column:1/-1;border-right:0;border-bottom:0}.ai-effect-legend{justify-content:flex-start}.ai-effect-section>header{align-items:flex-start;flex-direction:column}.ai-effect-table-wrap{max-height:none}}

/* AI effect center separates business volume from independently verified quality. */
.ai-effect-volume{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;margin-bottom:12px}
.ai-effect-volume>a{display:grid;gap:3px;padding:14px 18px;border-right:1px solid var(--line);color:inherit;text-decoration:none}
.ai-effect-volume>a:last-child{border-right:0}.ai-effect-volume>a:hover,.ai-effect-volume>a:focus-visible{background:#f7f8fa}
.ai-effect-volume span{color:#667085;font-size:11px;font-weight:650}.ai-effect-volume strong{font:700 25px/1.15 var(--mono);color:#1d2939}.ai-effect-volume small{color:#667085}
.ai-effect-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.ai-effect-kpis .analytics-kpi:nth-child(3),.ai-effect-kpis .analytics-kpi:nth-child(4),.ai-effect-kpis .analytics-kpi:last-child{border-right:1px solid var(--line);border-bottom:0}.ai-effect-kpis .analytics-kpi:last-child{border-right:0}
.ai-quality-summary.waiting{border-left-color:#d98400;background:#fff8e8}
.ai-blind-review{display:flex;align-items:center;justify-content:flex-end;gap:8px}.ai-blind-review span{margin-right:auto;color:#667085;font-size:11px}.ai-blind-review button{min-height:32px;padding:5px 13px}
@media(max-width:1200px){.ai-effect-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-effect-kpis .analytics-kpi,.ai-effect-kpis .analytics-kpi:nth-child(3),.ai-effect-kpis .analytics-kpi:nth-child(4),.ai-effect-kpis .analytics-kpi:last-child{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.ai-effect-kpis .analytics-kpi:nth-child(even){border-right:0}.ai-effect-kpis .analytics-kpi:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:700px){.ai-effect-volume{grid-template-columns:1fr}.ai-effect-volume>a{border-right:0;border-bottom:1px solid var(--line)}.ai-effect-volume>a:last-child{border-bottom:0}.ai-blind-review{align-items:stretch;flex-wrap:wrap}.ai-blind-review span{width:100%;margin:0}.ai-blind-review button{flex:1}}

/* AI quality audit: compact list with an expandable, auditable explanation. */
.ai-blind-review input[type=text]{min-width:180px;min-height:32px;padding:5px 9px;font-size:11px}
.ai-evaluation-detail-row>td{padding:0!important;background:#f8fafc}
.ai-effect-table-wrap:has(.ai-evaluation-disclosure[open]){max-height:none}
.ai-basis-title{align-items:flex-end}.ai-basis-filter{display:grid;grid-template-columns:220px minmax(320px,1fr) auto;gap:10px;align-items:end;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.ai-basis-filter label{gap:5px;font-size:12px}.ai-basis-filter-actions,.ai-basis-actions{display:flex;align-items:center;gap:7px}.ai-topic-directory{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ai-topic-directory-head,.ai-topic-summary{display:grid;grid-template-columns:minmax(150px,1fr) minmax(280px,2fr) minmax(210px,1.3fr) 120px 84px 72px;gap:16px;align-items:center}.ai-topic-directory-head{padding:10px 14px;background:#fafafa;color:var(--muted);font-size:11px}.ai-topic-row{border-top:1px solid var(--line)}.ai-topic-directory-head+.ai-topic-row{border-top:0}.ai-topic-row>summary{padding:16px 14px;cursor:pointer;list-style:none}.ai-topic-row>summary::-webkit-details-marker{display:none}.ai-topic-row>summary:hover{background:#f8fafc}.ai-topic-row[open]>summary{background:#f7f9fb}.ai-topic-summary>span{min-width:0}.ai-topic-name,.ai-topic-core,.ai-topic-scope,.ai-topic-case-count{display:grid;gap:4px}.ai-topic-name strong{font-size:14px}.ai-topic-summary small{color:var(--muted);font-size:11px;line-height:1.45}.ai-topic-core,.ai-topic-scope{line-height:1.6}.ai-topic-case-count>strong{display:inline;font-size:17px}.ai-topic-toggle{color:var(--blue);font-size:12px;white-space:nowrap}.ai-topic-row[open] .ai-topic-toggle{font-size:0}.ai-topic-row[open] .ai-topic-toggle::after{font-size:12px;content:"收起"}.ai-topic-detail{padding:0 20px 22px 180px;background:#f7f9fb}.ai-topic-common{padding:14px 0;border-top:1px solid var(--line)}.ai-topic-common h2,.ai-topic-section h2{margin:0;font-size:14px}.ai-topic-common p{margin:7px 0 0;line-height:1.7}.ai-topic-section{border-top:1px solid var(--line)}.ai-topic-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:16px 0 10px}.ai-topic-section>header p{margin:4px 0 0;color:var(--muted);font-size:12px}.ai-topic-history-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;font-size:12px}.ai-standard-row{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(360px,1.8fr);gap:20px;padding:13px 0;border-top:1px solid var(--line)}.ai-standard-row>div{display:grid;align-content:start;gap:4px}.ai-standard-row p{margin:2px 0;line-height:1.7}.ai-standard-row small,.ai-case-row small{color:var(--muted);font-size:11px;line-height:1.55}.ai-case-row{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(320px,1.6fr) auto;gap:20px;align-items:start;padding:13px 0;border-top:1px solid var(--line)}.ai-case-row>div{display:grid;gap:5px}.ai-case-row>div:first-child{grid-template-columns:auto 1fr}.ai-case-row>div:first-child small{grid-column:1/-1}.ai-case-row p{margin:0;line-height:1.65}.ai-basis-actions{display:flex!important;grid-template-columns:none!important;white-space:nowrap}.ai-basis-actions form{margin:0}.ai-topic-empty{margin:0;padding:28px 14px}@media(max-width:1050px){.ai-topic-directory-head,.ai-topic-summary{grid-template-columns:minmax(140px,1fr) minmax(260px,1.8fr) minmax(170px,1fr) 105px 76px}.ai-topic-directory-head>span:last-child,.ai-topic-toggle{display:none}.ai-topic-detail{padding-left:24px}}@media(max-width:720px){.ai-basis-title{align-items:flex-start}.ai-basis-filter{grid-template-columns:1fr}.ai-basis-filter-actions>*{flex:1}.ai-topic-directory-head{display:none}.ai-topic-row:first-of-type{border-top:0}.ai-topic-summary{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:15px 2px}.ai-topic-name{grid-column:1}.ai-topic-summary>span:nth-child(5){grid-column:2;grid-row:1}.ai-topic-core,.ai-topic-scope,.ai-topic-case-count{grid-column:1/-1}.ai-topic-core{padding-top:7px;border-top:1px solid var(--line)}.ai-topic-scope::before{color:var(--muted);font-size:11px;content:"覆盖范围"}.ai-topic-case-count{display:block}.ai-topic-case-count::before{margin-right:8px;color:var(--muted);font-size:11px;content:"人工案例"}.ai-topic-case-count small{display:block;margin-top:4px}.ai-topic-toggle{display:block;grid-column:1/-1}.ai-topic-detail{padding:0 2px 18px}.ai-topic-section>header{align-items:flex-start;flex-direction:column}.ai-topic-history-links{justify-content:flex-start}.ai-standard-row,.ai-case-row{grid-template-columns:1fr;gap:9px}.ai-standard-row>div+div,.ai-case-row>div+div{padding-top:8px;border-top:1px dashed var(--line)}.ai-basis-actions{padding-top:8px}.ai-topic-common{padding-top:13px}}
.semantic-quality-actions{display:flex;align-items:center;gap:10px;margin-top:-4px}.semantic-quality-actions span{color:var(--muted);font-size:12px}.semantic-quality-result{display:grid;gap:6px;padding:11px 12px;border:1px solid var(--line);border-radius:6px;background:#fafafa}.semantic-quality-result[data-status="clear"]{border-color:#a8dcc8;background:var(--green-soft)}.semantic-quality-result[data-status="needs_revision"],.semantic-quality-result[data-status="pending"]{border-color:#ecd09b;background:var(--amber-soft)}.semantic-quality-result[data-status="error"]{border-color:#e6b4b0;background:var(--red-soft)}.semantic-quality-result p,.semantic-quality-result ul{margin:0;color:#4b5563;font-size:12px;line-height:1.6}.semantic-quality-result ul{padding-left:18px}.semantic-quality-suggestion{display:grid;gap:6px;padding-top:8px;border-top:1px solid rgba(102,112,133,.2)}.semantic-quality-suggestion p{color:inherit}.semantic-quality-suggestion button{justify-self:start}.semantic-quality-result small{color:var(--muted)}
.ai-evaluation-disclosure{border-top:1px solid #e7ebf0}
.ai-evaluation-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;cursor:pointer;color:#1d2939;font-weight:650;list-style:none}
.ai-evaluation-disclosure>summary::-webkit-details-marker{display:none}.ai-evaluation-disclosure>summary::before{content:"＋";flex:0 0 auto;font:700 14px var(--mono)}.ai-evaluation-disclosure[open]>summary::before{content:"－"}.ai-evaluation-disclosure>summary span{margin-right:auto}.ai-evaluation-disclosure>summary small{max-width:55%;margin:0;text-align:right;font-weight:400}
.ai-evaluation-detail-body{display:grid;gap:12px;padding:0 16px 16px;border-top:1px solid #e7ebf0}
.ai-decision-path{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding-top:13px}.ai-decision-path span,.ai-decision-path strong{padding:5px 8px;border:1px solid var(--line);border-radius:5px;background:#fff;font-size:11px}.ai-decision-path strong{border-color:#b8cff2;background:#eef5ff;color:#1d2939}.ai-decision-path b{color:#98a2b3;font-weight:500}
.ai-combined-reason{padding:12px 14px;border-left:3px solid var(--red);background:#fff7f6}.ai-combined-reason h3{margin:0 0 6px;font-size:13px}.ai-combined-reason ul,.ai-model-reason-grid ul{margin:0;padding-left:19px}.ai-combined-reason li,.ai-model-reason-grid li{line-height:1.65}.ai-combined-reason li+li,.ai-model-reason-grid li+li{margin-top:3px}
.ai-model-reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ai-model-reason-grid>section{padding:12px 14px;border:1px solid var(--line);border-radius:7px;background:#fff}.ai-model-reason-grid header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.ai-model-reason-grid p{margin:0;color:var(--muted)}.ai-history-note{margin:0;color:#667085;font-size:11px}
.ai-history-evidence{padding:12px 14px;border:1px solid var(--line);border-radius:7px;background:#fff}.ai-history-evidence h3{margin:0 0 7px;font-size:13px}.ai-history-evidence ol{display:grid;gap:7px;margin:0;padding-left:20px}.ai-history-evidence li{padding-left:3px}.ai-history-evidence li .status{margin-right:7px}.ai-history-evidence li b{font-size:12px}.ai-history-evidence li small{display:block;margin:3px 0 0;color:#667085}
.ai-evaluation-correction{display:grid;gap:10px;padding:13px 14px;border:1px solid #cbdcf6;border-radius:7px;background:#f6f7f8}.ai-evaluation-correction label{display:grid;gap:6px;font-weight:650}.ai-evaluation-correction textarea{min-height:58px;resize:vertical;font-weight:400}.ai-evaluation-correction>div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.ai-evaluation-correction>div>span{margin-right:auto;color:#667085;font-size:11px}.ai-evaluation-correction button{min-height:34px;padding:6px 12px}
@media(max-width:900px){.ai-model-reason-grid{grid-template-columns:1fr}.ai-evaluation-correction>div{align-items:stretch;flex-wrap:wrap}.ai-evaluation-correction>div>span{width:100%;margin:0}.ai-evaluation-correction button{flex:1}}

.rule-input-part-types{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:7px;background:#fff}.rule-input-part-types>span{font-weight:650}.rule-input-part-types>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.rule-input-part-types label{display:grid;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:8px;padding:7px 9px;border-radius:6px;background:#f7f8fa}.rule-input-part-types label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.rule-input-part-types select{min-height:34px;padding:5px 8px}.rule-input-part-types>small{color:var(--muted)}

/* Feedback and suggestions: public issue tracker for authenticated users. */
.feedback-page,.feedback-compose-page,.feedback-detail-page{display:grid;gap:14px}.feedback-page>.page-title,.feedback-compose-page>.page-title,.feedback-detail-page>.page-title{margin-bottom:0}.feedback-status-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:hidden}.feedback-status-strip a{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:13px 15px;border-right:1px solid var(--line);color:#667085}.feedback-status-strip a:last-child{border-right:0}.feedback-status-strip a:hover{background:#f7f8fa;color:var(--blue)}.feedback-status-strip a.active{box-shadow:inset 0 -3px var(--blue);background:var(--blue-soft);color:var(--blue)}.feedback-status-strip span{font-size:12px}.feedback-status-strip strong{font:700 18px var(--mono)}
.feedback-filter{display:grid;grid-template-columns:minmax(280px,1fr) 170px 170px auto;gap:10px;align-items:end;padding:12px 14px}.feedback-filter label{gap:4px;font-size:12px}.feedback-filter input,.feedback-filter select{min-height:38px;padding:7px 9px}.feedback-list{overflow:hidden}.feedback-row{display:grid;grid-template-columns:13px minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 17px;border-bottom:1px solid var(--line);color:inherit}.feedback-row:last-child{border-bottom:0}.feedback-row:hover{background:#f8f9fb}.feedback-row-main{display:grid;gap:7px;min-width:0}.feedback-row-title{display:flex;align-items:center;gap:9px;min-width:0}.feedback-row-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.feedback-row-title code{flex:0 0 auto;color:#98a2b3}.feedback-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 11px;color:#7b8494;font-size:11px}.feedback-label{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border:1px solid;border-radius:4px;font-size:11px;font-weight:650}.feedback-label.bug{border-color:#f0b9b4;background:var(--red-soft);color:var(--red)}.feedback-label.feature{border-color:#d8c5f2;background:#f7f1ff;color:#7547a8}.feedback-label.question{border-color:#bfd5f6;background:var(--blue-soft);color:#1d2939}.feedback-status{font-size:11px}.feedback-status.open{background:var(--amber-soft);color:var(--amber)}.feedback-status.in_progress{background:var(--blue-soft);color:var(--blue)}.feedback-status.awaiting_confirmation{background:var(--amber-soft);color:var(--amber)}.feedback-status.resolved{background:var(--green-soft);color:var(--green)}.feedback-status.wont_fix,.feedback-status.closed{background:#eef1f4;color:#59636e}.feedback-state-dot{display:block;width:10px;height:10px;border:2px solid #98a2b3;border-radius:50%}.feedback-state-dot.open{border-color:#d48300;background:#fff6e7}.feedback-state-dot.in_progress{border-color:var(--blue);background:var(--blue-soft)}.feedback-state-dot.awaiting_confirmation{border-color:var(--amber);background:var(--amber-soft)}.feedback-state-dot.resolved{border-color:var(--green);background:var(--green)}.feedback-state-dot.wont_fix,.feedback-state-dot.closed{border-color:#98a2b3;background:#98a2b3}.feedback-comment-count{color:#667085;font-size:11px;white-space:nowrap}.feedback-pagination{display:flex;align-items:center;justify-content:center;gap:12px}.feedback-pagination span{color:#667085;font:11px var(--mono)}
.feedback-compose{display:grid;gap:20px;padding:24px}.feedback-category-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;border:0}.feedback-category-picker legend{grid-column:1/-1;margin-bottom:3px;font-weight:650}.feedback-category-option{position:relative;display:block}.feedback-category-option input{position:absolute;opacity:0;pointer-events:none}.feedback-category-option span{display:grid;gap:3px;min-height:86px;padding:14px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;cursor:pointer}.feedback-category-option span:hover{border-color:#d4d4d4;background:#fbfdff}.feedback-category-option input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}.feedback-category-option input:checked+span{border-color:var(--blue);box-shadow:inset 3px 0 var(--blue);background:var(--blue-soft)}.feedback-category-option b{font-size:14px}.feedback-category-option small{line-height:1.45}.feedback-compose textarea{min-height:220px}.feedback-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:16px;border-top:1px solid var(--line)}.feedback-compose-actions span{color:#667085;font-size:12px}
.feedback-detail-title{align-items:flex-start!important}.feedback-title-meta{display:flex;align-items:center;gap:8px;margin-bottom:7px}.feedback-title-meta code{color:#7b8494}.feedback-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.feedback-share-button{display:inline-flex;align-items:center;gap:7px}.feedback-share-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.feedback-share-button:disabled{cursor:wait;opacity:.72}.feedback-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;align-items:start}.feedback-conversation{display:grid;gap:12px}.feedback-post{overflow:hidden}.feedback-post>header{display:flex;align-items:center;gap:10px;min-height:58px;padding:10px 15px;border-bottom:1px solid var(--line);background:#fbfcfe}.feedback-post>header>div:nth-child(2){display:grid;grid-template-columns:auto auto;align-items:center;justify-content:start;gap:0 7px}.feedback-post>header small{grid-column:1/-1}.feedback-post>header>.status{margin-left:auto}.feedback-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:6px;background:var(--blue-soft);color:var(--blue);font-weight:700}.feedback-role{padding:1px 5px;border-radius:3px;background:var(--green-soft);color:var(--green);font-size:10px;font-weight:650}.manager-post{border-color:#dcdcdc}.manager-post>header{background:#f6f7f8}.feedback-post-body{min-height:72px;padding:18px;line-height:1.8;overflow-wrap:anywhere;white-space:pre-wrap}.feedback-timeline-event{display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:9px;padding:5px 13px;color:#667085;font-size:11px}.feedback-timeline-event>span{width:8px;height:8px;margin:auto;border-radius:50%;background:#98a2b3}.feedback-timeline-event p{margin:0}.feedback-timeline-event time{font:10px var(--mono);white-space:nowrap}.feedback-reply{display:grid;gap:11px;padding:17px}.feedback-reply>div{display:flex;align-items:center;justify-content:space-between;gap:15px}.feedback-detail-side{position:sticky;top:80px;display:grid;gap:12px}.feedback-status-card{display:grid;gap:9px;padding:17px}.feedback-status-card>strong{display:flex;align-items:center;gap:8px;font-size:18px}.feedback-status-card>p{margin:0 0 7px;color:#667085;font-size:11px}.feedback-status-card form{display:grid;gap:10px;padding-top:13px;border-top:1px solid var(--line)}.feedback-facts{padding:7px 16px}.feedback-facts>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.feedback-facts>div:last-child{border-bottom:0}.feedback-facts span{color:#7b8494;font-size:11px}.feedback-facts b{text-align:right;font-size:12px}
.feedback-knowledge-card{padding:14px 16px;border-color:#dcdcdc;background:#f7f8fa}.feedback-knowledge-card>div{padding:0 0 10px}.feedback-knowledge-card>div b{color:var(--green)}.feedback-knowledge-card p{margin:0;color:#52627a;font-size:11px;line-height:1.7}
@media(max-width:960px){.feedback-status-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.feedback-status-strip a:nth-child(3){border-right:0}.feedback-status-strip a:nth-child(-n+3){border-bottom:1px solid var(--line)}.feedback-filter{grid-template-columns:1fr 1fr}.feedback-filter label:first-child{grid-column:1/-1}.feedback-detail-layout{grid-template-columns:1fr}.feedback-detail-side{position:static;grid-template-columns:1fr 1fr;grid-row:1}.feedback-status-card,.feedback-facts{min-height:100%}}
@media(max-width:620px){.feedback-status-strip{grid-template-columns:1fr 1fr}.feedback-status-strip a:nth-child(3){border-right:1px solid var(--line)}.feedback-status-strip a:nth-child(even){border-right:0}.feedback-status-strip a:nth-child(-n+4){border-bottom:1px solid var(--line)}.feedback-filter,.feedback-category-picker,.feedback-detail-side{grid-template-columns:1fr}.feedback-filter label:first-child{grid-column:auto}.feedback-row{grid-template-columns:12px minmax(0,1fr)}.feedback-comment-count{grid-column:2}.feedback-row-title{align-items:flex-start}.feedback-row-title strong{white-space:normal}.feedback-title-actions{width:100%;justify-content:stretch}.feedback-title-actions>*{flex:1}.feedback-compose{padding:17px}.feedback-compose-actions,.feedback-reply>div{align-items:stretch;flex-direction:column}.feedback-compose-actions button,.feedback-reply button{width:100%}.feedback-timeline-event{grid-template-columns:14px 1fr}.feedback-timeline-event time{grid-column:2}.feedback-detail-side{grid-row:auto}}

/* Applicant rule handbook: a reading document, deliberately not a dashboard. */
.rule-handbook-page{display:grid;gap:14px}.rule-handbook-title{margin-bottom:0!important}.rule-handbook-layout{display:grid;grid-template-columns:210px minmax(0,860px);gap:18px;align-items:start;justify-content:center}.rule-handbook-toc{position:sticky;top:80px;padding:16px}.rule-handbook-toc>strong{display:block;padding:0 7px 8px;color:#344054;font-size:13px}.rule-handbook-toc nav{display:grid}.rule-handbook-toc a{padding:7px;border-radius:5px;color:#59636e;font-size:12px}.rule-handbook-toc a:hover{background:var(--blue-soft);color:var(--blue)}.rule-handbook-document{padding:34px 42px}.rule-handbook-intro{margin:0 0 30px;padding:11px 13px;border-left:3px solid var(--blue);background:#f7f8fa;color:#475467;font-size:12px}.rule-handbook-rule{scroll-margin-top:82px}.rule-handbook-rule+.rule-handbook-rule{padding-top:40px;margin-top:40px;border-top:1px solid var(--line)}.rule-handbook-rule>header{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:start;margin-bottom:25px}.rule-handbook-rule>header>span{color:#98a2b3;font:600 12px/2 var(--mono)}.rule-handbook-rule>header h2{margin:0 0 5px;font-size:24px}.rule-handbook-rule>header p{margin:0;color:#667085}.rule-handbook-section{margin-left:46px;padding:22px 0;border-top:1px solid #eef0f3;scroll-margin-top:82px}.rule-handbook-section h3{margin:0 0 5px;font-size:16px}.rule-handbook-condition{margin:0 0 12px;color:#667085;font-size:12px}.rule-handbook-fields{display:grid;gap:24px;margin:16px 0 0;padding-left:24px}.rule-handbook-fields>li{padding-left:5px}.rule-handbook-field-title{display:flex;align-items:center;gap:9px}.rule-handbook-field-title h4{margin:0;font-size:14px}.rule-handbook-field-title>span{padding:2px 6px;border-radius:3px;background:#f0f2f5;color:#667085;font-size:10px}.rule-handbook-fields>li>p{margin:7px 0 0;line-height:1.75}.rule-handbook-system-note{color:#667085;font-size:12px}.rule-handbook-checks{margin-top:11px;padding:10px 12px;background:#f8f9fb}.rule-handbook-checks b{font-size:12px}.rule-handbook-checks ul{margin:5px 0 0;padding-left:18px;color:#475467;font-size:12px}.rule-handbook-examples{margin-top:9px}.rule-handbook-examples p{margin:3px 0;color:var(--green);font-size:12px}.rule-handbook-examples p.bad{color:var(--red)}.rule-handbook-examples b{margin-right:4px}
@media(max-width:820px){.rule-handbook-layout{grid-template-columns:1fr}.rule-handbook-toc{position:static;overflow:auto;padding:10px}.rule-handbook-toc>strong{display:none}.rule-handbook-toc nav{display:flex}.rule-handbook-toc a{flex:none;white-space:nowrap}.rule-handbook-document{padding:26px 24px}.rule-handbook-section{margin-left:0}}
@media(max-width:560px){.rule-handbook-document{padding:20px 16px}.rule-handbook-rule>header{grid-template-columns:1fr}.rule-handbook-rule>header>span{display:none}.rule-handbook-rule>header h2{font-size:21px}.rule-handbook-section{padding:18px 0}.rule-handbook-fields{padding-left:21px}.rule-handbook-field-title{align-items:flex-start;flex-direction:column;gap:4px}}
.ai-review-trace{margin-top:10px;border:1px solid #dcdcdc;border-radius:7px;background:#f7f8fa}.ai-review-trace summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;cursor:pointer;color:#1d2939}.ai-review-trace summary small{color:var(--muted);text-align:right}.ai-review-trace-body{display:grid;gap:8px;padding:0 11px 11px;border-top:1px solid #e5e5e5}.ai-model-decisions{display:flex;flex-wrap:wrap;gap:8px;padding-top:9px}.ai-model-decisions span{padding:4px 8px;border-radius:5px;background:#fff;border:1px solid var(--line)}.ai-review-trace-body p{margin:0}.ai-review-trace-body ol{margin:0;padding-left:20px}.ai-review-trace-body li+li{margin-top:5px}.dt-ai-trace{display:block;margin-top:6px;padding:6px 8px;border-radius:5px;background:#f4f7fb;color:#52627a}

/* Yncw product switch and lightweight financial rule library. */
.product-switch{display:flex;align-items:center;gap:2px;margin-left:14px;padding-left:14px;border-left:1px solid var(--line)}.product-switch a{padding:7px 11px;border-radius:5px;color:#667085;font-size:12px;font-weight:650}.product-switch a:hover,.product-switch a.active{background:var(--blue-soft);color:var(--blue)}
.financial-library-page,.financial-rule-detail-page,.financial-rule-admin-page,.financial-rule-edit-page{display:grid;gap:14px}.financial-library-title{margin-bottom:0!important}.financial-rule-filter{display:grid;grid-template-columns:minmax(280px,1fr) 190px auto auto;align-items:end;gap:10px;padding:14px}.financial-rule-filter label{gap:5px}.financial-rule-filter input,.financial-rule-filter select{min-height:40px}.financial-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.financial-rule-card{display:grid;gap:10px;min-height:170px;padding:18px;color:inherit}.financial-rule-card:hover{border-color:#c9c9c9;box-shadow:0 8px 24px rgba(17,17,17,.06)}.financial-rule-card>div{display:flex;justify-content:space-between;color:#98a2b3;font:11px var(--mono)}.financial-rule-category{padding:2px 6px;border-radius:3px;background:var(--blue-soft);color:var(--blue)}.financial-rule-card h2{margin:0;font-size:17px}.financial-rule-card p{margin:0;color:#667085;line-height:1.7}.financial-rule-card small{margin-top:auto}.financial-rule-grid>.empty-state{grid-column:1/-1}
.financial-rule-detail-title{margin-bottom:0!important}.back-link{display:inline-block;margin-bottom:9px;color:var(--blue);font-size:12px}.financial-rule-reading-layout{display:grid;grid-template-columns:220px minmax(0,900px);justify-content:center;gap:16px;align-items:start}.financial-rule-toc{position:sticky;top:78px;padding:15px}.financial-rule-toc>strong{display:block;padding:0 7px 8px}.financial-rule-toc nav{display:grid}.financial-rule-toc a{padding:8px;border-radius:5px;color:#59636e;font-size:12px}.financial-rule-toc a:hover{background:var(--blue-soft);color:var(--blue)}.financial-rule-document{padding:30px 40px}.financial-rule-meta{display:flex;flex-wrap:wrap;gap:7px 14px;padding-bottom:20px;border-bottom:1px solid var(--line);color:#667085;font-size:11px}.financial-rule-document>section{padding:30px 0;scroll-margin-top:80px}.financial-rule-document>section+section{border-top:1px solid var(--line)}.financial-rule-document h2{display:flex;align-items:baseline;gap:12px;margin:0 0 18px;font-size:20px}.financial-rule-document h2 span{color:#98a2b3;font:11px var(--mono)}.financial-rule-content{line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}
.financial-rule-qa{width:min(620px,calc(100vw - 28px));height:min(680px,calc(100vh - 40px));margin:auto 18px auto auto;padding:0;border:0;border-radius:10px;box-shadow:0 24px 70px rgba(18,38,67,.25)}.financial-rule-qa::backdrop{background:rgba(22,31,44,.28)}.financial-rule-qa-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.financial-rule-qa-head>div{display:grid;gap:2px}.financial-rule-qa-head small{color:#667085}.financial-rule-qa-head button{width:34px;height:34px;border:0;background:transparent;font-size:24px;cursor:pointer}.financial-rule-qa-body{height:calc(100% - 150px);overflow:auto;padding:18px;background:#f7f8fa}.qa-welcome{display:grid;gap:8px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff}.qa-welcome p{margin:0}.qa-welcome button{width:max-content;border:0;background:transparent;color:var(--blue);cursor:pointer}.qa-thinking{display:flex;align-items:center;gap:10px}.qa-thinking span{width:18px;height:18px;border:2px solid #cbd8ee;border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}.qa-answer{display:grid;gap:9px;padding:18px;border-radius:8px;background:#fff}.qa-answer h3{margin:0;font-size:14px}.qa-answer>div{line-height:1.8}.qa-answer footer{display:grid;gap:6px;padding-top:12px;border-top:1px solid var(--line)}.qa-answer footer a{padding:7px 9px;border-radius:5px;background:#f4f7fb;font-size:11px}.financial-rule-qa-form{display:grid;grid-template-columns:1fr auto;gap:9px;padding:12px;border-top:1px solid var(--line);background:#fff}.financial-rule-qa-form textarea{min-height:52px;resize:none}
.financial-qa-settings{margin-top:14px}.financial-qa-settings summary{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;cursor:pointer}.financial-qa-settings summary small{color:#667085}.financial-qa-settings form{display:grid;gap:12px;padding:18px;border-top:1px solid var(--line)}.financial-rule-basics,.financial-rule-paste{display:grid;gap:13px;padding:20px}.financial-rule-basics h2,.financial-rule-paste h2{margin:0;font-size:17px}.financial-rule-paste{grid-template-columns:minmax(220px,.5fr) minmax(360px,1fr) auto;align-items:center}.financial-rule-paste p{margin:4px 0 0;color:#667085}.financial-rule-paste textarea{resize:vertical}.financial-rule-paste span{grid-column:2/-1;color:#667085;font-size:11px}.financial-rule-sections{display:grid;gap:10px}.financial-rule-section-heading{display:flex;align-items:end;justify-content:space-between}.financial-rule-section-heading h2{margin:0}.financial-rule-section-heading p{margin:4px 0 0;color:#667085}.financial-rule-sections>[data-section-list]{display:grid;gap:10px}.financial-rule-section-editor{padding:0;overflow:hidden}.financial-rule-section-editor header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);background:#fbfcfe}.financial-rule-section-editor header>span{color:#98a2b3;font:11px var(--mono)}.financial-rule-section-editor header input{border:0;background:transparent;font-size:15px;font-weight:650}.financial-rule-section-editor header>div{display:flex}.financial-rule-section-editor header button{padding:5px 8px;border:0;background:transparent;color:#667085;cursor:pointer}.financial-rule-section-editor header button[data-remove]{color:var(--red)}.financial-rule-section-editor>textarea{width:100%;min-height:170px;padding:16px;border:0;border-radius:0;resize:vertical;line-height:1.8}.financial-rule-editor-actions{position:sticky;bottom:10px;display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:12px 14px}.financial-rule-editor-actions>span{margin-right:auto;color:#667085}.financial-rule-notify-option{display:flex;align-items:flex-start;gap:8px;max-width:350px;margin-right:8px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:pointer}.financial-rule-notify-option input{width:16px;height:16px;margin-top:2px;accent-color:var(--blue)}.financial-rule-notify-option span{display:grid;gap:2px;margin:0;color:var(--ink)}.financial-rule-notify-option small{color:var(--muted);line-height:1.4}
@media(max-width:1000px){.financial-rule-grid{grid-template-columns:1fr 1fr}.financial-rule-paste{grid-template-columns:1fr}.financial-rule-paste span{grid-column:auto}.financial-rule-reading-layout{grid-template-columns:1fr}.financial-rule-toc{position:static;overflow:auto}.financial-rule-toc nav{display:flex}.financial-rule-toc a{white-space:nowrap}.financial-rule-filter{grid-template-columns:1fr 180px auto}.financial-rule-filter>a{display:none}}
@media(max-width:700px){.product-switch{margin-left:4px;padding-left:4px}.product-switch a{padding:6px}.financial-rule-grid,.financial-rule-filter{grid-template-columns:1fr}.financial-rule-document{padding:22px 18px}.financial-rule-qa{margin:auto;width:calc(100vw - 16px);height:calc(100vh - 24px)}.financial-rule-editor-actions{flex-wrap:wrap}.financial-rule-editor-actions span{width:100%}.financial-rule-section-editor header{grid-template-columns:32px 1fr}.financial-rule-section-editor header>div{grid-column:2}.financial-rule-qa-form{grid-template-columns:1fr}.financial-rule-qa-form button{width:100%}}
.financial-rule-editor-actions{position:static}
.financial-rule-row-title{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.financial-rule-document-state{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:10px}.financial-rule-version-switch{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.financial-rule-version-switch a{padding:6px 9px;border:1px solid var(--line);border-radius:5px;color:#59636e;font-size:11px}.financial-rule-version-switch a.active{border-color:#c9c9c9;background:var(--blue-soft);color:var(--blue)}.consultation-action{border-color:#e6c47a;color:#8b5d08;background:#fffaf0}
.financial-rule-admin-list>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line)}.financial-rule-admin-list>header>div{display:flex;align-items:center;gap:9px}.financial-rule-admin-list>header span,.financial-rule-admin-list>header small{color:var(--muted)}.financial-rule-state-table{min-width:1120px}.financial-rule-state-table th{white-space:nowrap}.financial-rule-state-table td{vertical-align:top;padding-top:16px;padding-bottom:16px}.financial-rule-document-cell,.financial-rule-state-slot{display:grid;gap:5px}.financial-rule-document-cell{min-width:220px}.financial-rule-document-cell>span,.financial-rule-document-cell>small,.financial-rule-state-slot small{color:var(--muted);font-size:11px}.financial-rule-state-slot{min-width:170px;padding-left:10px;border-left:3px solid #d5dce7}.financial-rule-state-slot.formal{border-left-color:#16875d}.financial-rule-state-slot.consultation{border-left-color:#b7791f}.financial-rule-state-slot.draft{border-left-color:#94a3b8}.financial-rule-state-slot>div{display:flex;gap:10px}.financial-rule-state-slot a{color:var(--blue);font-size:12px}.status-badge{width:max-content;padding:3px 7px;border-radius:5px;font-size:11px;font-weight:700}.status-badge.approved{background:#eaf7f1;color:#16875d}.status-badge.pending{background:#fff5df;color:#8b5d08}.status-badge.neutral{background:#eef2f6;color:#526071}.financial-rule-empty-slot{display:block;padding:8px 0;color:#98a2b3;font-size:12px}.financial-rule-admin-actions{display:grid;gap:7px;min-width:120px}.financial-rule-admin-actions .button{justify-content:center;white-space:nowrap}.financial-rule-admin-empty{display:grid;gap:5px;padding:28px;text-align:center}.financial-rule-admin-empty span{color:var(--muted)}

/* 2026-07-23 visual restraint pass: business hierarchy before decoration. */
.app-shell .eyebrow,.app-shell .section-kicker{display:none}
.app-shell .page-title{margin-bottom:18px}.app-shell .page-title h1{margin-top:0;letter-spacing:-.02em}.app-shell .page-title p{max-width:860px}
.product-switch a{border-radius:4px}.product-switch a:hover{background:#f3f4f6;color:#1f2329}.product-switch a.active{background:#eef0f2;color:#1f2329}
.work-mode-switch{border-radius:5px;background:#f3f4f6}.work-mode-switch button{border-radius:3px}.work-mode-switch button.active,.work-mode-switch button.active:hover{background:#fff;color:#1f2329;box-shadow:0 0 0 1px var(--line-strong)}
.app-shell .application-step-rail a.current,.app-shell .rule-guide-toc nav a.active,.app-shell .rule-outline button.active{background:#eef0f2;color:#1f2329;box-shadow:none;transform:none}
.app-shell .feedback-category-option input:checked+span{border-color:#9da6b1;background:#f5f6f7;box-shadow:none}
.rule-handbook-intro{padding:0 0 14px;border:0;border-bottom:1px solid var(--line);background:transparent}
.analytics-panel>header,.analytics-pending-overview>header,.pending-flow-panel>header,.analytics-detail-panel>header{background:#fff}
.analytics-outcome-row:hover,.analytics-outcome-row:focus-visible,.analytics-stage-strip>a:hover,.ai-effect-volume>a:hover,.ai-effect-volume>a:focus-visible{background:#f6f7f8}
.analytics-rank-row:nth-child(-n+3) .rank-number{background:#eef0f2;color:#344054}
.manager-decision-counts span{border-radius:4px;background:#f3f4f6}
.analytics-definition>div,.pending-flow-panel .pagination,.analytics-detail-panel .pagination{background:#f7f8f9}
.rule-task-banner,.rule-review-preview,.structure-preview,.paste-panel{border-color:var(--line-strong);background:#f5f6f7;color:#475467}
.rule-task-banner span,.rule-review-preview code,.structure-preview code{color:#344054}
.rule-stepper button.active{background:#eef0f2;color:#1f2329}
.dt-ai-trace{background:#f1f3f5;color:#52606d}.tag.bip{color:#52606d!important;background:#eef0f2!important}
.dt-similarity-evidence{margin:0 15px 12px 53px;padding:10px 0;border-top:1px solid #ead8b4;border-bottom:1px solid #ead8b4}.dt-similarity-evidence>header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.dt-similarity-evidence>header strong{color:#8a5a00;font-size:13px}.dt-similarity-evidence>header small{color:var(--muted);font-size:11px;text-align:right}.dt-similarity-match{padding:9px 10px;border-radius:7px;background:#fffaf0}.dt-similarity-match+.dt-similarity-match{margin-top:7px}.dt-similarity-match>strong{display:block;margin-bottom:6px;font-size:12px}.dt-similarity-match dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.dt-similarity-match dl>div{min-width:0}.dt-similarity-match dt{margin-bottom:2px;color:var(--muted);font-size:10px}.dt-similarity-match dd{margin:0;color:#1d2939;font-size:12px;font-weight:650;line-height:1.45;overflow-wrap:anywhere}.dt-similarity-archive{display:block;margin-top:6px;color:#667085;line-height:1.45;overflow-wrap:anywhere}.dt-similarity-match p{margin:6px 0 0;color:#7a4b00;font-size:11px;line-height:1.5}.dt-similarity-match p b{font-weight:700}.dt-similarity-model-reasons{display:grid;gap:3px;margin-top:6px;padding-top:6px;border-top:1px solid #ead8b4}.dt-similarity-model-reasons small{color:#667085;line-height:1.45}.dt-similarity-model-reasons b{color:#475467}@media(max-width:520px){.dt-similarity-evidence{margin-left:15px}.dt-similarity-evidence>header{align-items:flex-start;flex-direction:column;gap:2px}.dt-similarity-evidence>header small{text-align:left}.dt-similarity-match dl{grid-template-columns:1fr}}

/* 2026-07-23 editorial minimal system: fewer containers, clearer hierarchy. */
.app-shell{
  --bg:#fff;--surface:#fff;--surface-soft:#f7f7f8;--text:#0d0d0d;--muted:#6b6b6b;
  --line:#e7e7e7;--line-strong:#cfcfcf;--blue:#111;--blue-soft:#f2f2f2;
  background:#fff;color:var(--text)
}
.app-shell .topbar{height:68px;padding:0 32px;border-bottom:1px solid #ededed;background:#fff}
.app-shell .brand{gap:10px;font-size:16px;letter-spacing:-.01em}
.app-shell .brand-mark{width:20px;height:20px;border-color:#111;border-radius:5px;box-shadow:inset 0 0 0 2px #fff}
.app-shell .app-back-button{min-height:auto;padding:6px 0;border:0;border-radius:0;background:transparent;color:#5f5f5f}
.app-shell .app-back-button:hover{border:0;background:transparent;color:#111}
.app-shell .product-switch{align-self:stretch;gap:22px}
.app-shell .product-switch a{display:flex;align-items:center;padding:0;border-radius:0;background:transparent!important;color:#6b6b6b}
.app-shell .product-switch a:hover{color:#111}
.app-shell .product-switch a.active{box-shadow:inset 0 -1px #111;color:#111;font-weight:600}
.app-shell .sidebar{top:68px;width:220px;padding:28px 20px 40px;border-right:0;background:#f7f7f8}
.app-shell .sidebar a{padding:8px 10px;border-radius:5px;color:#666;font-weight:450}
.app-shell .sidebar a:hover{background:#ededee;color:#111}
.app-shell .sidebar a.active{background:transparent;color:#111;font-weight:650}
.app-shell .nav-label{padding:22px 10px 7px;color:#9a9a9a;font-family:var(--sans);font-size:11px;letter-spacing:0;text-transform:none}
.app-shell .nav-count{background:#222}
.app-shell .content{margin-left:220px;padding:calc(68px + 50px) clamp(36px,4.5vw,76px) 96px;background:#fff}
.app-shell .content>*{max-width:1280px}
.app-shell .page-title{align-items:flex-start;min-height:0;margin-bottom:36px}
.app-shell .page-title h1{margin:0 0 9px;font-size:34px;font-weight:600;line-height:1.12;letter-spacing:-.045em}
.app-shell .page-title p{max-width:720px;color:#6b6b6b;font-size:14px;line-height:1.65}
.app-shell .surface,.app-shell .card{border-color:#e7e7e7;border-radius:4px;box-shadow:none}
.app-shell .button,.app-shell button{min-height:38px;border-color:#cfcfcf;border-radius:999px;background:#fff;color:#111;font-weight:550;box-shadow:none;transform:none}
.app-shell .button:hover,.app-shell button:hover{border-color:#8c8c8c;background:#f6f6f6;transform:none}
.app-shell .primary{border-color:#111;background:#111;color:#fff}
.app-shell .primary:hover{border-color:#333;background:#333;color:#fff}
.app-shell input,.app-shell textarea,.app-shell select{border-color:#d8d8d8;border-radius:4px;background:#fff}
.app-shell input:focus,.app-shell textarea:focus,.app-shell select:focus{border-color:#111;box-shadow:0 0 0 1px #111}
.app-shell .work-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;border:0;border-bottom:1px solid #d9d9d9;border-radius:0;background:transparent}
.app-shell .work-mode-switch button{min-height:40px;padding:7px 5px 9px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#777;box-shadow:none}
.app-shell .work-mode-switch button:hover{border:0;border-bottom:2px solid #aaa;border-radius:0;background:transparent;color:#111;box-shadow:none}
.app-shell .work-mode-switch button.active,.app-shell .work-mode-switch button.active:hover{border:0;border-bottom:2px solid #111;border-radius:0;background:transparent;color:#111;box-shadow:none}
.app-shell .queue-tabs{gap:24px;padding:0;border-bottom:1px solid #e7e7e7;border-radius:0;background:transparent}
.app-shell .queue-tabs a{padding:10px 0 11px;border-radius:0;color:#777}
.app-shell .queue-tabs a:hover{background:transparent;color:#111}
.app-shell .queue-tabs a.active{box-shadow:inset 0 -1px #111;background:transparent;color:#111}
.app-shell .tabs{gap:20px;border-bottom:1px solid #e7e7e7}
.app-shell .tabs a{padding:9px 0;border-radius:0}
.app-shell .tabs a.active{box-shadow:inset 0 -1px #111;background:transparent;color:#111}
.app-shell .status{display:inline-flex;align-items:center;gap:6px;padding:2px 0;border-radius:0;background:transparent!important;color:#666}
.app-shell .status::before{width:6px;height:6px;border-radius:50%;background:currentColor;content:""}
.app-shell .analytics-filter,.app-shell .pending-flow-filter,.app-shell .analytics-detail-filter{padding:0 0 28px;border:0;border-bottom:1px solid #e7e7e7;border-radius:0}
.app-shell .analytics-kpis{margin:0 0 42px;border:0;border-top:1px solid #dedede;border-bottom:1px solid #dedede;border-radius:0}
.app-shell .analytics-kpi{padding:22px 20px}
.app-shell .analytics-kpi:first-child{padding-left:0}.app-shell .analytics-kpi:last-child{padding-right:0}
.app-shell .analytics-kpi:hover,.app-shell .analytics-kpi:focus-visible{background:#fafafa}
.app-shell .analytics-kpi strong{font-family:var(--sans);font-size:32px;font-weight:580;letter-spacing:-.045em}
.app-shell .analytics-panel,.app-shell .analytics-pending-overview,.app-shell .pending-flow-panel,.app-shell .analytics-detail-panel,.app-shell .ai-effect-section{overflow:visible;border:0;border-radius:0;background:#fff}
.app-shell .analytics-panel>header,.app-shell .analytics-pending-overview>header,.app-shell .pending-flow-panel>header,.app-shell .analytics-detail-panel>header,.app-shell .ai-effect-section>header{padding:0 0 18px;border-bottom:1px solid #dedede}
.app-shell .analytics-main-grid,.app-shell .analytics-rank-grid{gap:48px}
.app-shell .analytics-outcomes{padding:12px 0}.app-shell .analytics-ranking{padding:4px 0 9px}
.app-shell .analytics-rank-row:nth-child(-n+3) .rank-number{background:#f1f1f1;color:#555}
.app-shell .analytics-stage-strip{border-bottom:1px solid #dedede}
.app-shell .analytics-stage-strip>a{padding:20px 0;margin-right:28px}
.app-shell .feedback-status-strip{border:0;border-bottom:1px solid #dedede;border-radius:0}
.app-shell .feedback-status-strip a.active{box-shadow:inset 0 -1px #111;background:transparent;color:#111}
.app-shell .feedback-filter{padding:0 0 24px;border:0;border-bottom:1px solid #dedede;border-radius:0}
.app-shell table{border-radius:0}
.app-shell th{background:#fff;color:#777;font-family:var(--sans);font-weight:550;letter-spacing:0}
.app-shell tbody tr:hover{background:#fafafa}
.app-shell .approval-list{gap:0}
.app-shell .approval-item{padding:24px 0;border:0;border-bottom:1px solid #e7e7e7;border-radius:0}
.app-shell .application-step-rail{padding:0;border:0;border-radius:0;background:transparent}
.app-shell .application-step-rail a{padding:10px 0;border-radius:0}
.app-shell .application-step-rail a.current{background:transparent;color:#111}
.app-shell .application-step-rail b,.app-shell .application-section-head>span{border-color:#d5d5d5;background:#fff;color:#555!important}
.app-shell .application-context,.app-shell .archive-picker,.app-shell .application-entry{padding:26px 0;border:0;border-top:1px solid #dedede;border-radius:0}
.app-shell .application-submit,.app-shell .review-bar,.app-shell .rule-save-bar{bottom:0;border:1px solid #dedede;border-radius:6px;background:rgba(255,255,255,.96);box-shadow:0 8px 28px rgba(0,0,0,.08)}
.app-shell .rule-stepper{padding:0;border:0;border-bottom:1px solid #dedede;border-radius:0}
.app-shell .rule-stepper button.active{background:#f3f3f3;color:#111}
.app-shell .rule-edit-panel,.app-shell .rule-outline-panel{border:0;border-radius:0}
.app-shell .rule-edit-panel{padding-left:38px;border-left:1px solid #e7e7e7}
.app-shell .message.notice{border-color:#dedede;background:#f7f7f7;color:#333}
@media(max-width:820px){
  .app-shell .topbar{padding:0 16px}.app-shell .sidebar{width:100%;background:#fff}.app-shell .content{margin-left:0;padding:calc(68px + 26px) 18px 70px}
  .app-shell .page-title{margin-bottom:26px}.app-shell .page-title h1{font-size:29px}.app-shell .rule-edit-panel{padding-left:18px;border-left:0}
}

/* 2026-07-23 semantic UX balance: quiet structure, explicit business meaning. */
.app-shell{
  --blue:#111;--blue-soft:#f2f2f2;
  --green:#147a4a;--green-soft:#edf8f2;
  --red:#b42318;--red-soft:#fff1ef;
  --amber:#9a6700;--amber-soft:#fff7e6
}
.app-shell a{color:var(--blue)}
.app-shell .brand-mark{border-color:var(--blue)}
.app-shell .product-switch a.active{box-shadow:inset 0 -2px var(--blue);color:#111}
.app-shell .sidebar a.active{background:#eceef0;color:#111}
.app-shell .nav-count{background:var(--blue)}
.app-shell .nav-count.is-zero{background:#d0d5dd;color:#475467}
.app-shell .button,.app-shell button{border-radius:999px}
.app-shell .primary{border-color:var(--blue);background:var(--blue);color:#fff}
.app-shell .primary:hover{border-color:#333;background:#333;color:#fff}
.app-shell .danger{border-color:#e9aaa5;background:#fff;color:var(--red)}
.app-shell .danger:hover{border-color:#d8847d;background:var(--red-soft);color:#951b12}
.app-shell .text-button{color:var(--blue)}
.app-shell input:focus,.app-shell textarea:focus,.app-shell select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(17,17,17,.08)}
.app-shell .queue-tabs a.active,.app-shell .tabs a.active{box-shadow:inset 0 -2px var(--blue);color:var(--blue)}
.app-shell .status{
  gap:6px;padding:3px 8px;border-radius:4px;
  background:#f0f2f4!important;color:#58636f;font-weight:600
}
.app-shell .status::before{width:6px;height:6px;background:currentColor}
.app-shell .status.approved,.app-shell .status.pass,.app-shell .status.published,
.app-shell .status.completed,.app-shell .status.normal{
  background:var(--green-soft)!important;color:var(--green)
}
.app-shell .status.rejected,.app-shell .status.reject,.app-shell .status.analysis_failed,
.app-shell .status.guarded{
  background:var(--red-soft)!important;color:var(--red)
}
.app-shell .status.pending_review,.app-shell .status.manual,.app-shell .status.partially_reviewed,
.app-shell .status.consultation,.app-shell .status.pending,.app-shell .status.learning{
  background:var(--amber-soft)!important;color:var(--amber)
}
.app-shell .status.pending_bip,.app-shell .status.partially_added,
.app-shell .status.in_progress{
  background:var(--blue-soft)!important;color:var(--blue)
}
.app-shell .status.revision_planned,.app-shell .status.revising,
.app-shell .status.disabled,.app-shell .status.closed{
  background:#f0f2f4!important;color:#66717d
}
.app-shell .status.feedback-status.open{
  background:var(--blue-soft)!important;color:var(--blue)
}
.app-shell .status.feedback-status.in_progress{
  background:var(--blue-soft)!important;color:var(--blue)
}
.app-shell .status.feedback-status.awaiting_confirmation{
  background:#f5efff!important;
  color:#6b3fa0;
}
.app-shell .status.feedback-status.resolved{
  background:var(--green-soft)!important;color:var(--green)
}
.app-shell .status.feedback-status.wont_fix,
.app-shell .status.feedback-status.closed,
.app-shell .status.feedback-status.withdrawn{
  background:#f0f2f4!important;color:#667085
}
.app-shell .feedback-state-dot.open{border-color:var(--blue);background:var(--blue-soft)}
.app-shell .feedback-state-dot.in_progress{border-color:var(--blue);background:var(--blue-soft)}
.app-shell .feedback-state-dot.awaiting_confirmation{border-color:#7b4db1;background:#f5efff}
.app-shell .feedback-state-dot.resolved{border-color:var(--green);background:var(--green)}
.app-shell .feedback-state-dot.wont_fix,
.app-shell .feedback-state-dot.closed,
.app-shell .feedback-state-dot.withdrawn{border-color:#98a2b3;background:#98a2b3}
.app-shell .message.success{border-color:#b9dfca;background:var(--green-soft);color:#0f633b}
.app-shell .message.error{border-color:#edc0bc;background:var(--red-soft);color:#951b12}
.app-shell .message.notice{border-color:#c7d9f2;background:var(--blue-soft);color:#174f93}
.app-shell .config-warning{border-color:#ead3a0;background:var(--amber-soft);color:#765000}
.app-shell tbody tr:hover{background:#f6f9fd}
.app-shell .feedback-label.feature{border-color:#bfd4f1;background:var(--blue-soft);color:var(--blue)}
.app-shell .feedback-label.question{border-color:#ead3a0;background:var(--amber-soft);color:var(--amber)}

/* Dashboards: semantic color accelerates scanning without turning them into a decorative data wall. */
.app-shell .analytics-area{fill:#eaf2fd}
.app-shell .analytics-line{stroke:var(--blue)}
.app-shell .analytics-point{stroke:var(--blue)}
.app-shell .analytics-kpi strong,.app-shell .ai-effect-volume strong{color:#202124}
.app-shell .analytics-kpi.tone-blue strong,.app-shell .ai-effect-volume .tone-blue strong{color:var(--blue)}
.app-shell .analytics-kpi.tone-green strong,.app-shell .ai-effect-volume .tone-green strong{color:var(--green)}
.app-shell .analytics-kpi.tone-amber strong,.app-shell .ai-effect-volume .tone-amber strong{color:var(--amber)}
.app-shell .analytics-kpi.tone-red strong,.app-shell .ai-effect-volume .tone-red strong{color:var(--red)}
.app-shell .analytics-kpi b{color:var(--blue)}
.app-shell .analytics-kpi.tone-green b{color:var(--green)}
.app-shell .analytics-kpi.tone-amber b{color:var(--amber)}
.app-shell .analytics-kpi.tone-red b{color:var(--red)}
.app-shell .analytics-outcome-row small{color:#667085}
.app-shell .analytics-rank-row:nth-child(-n+3) .rank-number{background:var(--blue-soft);color:var(--blue)}
.app-shell .analytics-stage-strip>a:nth-child(1) strong{color:var(--amber)}
.app-shell .analytics-stage-strip>a:nth-child(2) strong{color:var(--blue)}
.app-shell .analytics-stage-strip>a.has-error strong{color:var(--red)}
.app-shell .manager-decision-counts span:nth-child(1){background:var(--green-soft);color:var(--green)}
.app-shell .manager-decision-counts span:nth-child(2){background:var(--red-soft);color:var(--red)}
.app-shell .manager-decision-counts span:nth-child(4){background:var(--amber-soft);color:var(--amber)}
.app-shell .manager-decision-counts span:nth-child(1) b,
.app-shell .manager-decision-counts span:nth-child(2) b,
.app-shell .manager-decision-counts span:nth-child(4) b{color:inherit}
.app-shell .ai-quality-summary{border-left-color:var(--green);background:var(--green-soft)}
.app-shell .ai-quality-summary.waiting{border-left-color:var(--amber);background:var(--amber-soft)}

/* 2026-07-23 navigation-state contract: active is blue, inactive is dark, hover previews blue. */
.app-shell .product-switch a,
.app-shell .sidebar a,
.app-shell .queue-tabs a,
.app-shell .tabs a,
.app-shell .feedback-status-strip a{
  color:#30343a
}
.app-shell .product-switch a:hover,
.app-shell .sidebar a:hover,
.app-shell .queue-tabs a:hover,
.app-shell .tabs a:hover,
.app-shell .feedback-status-strip a:hover{
  background:transparent;color:var(--blue)
}
.app-shell .product-switch a.active{
  box-shadow:inset 0 -2px var(--blue);color:var(--blue)
}
.app-shell .sidebar a.active{
  background:var(--blue-soft);color:var(--blue)
}
.app-shell .work-mode-switch button{
  color:#30343a
}
.app-shell .work-mode-switch button:hover{
  border-bottom-color:#d4d4d4;color:var(--blue)
}
.app-shell .work-mode-switch button.active,
.app-shell .work-mode-switch button.active:hover{
  border-bottom-color:var(--blue);color:var(--blue)
}
.app-shell .queue-tabs{
  gap:30px;margin-bottom:18px;padding:0;
  border:0;border-bottom:1px solid var(--line);border-radius:0;
  background:transparent;white-space:nowrap
}
.app-shell .queue-tabs a{
  padding:11px 0 12px
}
.app-shell .queue-tabs a.active,
.app-shell .tabs a.active{
  box-shadow:inset 0 -2px var(--blue);background:transparent;color:var(--blue)
}
.app-shell .feedback-status-strip{
  border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent
}
.app-shell .feedback-status-strip a.active{
  box-shadow:inset 0 -2px var(--blue);background:transparent;color:var(--blue)
}
.app-shell .application-step-rail a.current,
.app-shell .rule-guide-toc nav a.active,
.app-shell .rule-outline button.active,
.app-shell .rule-stepper button.active{
  background:var(--blue-soft);color:var(--blue)
}
.app-shell .feedback-category-option input:checked+span{
  border-color:#9ebfe9;background:var(--blue-soft);color:var(--blue)
}
@media(max-width:780px){
  .app-shell .queue-tabs{gap:22px}
}

/* 2026-07-23 control contract: quiet secondary actions, one clear primary action. */
.app-shell{
  --control-radius:8px
}
.app-shell .button,
.app-shell button{
  border-radius:var(--control-radius);
  background:#fff
}
.app-shell .button:hover,
.app-shell button:hover{
  background:#f7f7f7
}
.app-shell .primary{
  border-color:var(--blue);
  background:var(--blue);
  color:#fff
}
.app-shell .primary:hover{
  border-color:#333;
  background:#333;
  color:#fff
}
.app-shell .danger{
  border-color:#e9aaa5;
  background:#fff;
  color:var(--red)
}
.app-shell .danger:hover{
  border-color:#d8847d;
  background:var(--red-soft);
  color:#951b12
}
.app-shell .app-back-button,
.app-shell .work-mode-switch button,
.app-shell .queue-tabs a,
.app-shell .tabs a,
.app-shell .feedback-status-strip a,
.app-shell .application-step-rail a,
.app-shell .rule-guide-toc nav a,
.app-shell .rule-outline button,
.app-shell .rule-stepper button{
  border-radius:0;
  background:transparent
}
.app-shell .mode-tabs,
.app-shell .entry-mode-tabs{
  gap:22px;
  border-bottom:1px solid var(--line)
}
.app-shell .mode-tabs button,
.app-shell .entry-mode-tabs button{
  min-height:38px;
  padding:8px 0 9px;
  border:0;
  border-bottom:2px solid transparent;
  border-radius:0;
  background:transparent;
  color:#30343a
}
.app-shell .mode-tabs button:hover,
.app-shell .entry-mode-tabs button:hover{
  border:0;
  border-bottom:2px solid #d4d4d4;
  border-radius:0;
  background:transparent;
  color:var(--blue)
}
.app-shell .mode-tabs button.active,
.app-shell .entry-mode-tabs button.active{
  border:0;
  border-bottom:2px solid var(--blue);
  border-radius:0;
  background:transparent;
  color:var(--blue)
}
.app-shell .icon-button{
  border-radius:var(--control-radius)
}
.brand .brand-mark,
.app-shell .brand-mark{
  border-color:#111;
  background:transparent
}
.brand>span:last-child{
  color:#111
}

/* 2026-07-23 color hierarchy: neutral content, color only for state and emphasis. */
.app-shell a{
  color:#171717
}
.app-shell a:hover,
.app-shell a:focus-visible{
  color:var(--blue)
}
.app-shell .topbar-actions a,
.app-shell .back-link,
.app-shell td a,
.app-shell .text-button{
  color:#30343a
}
.app-shell .topbar-actions a:hover,
.app-shell .back-link:hover,
.app-shell td a:hover,
.app-shell .text-button:hover{
  color:var(--blue)
}

/* Question assignment and DingTalk Todo: compact, explicit, and action-first. */
.question-assignment-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 20px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.question-assignment-bar>div:first-child{display:grid;gap:3px}.question-assignment-bar span,.question-assignment-bar small{color:var(--muted)}.question-assignment-actions,.question-assignment-actions form{display:flex;align-items:center;gap:8px}.question-inline-assign select{min-width:150px}
.question-management-panel h2{margin:0 0 12px;font-size:16px}.question-management-panel details{margin-bottom:16px;border-bottom:1px solid var(--line)}.question-management-panel summary{padding:8px 0 12px;cursor:pointer;font-weight:650}.question-management-panel details form{display:grid;gap:9px;padding:0 0 16px}.question-direct-transfer,.question-todo-check{display:flex!important;align-items:flex-start;gap:8px;color:var(--muted);font-size:12px}.question-direct-transfer input,.question-todo-check input{width:16px;height:16px;margin-top:2px}.question-resolution-form{display:grid;gap:10px}.question-resolution-form textarea{resize:vertical}.question-todo-sync{display:block;margin-top:12px;color:var(--muted)}
.question-task-page{max-width:1180px;margin:0 auto}.question-task-tabs{display:flex;align-items:center;gap:24px;margin:18px 0 0;border-bottom:1px solid var(--line);overflow:auto}.question-task-tabs a{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:2px solid transparent;color:#4f5967;white-space:nowrap}.question-task-tabs a.active{border-bottom-color:var(--blue);color:var(--blue)}.question-task-tabs b{font:600 11px var(--mono)}
.question-task-list{display:grid}.question-task-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.question-task-main{display:grid;gap:5px;color:var(--text)}.question-task-main strong{font-size:15px}.question-task-main span,.question-task-owner{color:var(--muted);font-size:12px}.question-task-actions,.question-task-actions form{display:flex;align-items:center;gap:7px}.question-task-actions .button,.question-task-actions button{min-height:34px;padding:6px 11px}
@media(max-width:760px){.question-assignment-bar{align-items:flex-start;flex-direction:column}.question-assignment-actions,.question-assignment-actions form{align-items:stretch;flex-direction:column;width:100%}.question-assignment-actions select,.question-assignment-actions button{width:100%}.question-task-list>article{grid-template-columns:1fr;gap:9px}.question-task-actions{justify-content:flex-start}}
.app-shell .financial-rule-row,
.app-shell .financial-rule-row h2,
.app-shell .feedback-row,
.app-shell .feedback-row-title strong,
.app-shell .notification-row,
.app-shell .analytics-outcome-row{
  color:#171717
}
.app-shell .financial-rule-category{
  border:0;
  background:#f0f2f4;
  color:#58636f
}
.app-shell .button{
  color:#171717
}
.app-shell .button:hover{
  color:#171717
}
.app-shell .primary,
.app-shell .primary:hover{
  color:#fff
}
.app-shell .danger,
.app-shell .danger:hover{
  color:var(--red)
}

/* Approval rejection stays inside the current business page. */
.reject-reason-dialog{
  width:min(520px,calc(100vw - 32px));
  max-width:none;
  margin:auto;
  padding:0;
  overflow:hidden;
  border:1px solid #d9dde3;
  border-radius:10px;
  background:#fff;
  color:var(--text);
  box-shadow:0 18px 48px rgba(31,35,41,.18)
}
.reject-reason-dialog::backdrop{
  background:rgba(31,35,41,.34)
}
.reject-reason-dialog-form{
  display:grid;
  margin:0
}
.reject-reason-dialog header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:22px 24px 17px;
  border-bottom:1px solid var(--line);
  background:#fff
}
.reject-reason-dialog h2{
  margin:0 0 5px;
  font-size:20px;
  line-height:1.35
}
.reject-reason-dialog header p{
  margin:0;
  color:var(--muted);
  font-size:13px
}
.reject-dialog-close{
  flex:0 0 auto;
  min-width:34px!important;
  width:34px;
  height:34px;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#667085;
  font-size:25px;
  font-weight:400;
  line-height:1
}
.reject-dialog-close:hover{
  background:#f3f4f6!important;
  color:#1f2329
}
.reject-reason-dialog-body{
  display:grid;
  gap:8px;
  padding:20px 24px 22px;
  background:#fff
}
.reject-reason-dialog-body label{
  font-weight:650
}
.reject-reason-dialog-body textarea{
  min-height:126px;
  resize:vertical;
  background:#fff
}
.reject-reason-dialog-body small{
  color:var(--muted)
}
.reject-reason-error{
  margin:2px 0 0;
  color:var(--red);
  font-size:12px
}
.reject-reason-dialog footer{
  display:flex;
  justify-content:flex-end;
  gap:9px;
  padding:15px 24px;
  border-top:1px solid var(--line);
  background:#fff
}
.app-shell .confirm-reject{
  border-color:var(--red);
  background:var(--red);
  color:#fff
}
.app-shell .confirm-reject:hover{
  border-color:#a5261d;
  background:#a5261d;
  color:#fff
}
@media(max-width:560px){
  .reject-reason-dialog{width:calc(100vw - 20px)}
  .reject-reason-dialog header,.reject-reason-dialog-body,.reject-reason-dialog footer{padding-left:17px;padding-right:17px}
  .reject-reason-dialog footer>*{flex:1}
}

/* Current-node approval reminder: compact, neutral and intentionally secondary. */
.batch-urge-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 15px;
  margin-bottom:14px
}
.batch-urge-copy{
  display:grid;
  gap:3px
}
.batch-urge-copy strong{
  font-size:13px
}
.batch-urge-copy small{
  color:var(--muted);
  font-size:11px
}
.approval-urge-form{
  flex:0 0 auto;
  margin:0
}
.dt-urge{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 13px;
  margin-bottom:12px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff
}
.dt-urge>div{
  display:grid;
  gap:2px
}
.dt-urge strong{
  font-size:13px
}
.dt-urge small{
  color:var(--muted);
  font-size:11px
}
.dt-urge form{
  margin:0
}
@media(max-width:620px){
  .batch-urge-bar{
    align-items:flex-start;
    flex-direction:column
  }
  .approval-urge-form,
  .approval-urge-form button{
    width:100%
  }
}

/* Platform knowledge community: editorial information flow, not dashboard cards. */
.community-page,.community-compose-page,.community-detail-page{max-width:1180px;margin:0 auto}
.community-title{margin-bottom:24px}
.app-shell .community-title .community-ask-button{display:inline-flex;align-items:center;justify-content:center;min-width:96px;min-height:44px;padding:0 22px;border-color:var(--blue);border-radius:8px;background:var(--blue);color:#fff;font-size:14px;font-weight:700}
.app-shell .community-title .community-ask-button:hover{border-color:#125ab3;background:#125ab3;color:#fff}
.community-search{display:grid;grid-template-columns:minmax(320px,1.6fr) 170px 150px auto;gap:10px;align-items:end;padding:0 0 22px;border-bottom:1px solid var(--line)}
.community-search label,.community-compose>label{display:grid;gap:7px;color:#555f6d;font-size:12px}
.community-search-main label{color:var(--text);font-size:15px;font-weight:650}
.community-search input,.community-search select,.community-compose input,.community-compose select,.community-compose textarea{border-color:#d8dde5;background:#fff}
.community-view-tabs{display:flex;gap:24px;margin:18px 0 4px;border-bottom:1px solid var(--line)}
.community-view-tabs a{padding:10px 0;border-bottom:2px solid transparent;color:#444b55;font-weight:600}
.community-view-tabs a.active{border-bottom-color:var(--blue);color:var(--blue)}
.community-status-tabs{display:flex;gap:22px;padding:10px 0 2px}
.community-status-tabs a{display:inline-flex;align-items:baseline;gap:5px;color:#727b88;font-size:13px}
.community-status-tabs a:hover{color:#111}
.community-status-tabs a.active{color:#111;font-weight:650}
.community-status-count{color:#a4acb8;font-size:12px}
.community-list{border-top:0}
.community-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px 2px;border-bottom:1px solid var(--line);color:inherit}
.community-row:hover .community-row-title strong{color:var(--blue)}
.community-row-body{display:grid;gap:8px;min-width:0}
.community-row-title{display:flex;align-items:center;gap:9px;min-width:0}
.community-row-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.community-row-title code{color:#929aa6;font-size:11px}
.community-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;color:#727b88;font-size:11px}
.community-row-meta .community-topic-label,.community-row-meta .community-meta-label{color:#98a2b3}
.community-row-meta .community-topic-chip{padding:2px 7px;border:1px solid #d8dde5;border-radius:5px;background:#f8f9fb;color:#475467;line-height:1.5}
.community-intent-chip{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border:1px solid;border-radius:4px;font-size:11px;font-weight:650;line-height:1.4}
.community-intent-chip.question{border-color:#bfd5f6;background:#f2f7ff;color:#1759a6}
.community-intent-chip.suggestion,.community-intent-chip.feature{border-color:#bfe2d2;background:#f0faf5;color:#157452}
.community-intent-chip.optimization{border-color:#ead39c;background:#fff9e9;color:#8a5a00}
.community-intent-chip.correction,.community-intent-chip.bug{border-color:#efc1bc;background:#fff3f1;color:#b42318}
.community-replies{color:#737c88;font-size:11px;white-space:nowrap}
.community-compose{display:grid;gap:22px;max-width:860px;padding:26px 0}
.community-type-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0;border:0}
.community-type-picker legend{grid-column:1/-1;margin-bottom:2px;font-size:15px;font-weight:650}
.community-type-picker label{display:block;cursor:pointer}
.community-type-picker input{position:absolute;opacity:0;pointer-events:none}
.community-type-picker span{display:grid;gap:4px;min-height:82px;padding:15px;border:1px solid var(--line);border-radius:8px;background:#fff}
.community-type-picker small{color:var(--muted);font-size:11px;font-weight:400}
.community-type-picker input:checked+span{border-color:#8db6f1;box-shadow:inset 0 0 0 1px #8db6f1}
.community-similar{padding:15px 0;border-top:1px solid #e8ebef;border-bottom:1px solid #e8ebef}
.community-similar>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}
.community-similar>div:first-child span{color:var(--muted);font-size:11px}
.community-similar [data-similar-results]{display:grid}
.community-similar a{display:grid;gap:3px;padding:9px 0;border-top:1px solid #eff1f4;color:inherit}
.community-similar a:first-child{border-top:0}
.community-similar a:hover strong{color:var(--blue)}
.community-similar small{color:var(--muted)}
.community-topic-preview{display:grid;gap:10px;padding:14px 0;border-top:1px solid #e8ebef}
.community-topic-preview>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.community-topic-preview>div:first-child span{color:var(--muted);font-size:12px}
.community-tag-list{display:flex;flex-wrap:wrap;gap:8px}
.community-tag-list span{display:inline-flex;padding:4px 9px;border:1px solid #d9dee7;border-radius:6px;background:#f7f8fa;color:#344054;font-size:12px;line-height:1.5}
.community-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:8px;border-top:1px solid var(--line)}
.community-compose-actions p{margin:0;color:var(--muted);font-size:12px}
.community-detail-meta{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px}
.community-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:34px;align-items:start}
.community-thread{display:grid;gap:0}
.community-post{padding:24px 0;border-bottom:1px solid var(--line)}
.community-post header{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.community-post header>div:nth-child(2){display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.community-post header small{flex-basis:100%;color:var(--muted)}
.community-post header form{margin-left:auto}
.community-post.accepted-answer{border-left:3px solid var(--green);padding-left:18px}
.accepted-answer-label{display:inline-flex;padding:2px 6px;border-radius:4px;background:var(--green-soft);color:var(--green);font-size:11px;font-weight:650}
.community-reply{display:grid;gap:12px;padding:24px 0}
.community-reply label{display:grid;gap:8px}
.community-reply>div{display:flex;align-items:center;justify-content:space-between;gap:18px}
.community-reply small{color:var(--muted)}
.question-reply-help{margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.community-reply>.question-reply-actions{justify-content:flex-end}
.question-reply-actions button{min-width:138px}
.question-paste-label{display:grid;gap:8px}
.question-image-input{overflow:hidden;border:1px solid #d8dde5;border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s}
.question-image-input:focus-within{border-color:#111;box-shadow:0 0 0 3px rgba(23,105,210,.11)}
.question-image-input textarea{display:block;width:100%;min-height:130px;padding:13px 14px;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;resize:vertical}
.question-image-input>small{display:block;padding:0 14px 11px;color:#8a94a3;font-size:11px;font-weight:400}
.question-image-previews{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 10px}
.question-image-previews[hidden]{display:none}
.question-image-previews figure{position:relative;width:92px;height:68px;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#f5f6f8}
.question-image-previews img{display:block;width:100%;height:100%;object-fit:cover}
.question-image-previews button{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:22px!important;min-width:22px;height:22px;padding:0;border:0;border-radius:5px;background:rgba(17,17,17,.72);color:#fff;font-size:16px;line-height:1}
.question-post-images{display:flex;flex-wrap:wrap;gap:10px;padding:0 0 18px}
.question-post-images a{display:block;width:min(220px,48%);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#f5f6f8}
.question-post-images img{display:block;width:100%;height:150px;object-fit:cover;transition:transform .18s}
.question-post-images a:hover img{transform:scale(1.015)}
body.lightbox-open{overflow:hidden}
.question-lightbox[hidden]{display:none}
.question-lightbox{position:fixed;z-index:250;inset:0;background:rgba(12,14,17,.94);color:#fff;user-select:none}
.question-lightbox-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:auto;padding:72px 88px 92px;cursor:zoom-out}
.question-lightbox-stage img{display:block;max-width:100%;max-height:100%;object-fit:contain;transform-origin:center;transition:transform .16s ease;cursor:default}
.question-lightbox-stage.is-zoomed{align-items:flex-start;justify-content:flex-start;cursor:grab}
.question-lightbox-stage.is-zoomed img{max-width:none;max-height:none;margin:auto}
.question-lightbox.is-loading .question-lightbox-stage::after{content:"";position:absolute;top:50%;left:50%;width:28px;height:28px;margin:-14px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:lightbox-spin .7s linear infinite}
@keyframes lightbox-spin{to{transform:rotate(360deg)}}
.question-lightbox button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(28,31,36,.76);color:#fff;box-shadow:none;backdrop-filter:blur(10px)}
.question-lightbox button:hover{border-color:rgba(255,255,255,.5);background:rgba(45,49,55,.92);color:#fff}
.question-lightbox button:focus-visible{outline:3px solid rgba(23,105,210,.6);outline-offset:2px}
.question-lightbox button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.question-lightbox-close{position:absolute;z-index:2;top:20px;right:22px}
.question-lightbox-nav{position:absolute;z-index:2;top:50%;transform:translateY(-50%)}
.question-lightbox-nav.previous{left:22px}.question-lightbox-nav.next{right:22px}
.question-lightbox-toolbar{position:absolute;z-index:2;right:22px;bottom:20px;left:22px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:48px;padding:6px 8px 6px 14px;border:1px solid rgba(255,255,255,.14);border-radius:9px;background:rgba(28,31,36,.76);backdrop-filter:blur(12px)}
.question-lightbox-toolbar>span:first-child{color:#fff;font:600 11px var(--mono);white-space:nowrap}
.question-lightbox-toolbar>span:nth-child(2){overflow:hidden;color:#d9dde3;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.question-lightbox-toolbar>div{display:flex;gap:5px}
.question-lightbox-toolbar button{width:34px;height:34px;border-color:transparent;background:transparent}
.question-lightbox-toolbar [data-lightbox-reset]{display:block;width:54px;font:600 10px var(--mono)}
.community-detail-side{position:sticky;top:86px;display:grid;gap:0;border-top:1px solid var(--line)}
.community-detail-side section{padding:18px 0;border-bottom:1px solid var(--line)}
.community-detail-side section>span{color:var(--muted);font-size:11px}
.community-detail-side section>strong{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:16px}
.community-detail-side form{display:grid;gap:10px;margin-top:15px}
.community-detail-side label{display:grid;gap:6px}
.question-detail-page{max-width:1240px}
.question-detail-layout{grid-template-columns:minmax(0,1fr) 340px}
.question-work-panel{top:78px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.question-work-panel>section{padding:20px;border-bottom:1px solid var(--line)}
.question-work-panel>section:last-of-type{border-bottom:0}
.question-work-summary{display:grid;gap:16px;background:#fafbfc}
.question-work-summary>div{display:grid;gap:5px}
.question-work-summary span,.question-resolution-result>span{color:var(--muted);font-size:11px}
.question-work-summary strong{margin:0!important;font-size:16px!important}
.question-work-summary p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.question-work-summary>small{padding-top:12px;border-top:1px solid var(--line);color:var(--muted)}
.question-primary-actions{display:grid;gap:14px}
.question-primary-actions h2{margin:0;font-size:17px}
.question-primary-actions form{margin:0}
.question-primary-actions label{color:#344054;font-size:12px;font-weight:650}
.question-primary-actions textarea{min-height:150px;resize:vertical}
.question-transfer-decision{grid-template-columns:1fr 1fr}
.question-owner-note{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.question-resolution-result p{margin:10px 0 0;white-space:pre-wrap;line-height:1.75}
.question-resolution-result form{margin-top:14px}
.question-confirmation-reminder{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin-top:14px;color:var(--green);font-size:12px}
.question-confirmation-reminder span{font-weight:650}
.question-confirmation-reminder small{color:inherit}
.question-confirmation-reminder.sending,.question-confirmation-reminder.retry{color:var(--amber)}
.question-confirmation-reminder.failed{color:var(--red)}
.question-confirmation-disabled{margin-top:10px;background:#f5f6f8;color:#667085;opacity:1}
.question-resolution-confirmation{display:grid;gap:14px;background:#fffdf8}
.question-resolution-confirmation>span{color:var(--muted);font-size:11px}
.question-resolution-confirmation>p{max-height:180px;margin:0;overflow:auto;white-space:pre-wrap;line-height:1.75}
.question-resolution-prompt{display:grid;gap:4px;padding-top:14px;border-top:1px solid var(--line)}
.question-resolution-prompt strong{font-size:16px}
.question-resolution-prompt small{color:var(--muted);line-height:1.55}
.question-resolution-confirmation>form{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);margin:0}
.question-reopen-edit{width:100%;justify-content:center}
.feedback-title-actions form{display:inline-flex;margin:0}
.feedback-title-actions form button{margin:0}
.question-existing-images{display:grid;gap:10px}
.question-existing-images>strong{font-size:13px}
.question-more-management{border-top:1px solid var(--line)}
.question-more-management>summary{padding:16px 20px;cursor:pointer;color:#475467;font-size:13px;font-weight:650;list-style:none}
.question-more-management>summary::-webkit-details-marker{display:none}
.question-more-management>summary::after{content:"＋";float:right;color:#98a2b3;font-size:16px;font-weight:400}
.question-more-management[open]>summary::after{content:"－"}
.question-more-management>div{display:grid;gap:20px;padding:2px 20px 20px}
.question-more-management form{display:grid;gap:10px;margin:0;padding-top:18px;border-top:1px solid var(--line)}
.question-more-management label{display:grid;gap:6px;color:#475467;font-size:12px}
.question-more-management .community-tag-editor{margin:0}
.question-todo-sync{display:block;padding:12px 20px;border-top:1px solid var(--line);color:var(--muted);background:#fafbfc}
.question-progress-panel{display:grid;gap:16px;background:#fff}
.question-progress-panel>header>div{display:grid;gap:5px}
.question-progress-panel>header span{color:var(--muted);font-size:11px}
.question-progress-panel>header strong{font-size:17px}
.question-progress-steps{display:grid;gap:0;margin:0;padding:0;list-style:none}
.question-progress-steps li{position:relative;display:grid;grid-template-columns:16px minmax(0,1fr);gap:9px;min-height:45px;margin:0;padding:0 0 12px}
.question-progress-steps li:not(:last-child)::after{content:"";position:absolute;top:13px;bottom:-1px;left:5px;width:1px;background:#dfe3e8}
.question-progress-steps i{position:relative;z-index:1;width:11px;height:11px;margin-top:2px;border:2px solid #c7cdd6;border-radius:50%;background:#fff}
.question-progress-steps li.done i{border-color:var(--green);background:var(--green)}
.question-progress-steps li.current i{border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,105,210,.12)}
.question-progress-steps li>div{display:grid;gap:3px}
.question-progress-steps strong{font-size:12px;font-weight:650}
.question-progress-steps span{color:var(--muted);font-size:10px}
.question-urge-form{display:grid!important;gap:7px!important;margin:0!important;padding-top:14px;border-top:1px solid var(--line)}
.question-urge-form button{width:100%;border-color:#d7dce3;background:#fff;color:#171717}
.question-urge-form button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}
.question-urge-form button:disabled{background:#f5f6f8;color:#98a2b3}
.question-urge-form small{color:var(--muted);font-size:10px;line-height:1.5}
.community-source-note p{color:#606975;font-size:12px;line-height:1.7}
.community-tag-editor{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0;padding:0;border:0}
.community-tag-editor legend{width:100%;margin-bottom:4px;font-weight:600}
.community-tag-editor label{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:500}
.community-tag-editor input{width:16px;height:16px;margin:0}
.community-intent-editor{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0;padding:0;border:0}
.community-intent-editor legend{grid-column:1/-1;margin-bottom:3px;font-weight:600}
.community-intent-editor legend small{margin-left:7px;color:var(--muted);font-size:10px;font-weight:400}
.community-intent-editor label{display:flex!important;align-items:center;gap:7px!important;min-height:34px;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}
.community-intent-editor input{width:15px;height:15px;margin:0;accent-color:#111}
.community-analytics{max-width:1180px;margin:0 auto}
.community-analytics-filter{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 22px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.community-analytics-filter label{display:grid;gap:7px;color:#667085;font-size:12px}
.community-analytics-filter select{min-width:150px}
.community-stat-strip{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.community-stat{display:grid;gap:5px;padding:18px 20px;border-right:1px solid var(--line)}
.community-stat:last-child{border-right:0}.community-stat span{color:#667085;font-size:12px}.community-stat strong{font-size:27px;letter-spacing:-.04em}.community-stat small{color:#98a2b3;font-size:11px}
.community-analytics-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,.7fr);gap:32px;margin-bottom:34px}
.community-analytics-section{min-width:0}.community-analytics-section>header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}.community-analytics-section h2{margin:0;font-size:18px}.community-analytics-section header small{color:#98a2b3}
.community-mini-trend{display:flex;align-items:end;gap:8px;height:220px;padding:20px 6px 0;border-bottom:1px solid var(--line)}
.community-trend-day{display:grid;grid-template-rows:1fr auto auto;align-items:end;gap:6px;width:100%;height:100%;text-align:center}.community-trend-day i{display:block;width:min(24px,75%);height:max(3px,var(--trend-height));margin:auto auto 0;border-radius:3px 3px 0 0;background:#111}.community-trend-day b{font:600 10px var(--mono)}.community-trend-day span{color:#98a2b3;font:9px var(--mono)}
.community-ranking{border-top:1px solid var(--line)}.community-ranking-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.community-ranking-row>div{display:grid;gap:6px}.community-ranking-row strong{font-size:13px}.community-ranking-row b{font:650 12px var(--mono)}.community-ranking-bar{height:4px;overflow:hidden;border-radius:2px;background:#edf0f4}.community-ranking-bar i{display:block;height:100%;background:#111}
.community-people-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}.community-empty-note{padding:28px 0;color:#98a2b3;text-align:center}
.community-intent-distribution{margin:0 0 34px}
.community-intent-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.community-intent-stats>a{display:grid;grid-template-columns:1fr auto;gap:9px;padding:15px 16px;border-right:1px solid var(--line);color:inherit}
.community-intent-stats>a:last-child{border-right:0}.community-intent-stats>a>strong{font:650 17px var(--mono)}
.community-intent-stats>a>i{grid-column:1/-1;height:3px;overflow:hidden;background:#edf0f4}.community-intent-stats>a>i>b{display:block;height:100%;background:#687386}
@media(max-width:980px){
  .community-search{grid-template-columns:1fr 1fr}.community-search-main{grid-column:1/-1}
  .community-search button{width:100%}
  .community-detail-layout,.question-detail-layout{grid-template-columns:1fr}.community-detail-side{position:static;grid-row:1}
  .community-stat-strip{grid-template-columns:repeat(3,1fr)}.community-stat:nth-child(3){border-right:0}.community-stat:nth-child(-n+3){border-bottom:1px solid var(--line)}
  .community-analytics-grid{grid-template-columns:1fr}
  .community-intent-stats{grid-template-columns:1fr 1fr}.community-intent-stats>a:nth-child(2){border-right:0}.community-intent-stats>a:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:680px){
  .community-search,.community-type-picker{grid-template-columns:1fr}
  .community-row{grid-template-columns:12px minmax(0,1fr)}.community-replies{grid-column:2}
  .community-compose-actions,.community-reply>div{align-items:stretch;flex-direction:column}
  .community-compose-actions button,.community-reply button{width:100%}
  .question-image-previews button{width:22px}
  .question-post-images a{width:100%}.question-post-images img{height:auto;max-height:280px}
  .question-lightbox-stage{padding:64px 12px 88px}
  .question-lightbox-nav{top:auto;bottom:22px;transform:none}
  .question-lightbox-nav.previous{left:14px}.question-lightbox-nav.next{right:14px}
  .question-lightbox-close{top:14px;right:14px}
  .question-lightbox-toolbar{right:65px;bottom:22px;left:65px;grid-template-columns:auto minmax(0,1fr);min-height:42px;padding:4px 8px}
  .question-lightbox-toolbar>span:nth-child(2){display:none}
  .question-lightbox-toolbar>div{display:none}
  .community-analytics-filter{align-items:stretch;flex-direction:column}.community-analytics-filter label,.community-analytics-filter select{width:100%}
  .community-stat-strip{grid-template-columns:1fr 1fr}.community-stat:nth-child(3){border-right:1px solid var(--line)}.community-stat:nth-child(even){border-right:0}.community-stat{border-bottom:1px solid var(--line)}.community-stat:last-child{grid-column:1/-1;border-right:0;border-bottom:0}
  .community-mini-trend{gap:3px;overflow-x:auto}.community-trend-day{min-width:28px}.community-people-grid{grid-template-columns:1fr}
}

.qa-input-surface{overflow:hidden;border:1px solid #d8dde5;border-radius:8px;background:#fff}
.qa-input-surface:focus-within{border-color:#111;box-shadow:0 0 0 3px rgba(23,105,210,.11)}
.qa-input-surface textarea{display:block;width:100%;padding:11px 12px 6px;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important}
.qa-input-surface>small{display:block;padding:0 12px 8px;color:#8a94a3;font-size:10px}
.qa-input-surface .qa-attachment{margin:0 10px 8px}

/* Unified semantic search: one compact entry shared by rules, Q&A and AI. */
.app-shell .topbar{gap:18px}
.app-shell .topbar-leading{flex:0 1 auto}
.global-tools{position:relative;display:flex;align-items:center;gap:8px;flex:1 1 460px;max-width:660px;min-width:260px;margin:0 auto}
.global-search{position:relative;display:flex;align-items:center;min-width:0;flex:1}
.global-search>svg{position:absolute;z-index:1;left:12px;width:17px;height:17px;fill:none;stroke:#697386;stroke-width:1.8;pointer-events:none}
.global-search input{width:100%;height:44px;padding:8px 40px;border:1px solid #d9dde3;border-radius:9px;background:#f7f7f8;color:#171717;font-size:14px;outline:none}
.global-search input:focus{border-color:#9cbbe7;background:#fff;box-shadow:0 0 0 3px rgba(23,105,210,.10)}
.app-shell .global-ask-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-width:104px;height:44px;padding:0 18px;border:1px solid var(--blue);border-radius:999px;background:var(--blue);color:#fff;font-size:14px;font-weight:700;cursor:pointer;box-shadow:none;white-space:nowrap}
.global-ask-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.app-shell .global-ask-button:hover{border-color:#333;background:#333;color:#fff}
.global-ask-button:focus-visible{outline:3px solid rgba(17,17,17,.15);outline-offset:2px}
.global-search-results{position:absolute;z-index:80;top:calc(100% + 8px);left:0;width:min(660px,calc(100vw - 28px));max-height:min(560px,70vh);overflow:auto;padding:6px;border:1px solid #dfe3e8;border-radius:10px;background:#fff;box-shadow:0 18px 50px rgba(21,31,45,.16)}
.global-search-result{display:grid;gap:5px;padding:12px;border-radius:7px;color:#171717}
.global-search-result:hover{background:#f4f6f8}
.global-search-result>div{display:flex;align-items:center;gap:8px;min-width:0}
.global-search-result strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.global-search-result-label{flex:0 0 auto;color:#667085;font-size:10px;font-weight:600}
.global-search-result small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#667085;font-size:10px}
.global-search-result p{display:-webkit-box;overflow:hidden;margin:0;color:#475467;font-size:11px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.global-search-highlight,.search-destination-highlight{padding:0 .08em;border-radius:2px;background:#fff1a8;color:#171717;font-weight:inherit}
.search-destination{animation:search-destination-pulse 2.6s ease-out}
@keyframes search-destination-pulse{0%,22%{background:#fff9d9;box-shadow:0 0 0 5px #fff9d9}100%{background:transparent;box-shadow:0 0 0 5px transparent}}
.global-search-message{padding:18px;color:#667085;text-align:center;font-size:12px}
.global-search-message.error{color:var(--red)}
.global-search-message.loading{color:#475467}
[id]{scroll-margin-top:88px}

.semantic-index-page{max-width:1180px;margin:0 auto}
.semantic-index-summary{display:grid;grid-template-columns:repeat(4,1fr);margin:20px 0 28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.semantic-index-summary>div{display:grid;gap:5px;padding:18px 20px;border-right:1px solid var(--line)}
.semantic-index-summary>div:last-child{border-right:0}
.semantic-index-summary span{color:var(--muted);font-size:12px}
.semantic-index-summary strong{font:650 28px var(--mono)}
.semantic-index-summary .metric-warning{color:var(--orange)}
.semantic-index-summary .metric-error{color:var(--red)}
.semantic-index-table{overflow:hidden}
.semantic-index-table>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid var(--line)}
.semantic-index-table>header>div{display:grid;gap:3px}
.semantic-index-table>header span{color:var(--muted);font-size:11px}
.semantic-index-table table{width:100%;border-collapse:collapse}
.semantic-index-table th,.semantic-index-table td{padding:13px 18px;border-bottom:1px solid var(--line);text-align:left}
.semantic-index-table th{background:#f7f8fa;color:#667085;font-size:11px}
.semantic-index-table tbody tr:last-child td{border-bottom:0}

@media(max-width:1100px){
  .global-tools{flex-basis:320px;min-width:220px}
  .global-ask-button{min-width:94px;padding:0 13px}
}
@media(max-width:820px){
  :root{--topbar:116px}
  .app-shell .topbar{height:var(--topbar);align-content:center;flex-wrap:wrap;gap:0 10px;padding:7px 14px}
  .app-shell .topbar-leading{height:46px;flex:1 1 auto}
  .app-shell .topbar-actions{height:46px}
  .global-tools{order:3;flex:0 0 100%;max-width:none;min-width:0;margin:0}
  .global-search-results{width:100%}
  [id]{scroll-margin-top:132px}
}
@media(max-width:620px){
  .app-shell .product-switch{gap:9px;margin-left:7px;padding-left:7px;overflow-x:auto}
  .app-shell .product-switch a{white-space:nowrap;font-size:11px}
  .global-ask-button{min-width:90px;padding:0 12px}
  .semantic-index-summary{grid-template-columns:1fr 1fr}
  .semantic-index-summary>div:nth-child(2){border-right:0}
  .semantic-index-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .semantic-index-table{overflow-x:auto}
  .semantic-index-table table{min-width:620px}
}

/* Mobile application header: navigation and global tools use separate rows. */
@media(max-width:820px){
  :root{--topbar:108px}
  .app-shell .topbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:46px 48px;
    align-items:center;
    align-content:center;
    height:var(--topbar);
    padding:7px 12px;
    gap:0 8px;
  }
  .app-shell .topbar-leading{
    grid-column:1;
    grid-row:1;
    display:flex;
    min-width:0;
    height:46px;
    overflow:hidden;
  }
  .app-shell .topbar-leading .product-switch{
    flex:1 1 auto;
    min-width:0;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .app-shell .topbar-leading .product-switch::-webkit-scrollbar{display:none}
  .app-shell .topbar-actions{
    grid-column:2;
    grid-row:1;
    height:46px;
    gap:8px;
    white-space:nowrap;
  }
  .app-shell .global-tools{
    grid-column:1/-1;
    grid-row:2;
    order:initial;
    width:100%;
    height:44px;
    max-width:none;
    min-width:0;
    margin:0;
    gap:7px;
  }
  .app-shell .global-search input{height:42px;padding-right:34px}
  .app-shell .global-ask-button{height:42px;min-width:88px;padding:0 12px}
  .app-shell .sidebar{top:var(--topbar)}
  .app-shell .content{padding:calc(var(--topbar) + 58px) 12px 48px}
  .global-search-results{top:calc(100% + 5px);width:100%;max-height:58vh}
  [id]{scroll-margin-top:calc(var(--topbar) + 18px)}
}

@media(max-width:480px){
  .app-shell .topbar{padding-left:10px;padding-right:10px}
  .app-shell .topbar-leading{gap:7px}
  .app-shell .topbar-leading .product-switch{gap:12px;margin-left:4px;padding-left:7px}
  .app-shell .topbar-leading .product-switch a{font-size:12px}
  .app-shell .topbar-actions{font-size:12px}
  .app-shell .global-search input{font-size:13px}
  .app-shell .global-ask-button{min-width:82px;padding:0 10px;font-size:13px}
}

.users-page-title{align-items:flex-start}
.users-page-actions{display:grid;justify-items:end;gap:8px}
.users-page-buttons{display:flex;align-items:center;gap:10px}
.users-page-buttons form{margin:0}
.users-last-sync{color:var(--muted);font-size:12px;line-height:1.4}
.unsigned-followup-count{color:var(--muted);font-size:13px}
.unsigned-followup-note{margin-bottom:14px;padding:14px 16px;color:#475467;font-size:13px;line-height:1.6}
.bip-template-config{overflow:hidden}
.bip-template-config-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line)}
.bip-template-config-head>div{display:grid;gap:4px}
.bip-template-config-head span{color:var(--muted);font-size:12px}
.bip-template-config table{margin:0}
.bip-template-config td:nth-child(1){width:34%}
.bip-template-config td:nth-child(2){width:38%}
.bip-template-config select{min-width:300px;margin:0}
@media(max-width:780px){
  .users-page-actions{justify-items:start}
  .users-page-buttons{flex-wrap:wrap}
  .bip-template-config-head{align-items:flex-start;flex-direction:column}
  .bip-template-config select{min-width:220px}
}

/* ===== 数据查询 ===== */
/* ===== 数据查询 · 智能查询对话布局 ===== */
.dq-chat{display:flex;flex-direction:column}
/* 对话区可用高度由 data-query.js 的 fitChatHeight() 动态计算。
   未提问：占满可用高度让输入框居中；提问后：消息区向上铺开展示结果，
   输入框始终钉在视口底沿，内容超出时仅消息区内部滚动，页面不整体滚动。 */
.dataquery-shell .content{min-height:0;padding-bottom:10px}
.dq-chat[hidden]{display:none}
.dq-chat-scroll{display:none;flex:0 1 auto;min-height:0;overflow-y:auto;padding:6px 2px 12px}
.dq-chat-active .dq-chat-scroll{display:block;flex:1 1 auto}
.dq-chat-messages{display:flex;flex-direction:column;gap:14px;max-width:860px;margin:0 auto}
.dq-chat-bubble{align-self:flex-end;max-width:82%;padding:10px 14px;border-radius:14px 14px 4px 14px;background:var(--blue);color:#fff;font-size:14px;line-height:1.65;white-space:pre-wrap;word-break:break-word}
.dq-chat .dq-result{align-self:stretch;width:100%;margin-bottom:0;border-top:0}
.dq-chat .dq-progress{margin:4px 0 0}
.dq-composer{width:100%;max-width:860px;margin:auto}
.dq-chat-active .dq-composer{margin:6px auto 0;padding-bottom:0}
.dq-composer-box{border:1px solid var(--line-strong);border-radius:12px;background:#fff;padding:9px 14px 5px;box-shadow:0 4px 16px rgba(31,35,41,.06);transition:border-color .16s,box-shadow .16s}
.dq-composer-box:focus-within{border-color:var(--blue);box-shadow:0 4px 16px rgba(17,17,17,.07)}
.dq-composer-box textarea{width:100%;border:0;background:transparent;padding:0;resize:none;font-size:15px;line-height:1.55;max-height:160px;overflow-y:auto;box-shadow:none}
.dq-composer-box textarea:focus{border:0;box-shadow:none}
.app-shell .dq-composer-box textarea:focus-visible{outline:none}

.dq-chat:not(.dq-chat-active) .dq-composer-box textarea{font-size:16px}
.dq-composer-bar{display:flex;align-items:center;justify-content:space-between;margin-top:3px}
.dq-composer-tip{color:var(--muted);font-size:11px}
.dq-send{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;padding:0;border:0;border-radius:50%;background:var(--blue);color:#fff;cursor:pointer;transition:background .16s}
.dq-send:hover:not(:disabled){background:#333}
.dq-send:disabled{background:#e4e7ec;color:#98a2b3;cursor:default}
@media(max-width:780px){.dataquery-shell .content{padding-top:calc(var(--topbar) + 24px)}}
.dq-progress{display:flex;align-items:center;gap:10px;margin:4px 0 20px;color:var(--muted);font-size:13px}
.dq-progress[hidden]{display:none}
.dq-spinner{width:16px;height:16px;border:2px solid var(--line-strong);border-top-color:var(--blue);border-radius:50%;animation:dq-spin .8s linear infinite}
@keyframes dq-spin{to{transform:rotate(360deg)}}
.dq-result{margin-bottom:22px;padding:4px 0;border-top:1px solid var(--line)}
.dq-result-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:8px}
.dq-report-export{margin-left:auto;min-height:34px;padding:6px 14px}
.dq-verify{display:inline-flex;align-items:center;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:650}
.dq-verify.ok{background:var(--green-soft);color:var(--green)}
.dq-verify.warn{background:var(--amber-soft);color:var(--amber)}
.dq-verify-notes{flex-basis:100%;color:var(--muted)}
.dq-spec-line{flex-basis:100%;font-size:12px;color:var(--muted)}
.dq-spec-line b{color:var(--text)}
.dq-answer{margin:12px 0;font-size:14px;line-height:1.75}
.dq-answer p{margin:0 0 10px}
.dq-answer ul{margin:0 0 10px;padding-left:20px}
.dq-answer h4,.dq-answer h5,.dq-answer h6{margin:14px 0 6px;font-size:15px}
.dq-answer code{padding:1px 5px;border-radius:4px;background:var(--surface-soft);font:13px var(--mono)}
.dq-chart{height:380px;margin:14px 0}
.dq-table-wrap{margin-top:12px}
.dq-table-wrap summary{cursor:pointer;font-weight:600;color:#344054}
.dq-table-scroll{max-height:420px;overflow:auto;margin-top:10px;border:1px solid var(--line);border-radius:6px}
.dq-detail-table,.dq-md-table{width:100%;border-collapse:collapse;font-size:13px}
.dq-detail-table th,.dq-md-table th{background:#f8f9fb;color:#667085;font:600 11px/1.3 var(--mono);letter-spacing:.025em;padding:9px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
.dq-detail-table th{position:sticky;top:0;z-index:1}
.dq-detail-table td,.dq-md-table td{padding:8px 12px;border-bottom:1px solid #f0f1f3;text-align:left}
.dq-detail-table td:nth-child(4){font-family:var(--mono);font-size:12px}
.dq-builder{border:0;background:transparent;padding:0;margin-bottom:18px}
.dq-builder-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:2px 0 14px}
.dq-builder-head h2{margin:0;font-size:19px;letter-spacing:-.01em}
.dq-builder-head p{margin:4px 0 0;color:var(--muted);font-size:12px}
.dq-builder-head-actions{display:flex;align-items:center;gap:12px}
.dq-builder-head-actions span{color:var(--muted);font-size:12px;white-space:nowrap}
.dq-builder-head-actions .primary{min-height:36px;padding:6px 16px;background:var(--blue);border-color:var(--blue)}
.dq-analysis-workbench{display:grid;grid-template-columns:190px 330px minmax(420px,1fr);min-height:620px;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.dq-field-library{min-width:0;padding:14px;border-right:1px solid var(--line);background:#fff}
.dq-field-library-head{display:grid;gap:9px}
.dq-field-library h3,.dq-config-shelves h3,.dq-result-stage h3,.dq-pivot-result h3{margin:0;font-size:13px}
.dq-field-library input{width:100%;min-height:34px;padding:6px 9px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;font-size:12px}
.dq-field-list{display:grid;gap:3px;margin-top:10px}
.dq-field-group-label{margin:8px 0 3px;color:var(--muted);font-size:10px;font-weight:600}
.dq-field-item{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;min-height:32px;padding:5px 7px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text);text-align:left;box-shadow:none;cursor:grab}
.dq-field-item:hover,.dq-field-item:focus-visible{border-color:#cdd9e8;background:#f4f7fb;color:var(--text)}
.dq-field-kind{display:grid;place-items:center;width:17px;height:17px;border-radius:3px;background:#e8eef7;color:#355983;font:700 9px var(--mono)}
.dq-field-kind.measure{background:#e8f3ee;color:#126b49}
.dq-field-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}
.dq-field-add{min-width:14px;color:#7b8794;font-size:10px;text-align:right}
.dq-field-library-hint{margin:10px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
.dq-config-shelves{min-width:0;padding:14px;border-right:1px solid var(--line);background:#f9fafb}
.dq-config-shelves-head,.dq-result-stage>header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px;margin-bottom:10px}
.dq-config-shelves-head span,.dq-result-stage>header span{color:var(--muted);font-size:10px}
.dq-shelf+.dq-shelf{margin-top:13px}
.dq-shelf>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}
.dq-shelf h4{margin:0;font-size:11px;font-weight:650}
.dq-shelf>header>span{color:var(--muted);font-size:10px}
.dq-value-shelf>header label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px;font-weight:400}
.dq-value-shelf .dq-select-button{min-height:28px;padding:4px 7px;border:1px solid var(--line-strong);border-radius:5px;background:#fff;font-size:10px}
.dq-drop-zone{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:center;gap:5px;min-height:43px;padding:6px;border:1px dashed #c6ced8;border-radius:6px;background:#fff;transition:border-color .12s,background .12s}
.dq-filter-shelf .dq-drop-zone{display:grid;min-height:150px;align-content:start}
.dq-drop-zone:empty::before{content:attr(data-empty-label);align-self:center;color:#98a2b3;font-size:10px}
.dq-drop-zone.dq-drop-active{border-color:var(--blue);background:#f2f7ff}
.dq-drop-zone.dq-drop-invalid{border-color:#d92d20;background:#fff7f6}
.dq-layout-chip{display:inline-flex;align-items:center;gap:6px;min-height:29px;padding:4px 6px;border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#25364d;font-size:11px;cursor:grab;box-shadow:none}
.dq-layout-chip:focus-visible{outline:2px solid var(--blue);outline-offset:1px}
.dq-layout-chip.dragging{opacity:.45}
.dq-layout-chip-handle{color:#8994a3;font:700 10px var(--mono);letter-spacing:-1px}
.dq-layout-chip-remove{display:grid;place-items:center;width:18px;height:18px;min-height:18px;padding:0;border:0;border-radius:3px;background:transparent;color:#7b8794;font-size:14px;box-shadow:none}
.dq-layout-chip-remove:hover{background:#edf1f5;color:#344054}
.dq-filter-chip{display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;width:100%;min-height:33px;padding:4px 5px;text-align:left;cursor:pointer}
.app-shell [data-dq-pane="builder"] .dq-filter-chip-main{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;justify-content:stretch;gap:8px;width:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;text-align:left;box-shadow:none}
.app-shell [data-dq-pane="builder"] .dq-filter-chip-main:hover,.app-shell [data-dq-pane="builder"] .dq-filter-chip-main:focus-visible{border:0;background:transparent;color:inherit;box-shadow:none}
.dq-filter-chip-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#344054;font-size:10px;font-weight:600}
.dq-filter-chip-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:11px;text-align:right}
.dq-filter-chip-required{color:#98a2b3;font-size:10px}
.dq-result-stage{display:flex;min-width:0;flex-direction:column;padding:14px;background:#fff;overflow:hidden}
.dq-result-stage>header{flex:0 0 auto;border-bottom:1px solid var(--line);padding-bottom:9px}
.dq-builder-result{flex:1 1 auto;min-height:0;margin:0;padding:0;overflow:auto;border-top:0}
.dq-builder-empty{display:grid;place-items:center;align-content:center;gap:5px;min-height:500px;color:var(--muted);text-align:center}
.dq-builder-empty strong{color:#475467;font-size:13px}
.dq-builder-empty span{font-size:11px}
.dq-loading{padding:20px;text-align:center;color:var(--muted)}
.dq-builder-result>.dq-result-head{padding:8px 0;margin:0;border-bottom:1px solid var(--line)}
.dq-builder-result .dq-spec-line{line-height:1.6}
.dq-builder-result .dq-report-export{min-height:30px;padding:4px 9px;font-size:11px}
.dq-pivot-result{margin:0;padding:12px 0;border-top:0}
.dq-pivot-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:9px}
.dq-pivot-head p{margin:4px 0 0;color:var(--muted);font-size:11px}
.dq-pivot-actions{display:flex;gap:7px}
.dq-pivot-actions button{min-height:30px;padding:4px 10px;font-size:12px}
.dq-pivot-notice{margin:0 0 9px;padding:8px 10px;border:1px solid #ead39a;border-radius:5px;background:var(--amber-soft);color:#77520c;font-size:11px}
.dq-pivot-scroll{max-height:520px;overflow:auto;border:1px solid var(--line);border-radius:5px}
.dq-pivot-table{width:100%;border-collapse:collapse;font-size:12px}
.dq-pivot-table th,.dq-pivot-table td{padding:9px 11px;border-right:1px solid #edf0f3;border-bottom:1px solid #edf0f3;white-space:nowrap}
.dq-pivot-table th{position:sticky;top:0;z-index:1;background:#f7f8fa;color:#667085;font-size:11px;font-weight:600;text-align:left}
.dq-pivot-table td.dq-pivot-number{text-align:right;font-variant-numeric:tabular-nums}
.dq-pivot-table tbody tr:hover td{background:#fafcff}
.dq-pivot-empty{padding:24px!important;color:var(--muted);text-align:center!important}
.dq-builder-disclosure{margin-top:9px;border-top:1px solid var(--line)}
.dq-builder-disclosure>summary{padding:9px 1px;color:#475467;font-size:11px;font-weight:600;cursor:pointer}
.dq-builder-disclosure .dq-charts{padding-top:2px}
.dq-builder-disclosure .dq-chart{height:300px;margin:4px 0 10px}
.dq-builder-result>.dq-table-wrap{margin-top:0;padding-top:0;border-top:1px solid var(--line)}
.dq-builder-result>.dq-table-wrap>summary{padding:9px 1px;color:#475467;font-size:11px}
.dq-filter-dialog{width:min(680px,calc(100vw - 32px))}
.dq-filter-dialog form{grid-template-rows:auto minmax(260px,1fr) auto;max-height:min(720px,calc(100dvh - 32px));overflow:hidden}
.dq-filter-dialog header{align-items:flex-start}
.dq-filter-dialog header h3{font-size:16px}
.dq-filter-dialog header p{margin:3px 0 0;color:var(--muted);font-size:11px}
.dq-filter-body{min-height:260px;overflow:auto}
.dq-filter-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.dq-filter-toolbar input{flex:1;min-width:0;min-height:34px;font-size:12px}
.dq-filter-toolbar button{min-height:32px;padding:5px 9px;font-size:11px}
.dq-filter-count{margin-left:auto;color:var(--muted);font-size:11px;white-space:nowrap}
.dq-filter-options{display:grid;border-top:1px solid var(--line)}
.dq-filter-option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;margin:0;padding:7px 2px;border-bottom:1px solid var(--line);font-size:12px;font-weight:400;cursor:pointer}
.dq-filter-option input{width:15px;height:15px;margin:0;accent-color:var(--blue)}
.dq-filter-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dq-filter-option small{color:var(--muted);font-size:10px;font-weight:400;white-space:nowrap}
.dq-filter-empty{padding:28px 2px;color:var(--muted);font-size:12px;text-align:center}
.dq-filter-range{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}
.dq-filter-range label{display:grid;gap:6px;color:#344054;font-size:12px;font-weight:600}
.dq-filter-choice-list{display:grid;border-top:1px solid var(--line)}
.dq-filter-choice{display:flex!important;grid-auto-flow:column;grid-template-columns:18px 1fr!important;align-items:center;justify-content:start;gap:9px!important;min-height:44px;margin:0;padding:8px 2px;border-bottom:1px solid var(--line);font-size:12px!important;font-weight:400!important;cursor:pointer}
.dq-filter-choice input{width:16px;height:16px;margin:0;accent-color:var(--blue)}
.dq-help{padding:10px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
.dq-help summary{cursor:pointer;font-weight:650}
.dq-help>div{padding-top:10px}
.dq-help p{margin:0 0 8px;font-size:13px}
@media(max-width:1180px){.dq-analysis-workbench{grid-template-columns:170px 300px minmax(360px,1fr)}.dq-field-library,.dq-config-shelves,.dq-result-stage{padding:11px}}
@media(max-width:940px){.dq-analysis-workbench{grid-template-columns:180px minmax(300px,1fr);overflow:visible}.dq-result-stage{grid-column:1/-1;min-height:520px;border-top:1px solid var(--line)}.dq-config-shelves{border-right:0}.dq-builder-empty{min-height:420px}}
@media(max-width:720px){.dq-builder-head{align-items:flex-start;flex-direction:column}.dq-builder-head-actions{width:100%;justify-content:space-between}.dq-analysis-workbench{grid-template-columns:1fr}.dq-field-library{border-right:0;border-bottom:1px solid var(--line)}.dq-field-list{grid-template-columns:1fr 1fr}.dq-field-group-label{grid-column:1/-1}.dq-config-shelves{border-bottom:1px solid var(--line)}.dq-result-stage{grid-column:auto}.dq-filter-range{grid-template-columns:1fr}}
.dq-md-table{margin:10px 0}
.dq-import-form{padding:18px 20px 6px}
.dq-import-row{display:flex;flex-wrap:wrap;gap:12px;align-items:end}
.dq-import-row label{font-size:12px}
.dq-file-label input{position:absolute;width:1px;height:1px;opacity:0}
.dq-file-label span{display:inline-block;padding:8px 16px;border:1.5px dashed var(--line-strong);border-radius:8px;cursor:pointer;font-size:13px;color:var(--muted);max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dq-file-label:hover span{border-color:var(--blue);color:var(--blue)}
.dq-import-hint{margin:10px 0 6px;font-size:12px;color:var(--muted)}
.dq-import-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}
.dq-overwrite-confirm,.dq-classification-confirm{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:7px 10px;border:1px solid #e5a8a3;border-radius:6px;background:#fff8f7;color:var(--red);font-size:12px;cursor:pointer}
.dq-classification-confirm{border-color:#e1c184;background:#fffbeb;color:#7a4b00}
.dq-overwrite-confirm input,.dq-classification-confirm input{display:inline-block!important;appearance:auto!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;margin:0!important;accent-color:var(--blue)}
.dq-import-actions .dq-import-msg{flex:1 1 360px;margin:0}
.dq-import-msg{font-size:12px}
.dq-warn-num{color:var(--amber)}
.dq-dims{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.dq-dims-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px 18px;flex-wrap:wrap}
.dq-dims-head h3{margin:0;font-size:15px}
.dq-dims-head p{margin:0;color:var(--muted);font-size:12px}
.dq-dim-block{margin-top:12px}
.dq-dim-block h4{margin:0 0 6px;font-size:13px;color:#344054}
.dq-dim-scroll{margin-top:0;max-height:340px}
.dq-dim-table{min-width:880px}
.dq-dim-table td{position:relative}
.dq-dim-table td.dq-dim-raw{font-weight:600;white-space:nowrap}
.dq-dim-table input,.dq-dim-table select{min-height:32px;padding:5px 8px;font-size:12px}
.dq-dim-table input[type=checkbox]{width:auto;min-height:0;justify-self:center}
.dq-dim-table td.dq-dim-check{text-align:center}
.dq-dim-mapped [data-dim-field]{opacity:.5}
.dq-dim-skip .dq-dim-raw{text-decoration:line-through;color:var(--muted)}
.dq-dim-skip .dq-map-select{border-style:dashed;color:var(--amber)}
.dq-dim-skip td{background:#f7f8fa;color:var(--muted)}
.dq-dim-affected{min-width:92px;color:var(--muted);font-size:12px;white-space:nowrap}
.dq-dim-skip .dq-dim-affected{color:var(--amber);font-weight:650}
.dq-dim-table [data-dq-grid-cell]{cursor:cell}
.dq-dim-table [data-dq-grid-cell].dq-grid-selected{background:#f3f4f6;box-shadow:inset 0 0 0 1px #c9c9c9}
.dq-dim-table [data-dq-grid-cell].dq-grid-active{z-index:1;box-shadow:inset 0 0 0 2px var(--blue)}
.dq-dim-table [data-dq-grid-cell].dq-grid-fill-preview{background:#f0f1f3;box-shadow:inset 0 0 0 1px var(--blue)}
.dq-dim-table [data-dq-grid-cell].dq-grid-invalid{background:#fff1ef;box-shadow:inset 0 0 0 2px var(--red)}
.dq-grid-fill-handle{position:fixed;z-index:5002;width:10px;height:10px;min-height:0;padding:0;border:1px solid #fff;border-radius:1px;background:var(--blue);box-shadow:0 0 0 1px var(--blue);cursor:crosshair}
.app-shell .dq-grid-fill-handle{display:block;width:10px;height:10px;min-width:10px;min-height:0;padding:0;border-radius:1px;background:var(--blue)}
.dq-grid-fill-handle[hidden]{display:none}
.dq-dim-options{display:grid;gap:22px;margin-top:14px;max-width:560px}
.dq-dim-option-group h3{margin:0 0 8px;font-size:13px}
.dq-dim-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.dq-dim-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px;border-bottom:1px solid var(--line);font-size:13px}
.dq-dim-item button{min-height:0;padding:0 4px;border:0;background:transparent;color:var(--muted);font-size:15px;line-height:1;box-shadow:none}
.dq-dim-item button:hover{color:var(--red);background:transparent;border:0}
.dq-dim-item small{color:var(--muted);font-size:11px}
.dq-dim-locked{color:var(--muted)}
.dq-dim-add{display:grid;grid-template-columns:minmax(160px,260px) auto;gap:8px;margin-top:10px;justify-content:start}
.dq-dim-add button{min-height:34px}
.dq-map-select{min-width:170px;min-height:32px;padding:5px 8px;font-size:12px}
.dq-table-actions{display:flex;gap:8px;justify-content:flex-end;margin:8px 0}
.dq-table-actions button{min-height:30px;padding:4px 10px;font-size:12px}
.dq-row-action{padding:0;border:0;background:transparent;color:var(--blue);font-size:12px;box-shadow:none}
.dq-row-action:hover{border:0;background:transparent;text-decoration:underline}
.dq-quality-state{color:var(--amber);font-size:12px;font-weight:650}
.dq-quality-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:4px 0 18px;border-bottom:1px solid var(--line)}
.dq-quality-head h2{margin:0 0 5px;font-size:22px}
.dq-quality-head p{margin:0;color:var(--muted);font-size:13px}
.dq-quality-list{min-height:120px}
.dq-quality-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.dq-quality-main>div{display:flex;align-items:center;gap:10px}
.dq-quality-main p{margin:6px 0;font-size:13px}
.dq-quality-main small{color:var(--muted)}
.dq-quality-reason{font-weight:600}
.dq-quality-actions{display:flex;align-items:center;gap:8px}
.dq-quality-actions input{width:150px;min-height:34px}
.dq-quality-actions button{min-height:34px;padding:6px 10px}
.dq-coverage-warning{margin:10px 0;padding:9px 12px;border-left:3px solid var(--amber);background:var(--amber-soft);color:var(--text);font-size:13px}
.dq-conflict-banner{margin:10px 0;padding:9px 12px;border-left:3px solid var(--amber);background:var(--amber-soft);color:var(--text);font-size:13px;border-radius:8px}
.dq-conflict-banner p{margin:0 0 8px}
.dq-conflict-actions{display:flex;gap:8px;flex-wrap:wrap}
.dq-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:4px 0 16px;border-bottom:1px solid var(--line)}
.dq-section-head h2{margin:0 0 5px;font-size:22px}.dq-section-head p{margin:0;color:var(--muted);font-size:13px}
.dq-section-actions,.dq-govern-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dq-section-actions select{min-width:130px;min-height:36px}.dq-section-actions button{min-height:36px}
.dq-govern-summary{display:flex;align-items:baseline;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}
.dq-govern-summary strong{white-space:nowrap}.dq-govern-summary span{color:var(--muted)}
.dq-govern-list{min-height:120px}
.dq-govern-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.dq-govern-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dq-govern-title span{color:var(--muted);font-size:12px}
.dq-govern-row p{margin:6px 0;color:#344054;font-size:13px}.dq-govern-row small{color:var(--muted)}
.dq-govern-row p.dq-govern-ai{margin:2px 0 0;color:var(--muted);font-size:12px}
.dq-gap-pending{background:var(--amber-soft);color:var(--amber)}.dq-gap-collecting{background:var(--blue-soft);color:var(--blue)}
.dq-gap-supplied{background:var(--green-soft);color:var(--green)}.dq-gap-dismissed{background:var(--surface-soft);color:var(--muted)}
.dq-govern-dismissed,.dq-govern-stale{background:var(--surface-soft);color:var(--muted)}.dq-govern-merged{background:var(--green-soft);color:var(--green)}
.dq-merge-dialog{width:min(620px,calc(100vw - 32px))}.dq-merge-dialog p{margin:5px 0}
.dq-merge-counts{display:grid;grid-template-columns:repeat(3,1fr);margin:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dq-merge-counts div{padding:12px}.dq-merge-counts div+div{border-left:1px solid var(--line)}
.dq-merge-counts dt{color:var(--muted);font-size:12px}.dq-merge-counts dd{margin:4px 0 0;font-weight:700}
.dq-status{display:inline-flex;padding:2px 7px;border-radius:5px;font-size:11px;font-weight:650}
.dq-status-open,.dq-status-confirmed{background:var(--amber-soft);color:var(--amber)}
.dq-status-corrected{background:var(--green-soft);color:var(--green)}
.dq-status-rejected{background:var(--surface-soft);color:var(--muted)}
.dq-dialog{width:min(540px,calc(100vw - 32px));padding:0;border:1px solid var(--line-strong);border-radius:10px;background:#fff;box-shadow:0 18px 50px rgba(16,24,40,.18)}
.dq-dialog::backdrop{background:rgba(16,24,40,.35)}
.dq-dialog form{display:grid;gap:14px;padding:20px}
.dq-dialog header,.dq-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:10px}
.dq-dialog header h3{margin:0;font-size:18px}
.dq-dialog footer{justify-content:flex-end}
.dq-dialog label{display:grid;gap:6px;font-size:13px;font-weight:600}
.dq-dialog-close{width:32px;height:32px;padding:0;border:0;background:transparent;color:var(--muted);font-size:24px;box-shadow:none}
.dq-dialog-close:hover{border:0;background:var(--surface-soft)}
.dq-gap-workbench-dialog{width:min(1180px,calc(100vw - 32px))}
.dq-gap-workbench-dialog form{max-height:calc(100vh - 40px);grid-template-rows:auto auto auto minmax(220px,1fr) auto auto;overflow:hidden}
.dq-gap-workbench-dialog header>div{min-width:0}
.dq-gap-workbench-dialog header p{margin:4px 0 0}
.dq-gap-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dq-file-action{display:inline-flex!important;grid-auto-flow:column;align-items:center;cursor:pointer}
.dq-gap-tools .muted{margin-left:auto;font-size:12px;font-weight:400}
.dq-gap-validation{padding:9px 11px;border:1px solid #efaaa4;border-radius:7px;background:#fff7f6;color:var(--red);font-size:13px}
.dq-gap-table-wrap{min-height:220px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}
.dq-gap-table{width:100%;min-width:900px;border-collapse:collapse}
.dq-gap-table th{position:sticky;top:0;z-index:1;background:var(--surface-soft);color:var(--muted);font-size:12px;text-align:left}
.dq-gap-table th,.dq-gap-table td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
.dq-gap-table tbody tr:last-child td{border-bottom:0}
.dq-gap-table input{width:100%;min-width:80px;height:38px;padding:7px 9px;border:1px solid var(--line-strong);border-radius:6px;background:#fff;color:var(--text)}
.dq-gap-table input:focus{outline:2px solid rgba(20,101,210,.16);border-color:var(--blue)}
.dq-gap-fixed{max-width:220px;color:var(--text);font-size:13px;overflow-wrap:anywhere}
.dq-row-remove{padding:5px 7px;border:0;background:transparent;color:var(--red);font-size:12px;box-shadow:none}
.dq-row-remove:hover{border:0;background:#fff3f1}
.dq-gap-add{justify-self:start}
.dq-row-error{padding:24px!important;color:var(--red);text-align:center}
.dq-feedback{position:fixed;right:22px;bottom:22px;z-index:4000;max-width:360px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--text);box-shadow:0 8px 28px rgba(16,24,40,.14);font-size:13px}
.dq-feedback[data-kind="success"]{border-color:#8fd3b8;color:var(--green)}
.dq-feedback[data-kind="error"]{border-color:#efaaa4;color:var(--red)}
.dq-clarification{max-width:920px;padding:18px 0}
.dq-clarification header{margin-bottom:14px}
.dq-clarification header strong{font-size:18px}
.dq-clarification header p{margin:5px 0 0;color:var(--muted);font-size:13px}
.dq-clarification-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dq-clarification-option{display:grid;gap:6px;min-height:112px;padding:14px 16px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--text);text-align:left;box-shadow:none}
.dq-clarification-option:hover{border-color:var(--blue);background:#fff}
.dq-clarification-option>span{color:var(--blue);font-size:12px;font-weight:650}
.dq-clarification-option>strong{font-size:14px;line-height:1.55}
.dq-clarification-option>small{color:var(--muted)}
.dq-clarification-supplement{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.dq-clarification-supplement>label{display:block;margin-bottom:7px;color:#344054;font-size:13px;font-weight:600}
.dq-clarification-supplement>div{display:grid;grid-template-columns:1fr auto;gap:8px}
.dq-import-validation-summary{display:flex;align-items:center;gap:12px;margin:12px 0}
.dq-import-validation-summary span{font-size:12px}
.dq-import-edit-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:18px}
.dq-import-edit-head h3{margin:0;font-size:16px}.dq-import-edit-head span{color:var(--muted);font-size:12px}
.dq-sheet-help{display:flex;flex-wrap:wrap;gap:0;margin:7px 0;color:var(--muted);font-size:11px}
.dq-sheet-help span+span::before{content:"·";margin:0 8px;color:#98a2b3}
.dq-import-confirmations{display:grid;gap:7px;margin-top:14px}.dq-import-confirmations:empty{display:none}
.dq-import-confirmations label{display:flex;align-items:flex-start;gap:8px;color:#7a4b00;font-size:12px}
.dq-import-confirmations input{width:auto;min-height:0;margin-top:2px;accent-color:var(--blue)}
.dq-import-grid{max-height:520px}
.dq-import-grid table{min-width:1220px}
.dq-import-grid select,.dq-import-grid input{min-width:92px;min-height:34px;padding:5px 7px;font-size:12px}
.dq-import-grid td:nth-child(2) select{min-width:150px}.dq-import-grid td:nth-child(3) select{min-width:165px}
.dq-import-grid td:nth-child(8) .dq-select-control{min-width:120px}
.dq-unit-result{min-width:155px}.dq-unit-result strong,.dq-unit-result small{display:block;white-space:nowrap}.dq-unit-result small{margin-top:3px;color:var(--muted);font-size:11px}
.dq-required-invalid{border-color:var(--red)!important;background:#fff8f7!important}
.dq-row-error{color:var(--red);font-size:11px;white-space:nowrap}.dq-row-ok{color:var(--green);font-size:11px}

/* 入库预览采用工作表交互：控件属于单元格，不再渲染成一排大号表单。 */
.dq-sheet-table{border-collapse:separate;border-spacing:0;table-layout:fixed;border-top:1px solid var(--line-strong);border-left:1px solid var(--line-strong)}
.dq-sheet-table thead th{position:sticky;z-index:3;top:0;box-sizing:border-box;height:34px;padding:6px 8px;border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:#f5f6f8;color:#475467;font-size:11px;font-weight:600;white-space:nowrap}
.dq-sheet-table tbody td{position:relative;box-sizing:border-box;height:36px;padding:6px 8px;border-right:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:#fff;font-size:12px;vertical-align:middle}
.dq-sheet-table th:nth-child(1){width:58px}.dq-sheet-table th:nth-child(2){width:112px}.dq-sheet-table th:nth-child(3){width:150px}.dq-sheet-table th:nth-child(4){width:86px}.dq-sheet-table th:nth-child(5){width:74px}.dq-sheet-table th:nth-child(6){width:104px}.dq-sheet-table th:nth-child(7){width:138px}.dq-sheet-table th:nth-child(8){width:112px}.dq-sheet-table th:nth-child(9){width:178px}.dq-sheet-table th:nth-child(10){width:86px}
.dq-sheet-table tbody td[data-dq-grid-cell]{padding:0;cursor:cell}
.dq-sheet-table [data-draft-field]{display:block;width:100%;height:35px;min-width:0!important;min-height:35px!important;margin:0;padding:5px 8px;border:0!important;border-radius:0!important;background:transparent!important;color:var(--text);font:12px var(--mono);box-shadow:none!important;outline:0}
.dq-sheet-table select[data-draft-field]{appearance:auto!important;padding-right:22px;font-family:inherit;cursor:pointer}
.dq-sheet-table input[type=number]::-webkit-inner-spin-button,.dq-sheet-table input[type=number]::-webkit-outer-spin-button{margin:0;appearance:none}
.dq-sheet-table [data-dq-grid-cell].dq-grid-selected{background:#f3f4f6;box-shadow:inset 0 0 0 1px #c9c9c9}
.dq-sheet-table [data-dq-grid-cell].dq-grid-active{z-index:2;background:#fff;box-shadow:inset 0 0 0 2px var(--blue)}
.dq-sheet-table [data-dq-grid-cell].dq-grid-fill-preview{background:#f0f1f3;box-shadow:inset 0 0 0 1px var(--blue)}
.dq-sheet-table [data-dq-grid-cell].dq-grid-invalid{background:#fff1ef;box-shadow:inset 0 0 0 2px var(--red)}
.dq-sheet-table .dq-required-invalid{background:#fff1ef!important}
.dq-sheet-table .dq-unit-result{min-width:0;padding:5px 8px}.dq-sheet-table .dq-unit-result strong{font:600 12px var(--mono)}.dq-sheet-table .dq-unit-result small{max-width:165px;margin-top:1px;overflow:hidden;text-overflow:ellipsis;font-size:10px}
.dq-sheet-table .dq-unit-result small[hidden]{display:none}
.dq-sheet-table td[data-draft-status]{padding:5px 8px}

/* 数据查询统一选择框。原生 select 只保存表单值，交互层由同一组件渲染。 */
.dataquery-shell .dq-select-control{position:relative;display:block;min-width:0;width:100%}
.dataquery-shell .dq-native-select{position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none!important}
.dataquery-shell .dq-select-button{position:relative;width:100%;min-height:38px;padding:7px 34px 7px 10px;border:1px solid #cfd5de;border-radius:6px;background:#fff;color:var(--text);font:inherit;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:none}
.dataquery-shell .dq-select-button::after{content:"";position:absolute;right:12px;top:50%;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-70%) rotate(45deg)}
.dataquery-shell .dq-select-button:hover{border-color:#9ca8b8;background:#fff;color:var(--text)}
.dataquery-shell .dq-select-button:focus-visible{outline:0;border-color:var(--blue);box-shadow:0 0 0 3px rgba(17,17,17,.08)}
.dataquery-shell .dq-select-button:disabled{border-color:var(--line);background:#f4f5f7;color:#98a2b3;cursor:not-allowed}
.dq-select-popup{position:fixed;z-index:5000;max-height:270px;padding:4px;border:1px solid #cfd5de;border-radius:7px;background:#fff;box-shadow:0 10px 28px rgba(16,24,40,.14);overflow:auto}
.dq-select-popup[hidden]{display:none}.dq-select-search{width:100%;min-height:36px;margin-bottom:4px;padding:7px 9px;border:1px solid var(--line-strong);border-radius:5px}
.dq-select-options{display:grid}.dq-select-option{width:100%;min-height:36px;padding:7px 9px;border:0;border-radius:4px;background:#fff;color:var(--text);font-size:13px;text-align:left;box-shadow:none}
.dq-select-option:hover,.dq-select-option:focus-visible{border:0;outline:0;background:#f2f5f9;color:var(--text)}.dq-select-option.selected{background:var(--blue);color:#fff}
.dq-select-empty{margin:0;padding:9px;color:var(--muted);font-size:12px}
.dataquery-shell input:focus-visible,.dataquery-shell textarea:focus-visible{outline:0}
.dq-section-actions .dq-select-control{flex:0 0 150px;width:150px;min-width:140px}.dq-builder-controls .dq-select-control{min-width:110px}
.dq-dim-table .dq-select-button,.dq-import-grid .dq-select-button{min-height:34px;padding-top:5px;padding-bottom:5px;font-size:12px}
@media(max-width:760px){.dq-quality-item,.dq-govern-row{grid-template-columns:1fr}.dq-quality-actions{flex-wrap:wrap}.dq-quality-actions input{width:100%}.dq-table-actions{justify-content:flex-start}.dq-section-head{flex-direction:column}.dq-merge-counts{grid-template-columns:1fr}.dq-merge-counts div+div{border-left:0;border-top:1px solid var(--line)}.dq-gap-workbench-dialog{width:calc(100vw - 16px)}.dq-gap-workbench-dialog form{max-height:calc(100dvh - 16px);padding:14px}.dq-gap-tools{align-items:stretch}.dq-gap-tools>*{width:100%;justify-content:center}.dq-gap-tools .muted{margin-left:0}.dq-gap-table-wrap{min-height:260px}}

/* 手机端导航参与正常文档流，避免固定的多行导航遮挡页面内容。 */
@media(max-width:820px){
  .app-shell .topbar{position:relative!important;inset:auto!important}
  .app-shell .sidebar{position:relative!important;inset:auto!important;width:100%!important;min-height:0!important}
  .app-shell .content,.dataquery-shell .content{margin-left:0!important;padding:28px 12px 52px!important}
  .app-shell .global-search-results{position:absolute}
  [id]{scroll-margin-top:18px}
}
@media(max-width:620px){
  .dq-clarification-options{grid-template-columns:1fr}
  .dq-clarification-supplement>div{grid-template-columns:1fr}
  .dq-import-validation-summary,.dq-import-edit-head,.dq-dims-head{align-items:flex-start;flex-direction:column}
}
.permission-guide {
  display: flex;
  gap: 16px;
  align-items: baseline;
  margin: 0 0 20px;
  padding: 14px 0;
  border-bottom: 1px solid var(--line, #e5e7eb);
  color: var(--muted, #667085);
}

.permission-guide strong {
  color: var(--text, #111827);
  white-space: nowrap;
}

.manager-permission-table table {
  min-width: 1380px;
}

.manager-permission-table th {
  vertical-align: bottom;
}

.manager-permission-table th small,
.permission-user-column small {
  display: block;
  margin-top: 4px;
  color: var(--muted, #667085);
  font-weight: 400;
}

.permission-user-column {
  width: 180px;
  min-width: 180px;
}

.permission-action-column {
  width: 88px;
  min-width: 88px;
  text-align: right;
}

.permission-toggle-cell {
  min-width: 118px;
}

.permission-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  cursor: pointer;
}

.permission-checkbox input {
  width: 18px;
  height: 18px;
  accent-color: #0f62fe;
}

.permission-checkbox input:disabled + span,
.muted-text {
  color: var(--muted, #667085);
}

@media (max-width: 720px) {
  .permission-guide {
    display: block;
  }
  .permission-guide span {
    display: block;
    margin-top: 6px;
  }
}


/* 2026-08-07 Kimi official minimal chrome: sidebar, buttons, quiet surfaces. */
.app-shell{
  --kimi-text:rgba(0,0,0,.9);
  --kimi-secondary:rgba(0,0,0,.56);
  --kimi-tertiary:rgba(0,0,0,.45);
  --kimi-fill:rgba(0,0,0,.05);
  --kimi-fill-hover:rgba(0,0,0,.08);
  --kimi-fill-active:rgba(0,0,0,.06)
}
.app-shell .sidebar{
  width:232px;padding:24px 14px 40px;border-right:0;background:#fff
}
.app-shell .sidebar-view-switch{margin:0 0 18px;padding:0;border-bottom:0}
.app-shell .sidebar .work-mode-switch{
  display:flex;gap:2px;width:100%;padding:3px;border:0;border-radius:999px;background:#f5f5f5
}
.app-shell .sidebar .work-mode-switch button{
  flex:1;min-height:28px;padding:4px 10px;border:0;border-radius:999px;background:transparent;
  color:var(--kimi-secondary);font-size:12px;font-weight:500;box-shadow:none;transform:none
}
.app-shell .sidebar .work-mode-switch button:hover{
  border:0;background:rgba(255,255,255,.72);color:var(--kimi-text);box-shadow:none;transform:none
}
.app-shell .sidebar .work-mode-switch button.active,
.app-shell .sidebar .work-mode-switch button.active:hover{
  border:0;background:#fff;color:var(--kimi-text);box-shadow:0 1px 2px rgba(0,0,0,.06);transform:none
}
.app-shell .nav-label{
  padding:20px 10px 7px;color:var(--kimi-tertiary);font-family:var(--sans);font-size:12px;
  font-weight:400;line-height:18px;letter-spacing:0;text-transform:none
}
.app-shell .sidebar a{
  min-height:32px;margin:2px 0;padding:6px 12px;border:0;border-radius:999px;background:transparent;
  color:var(--kimi-secondary);font-size:14px;font-weight:400;line-height:20px;box-shadow:none
}
.app-shell .sidebar a:hover{background:var(--kimi-fill);color:var(--kimi-text);transform:none}
.app-shell .sidebar a.active{background:var(--kimi-fill-active);color:var(--kimi-text);font-weight:500;box-shadow:none}
.app-shell .sidebar a.active:before{display:none}
.app-shell .nav-count{
  min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:rgba(0,0,0,.08);
  color:var(--kimi-secondary);font:500 11px/20px var(--sans)
}
.app-shell .nav-count.is-zero{background:rgba(0,0,0,.04);color:var(--kimi-tertiary)}
.app-shell .sidebar a.active .nav-count{background:rgba(0,0,0,.12);color:var(--kimi-text)}
.app-shell .sidebar a.active .nav-count.is-zero{background:rgba(0,0,0,.06);color:var(--kimi-tertiary)}
.app-shell .nav-count.config-count{background:rgba(180,35,24,.1);color:var(--red)}

.app-shell .button,
.app-shell button{
  min-height:32px;padding:6px 14px;border:0;border-radius:999px;background:var(--kimi-fill);
  color:var(--kimi-text);font-size:14px;font-weight:500;line-height:20px;box-shadow:none;
  transition:background-color .16s ease,color .16s ease,transform .1s ease
}
.app-shell .button:hover,
.app-shell button:hover{border:0;background:var(--kimi-fill-hover);color:var(--kimi-text);box-shadow:none;transform:none}
.app-shell .button:active,
.app-shell button:active{transform:scale(.97)}
.app-shell .button:disabled,
.app-shell button:disabled,
.app-shell .button:disabled:hover,
.app-shell button:disabled:hover{
  border:0;background:var(--kimi-fill);color:rgba(0,0,0,.3);box-shadow:none;transform:none;cursor:not-allowed
}
.app-shell .secondary{border:0;background:var(--kimi-fill);color:var(--kimi-text)}
.app-shell .secondary:hover{background:var(--kimi-fill-hover);color:var(--kimi-text)}
.app-shell .primary,
.app-shell .button.primary,
.app-shell button.primary{border:0;background:var(--kimi-text);color:#fff}
.app-shell .primary:hover,
.app-shell .button.primary:hover,
.app-shell button.primary:hover{border:0;background:#252525;color:#fff}
.app-shell .danger,
.app-shell .button.danger,
.app-shell button.danger{border:0;background:rgba(180,35,24,.08);color:var(--red)}
.app-shell .danger:hover,
.app-shell .button.danger:hover,
.app-shell button.danger:hover{border:0;background:rgba(180,35,24,.14);color:#951b12}
.app-shell .text-button{
  min-height:auto;padding:4px 0;border:0;border-radius:0;background:transparent;color:var(--kimi-text);
  font-weight:500;box-shadow:none
}
.app-shell .text-button:hover{border:0;background:transparent;color:#000;box-shadow:none;transform:none}
.app-shell .app-back-button{
  min-height:32px;padding:6px 0;border:0;border-radius:0;background:transparent;color:var(--kimi-secondary);
  font-size:14px;font-weight:400;box-shadow:none
}
.app-shell .app-back-button:hover{border:0;background:transparent;color:var(--kimi-text);transform:none}
.app-shell .global-ask-button{
  min-width:96px;height:40px;padding:0 18px;border:0;border-radius:999px;background:var(--kimi-text);
  color:#fff;font-size:14px;font-weight:600;box-shadow:none
}
.app-shell .global-ask-button:hover{border:0;background:#252525;color:#fff;transform:none}
.app-shell .global-ask-button:active{transform:scale(.97)}

.app-shell .queue-tabs,
.app-shell .tabs,
.app-shell .feedback-status-strip,
.app-shell .mode-tabs,
.app-shell .entry-mode-tabs,
.app-shell .rule-segment-tabs{
  display:flex;gap:8px;padding:0;border:0;border-bottom:0;border-radius:0;background:transparent
}
.app-shell .queue-tabs a,
.app-shell .tabs a,
.app-shell .feedback-status-strip a,
.app-shell .mode-tabs button,
.app-shell .entry-mode-tabs button,
.app-shell .rule-segment-tabs button{
  display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border:0;border-radius:999px;
  background:transparent;color:var(--kimi-secondary);font-size:14px;font-weight:400;line-height:20px;
  box-shadow:none;transform:none
}
.app-shell .queue-tabs a:hover,
.app-shell .tabs a:hover,
.app-shell .feedback-status-strip a:hover,
.app-shell .mode-tabs button:hover,
.app-shell .entry-mode-tabs button:hover,
.app-shell .rule-segment-tabs button:hover{
  border:0;background:var(--kimi-fill);color:var(--kimi-text);box-shadow:none;transform:none
}
.app-shell .queue-tabs a.active,
.app-shell .tabs a.active,
.app-shell .feedback-status-strip a.active,
.app-shell .mode-tabs button.active,
.app-shell .entry-mode-tabs button.active,
.app-shell .rule-segment-tabs button.active{
  border:0;background:var(--kimi-fill-active);color:var(--kimi-text);font-weight:500;box-shadow:none;transform:none
}
.app-shell .rule-outline button,
.app-shell .rule-stepper button{
  border:0;border-radius:0;background:transparent;color:var(--kimi-secondary);box-shadow:none;transform:none
}
.app-shell .rule-outline button:hover,
.app-shell .rule-stepper button:hover{background:var(--kimi-fill);color:var(--kimi-text);transform:none}
.app-shell .rule-outline button.active,
.app-shell .rule-stepper button.active{background:var(--kimi-fill-active);color:var(--kimi-text);box-shadow:none;transform:none}
.app-shell .dt-decision button{border:0;border-radius:0;background:#fff;transform:none}
.app-shell .dt-decision button:hover{background:#fafafa;transform:none}
.app-shell .dq-select-button,
.app-shell .dq-select-option{transform:none}

.app-shell .surface,
.app-shell .card{border:0;border-radius:12px;background:#fff;box-shadow:none}
.app-shell .message{border:0;border-radius:12px;box-shadow:none}
.app-shell .message.notice{border:0;background:#f5f5f5;color:var(--kimi-text)}
.app-shell .filter-bar,
.app-shell .form-card,
.app-shell .shared-key-panel,
.app-shell .directory-maintenance,
.app-shell .create-panel,
.app-shell .permission-tree,
.app-shell .rule-outline-level,
.app-shell .rule-segments section,
.app-shell .segment-fieldset,
.app-shell .segment-input-grid fieldset,
.app-shell .paste-panel,
.app-shell .automation-switch,
.app-shell .unsigned-contract-toggle,
.app-shell .rule-guide-callout,
.app-shell .manager-access-note,
.app-shell .excel-import-status{border:0;box-shadow:none}
.app-shell .filter-bar,
.app-shell .form-card,
.app-shell .shared-key-panel,
.app-shell .directory-maintenance,
.app-shell .permission-tree,
.app-shell .rule-outline-level,
.app-shell .rule-segments section,
.app-shell .segment-fieldset,
.app-shell .segment-input-grid fieldset{border-radius:12px;background:#fafafa}
.app-shell .create-panel[open]>summary{border-bottom:0}
.app-shell .application-submit,
.app-shell .review-bar,
.app-shell .rule-save-bar{
  border:0;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 12px 32px rgba(0,0,0,.1)
}
.app-shell .analytics-kpis{border:0;border-radius:0}
.app-shell .analytics-kpi{padding:0 28px 0 0;background:transparent}
.app-shell .analytics-panel>header,
.app-shell .analytics-pending-overview>header,
.app-shell .pending-flow-panel>header,
.app-shell .analytics-detail-panel>header,
.app-shell .ai-effect-section>header{padding-bottom:14px;border-bottom:0}
.app-shell .analytics-stage-strip{border-bottom:0}
.app-shell .application-context,
.app-shell .archive-picker,
.app-shell .application-entry{border-top:0}
.app-shell .rule-edit-panel{padding-left:0;border-left:0}
.app-shell .rule-form-section{border-bottom:0}
.app-shell .financial-rule-version-switch a{
  border:0;border-radius:999px;background:var(--kimi-fill);color:var(--kimi-secondary);font-weight:500
}
.app-shell .financial-rule-version-switch a:hover{background:var(--kimi-fill-hover);color:var(--kimi-text)}
.app-shell .financial-rule-version-switch a.active{background:var(--kimi-fill-active);color:var(--kimi-text)}
.app-shell .consultation-action{border:0;background:rgba(154,103,0,.1);color:var(--amber)}
.app-shell .consultation-action:hover{background:rgba(154,103,0,.16);color:#7a5200}
@media(max-width:820px){
  .app-shell .sidebar{width:100%;padding:10px 12px 14px;background:#fff}
  .app-shell .sidebar a{white-space:nowrap}
}


/* 2026-08-07 Kimi hover product menus and squared controls. */
.app-shell .topbar{border-bottom:0;box-shadow:none}
.app-shell .product-switch{
  position:relative;gap:22px;margin-left:18px;padding-left:0;border-left:0;overflow:visible
}
.app-shell .product-nav-item{position:relative;display:flex;align-items:stretch}
.app-shell .product-nav-link{
  display:flex;align-items:center;padding:0;border-radius:0;background:transparent!important;
  color:var(--kimi-secondary);font-size:14px;font-weight:400;line-height:20px;box-shadow:none
}
.app-shell .product-nav-link:hover{background:transparent!important;color:var(--kimi-text);box-shadow:none}
.app-shell .product-nav-link.active{color:var(--kimi-text);font-weight:500;box-shadow:inset 0 -2px var(--kimi-text)}
.app-shell .product-menu-card{
  position:absolute;z-index:70;top:calc(100% + 10px);left:0;width:248px;padding:8px;
  border:1px solid rgba(0,0,0,.08);border-radius:10px;background:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.12);opacity:0;visibility:hidden;pointer-events:none;
  transform:translateY(5px);transition:opacity .15s ease-out,transform .15s ease-out,visibility .15s ease-out
}
.app-shell .product-menu-card.wide{width:430px}
.app-shell .product-nav-item:hover .product-menu-card,
.app-shell .product-nav-item:focus-within .product-menu-card{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)
}
.app-shell .product-nav-item:last-child .product-menu-card{left:auto;right:0}
.app-shell .product-menu-grid{display:grid;grid-template-columns:1fr;gap:2px}
.app-shell .product-menu-card.wide .product-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px}
.app-shell .product-menu-card a{
  display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:32px;padding:6px 10px;
  border:0;border-radius:8px;background:transparent!important;color:var(--kimi-secondary);
  font-size:14px;font-weight:400;line-height:20px;box-shadow:none;white-space:nowrap
}
.app-shell .product-menu-card a:hover{background:var(--kimi-fill)!important;color:var(--kimi-text);box-shadow:none}
.app-shell .product-menu-card a.active{background:var(--kimi-fill-active)!important;color:var(--kimi-text);font-weight:500;box-shadow:none}
.app-shell .product-menu-card .nav-count{min-width:20px;height:20px;padding:0 6px;border-radius:6px}
.app-shell .product-menu-switch{
  display:grid;grid-template-columns:1fr 1fr;gap:2px;margin:0 0 8px;padding:3px;border:0;
  border-radius:8px;background:#f5f5f5
}
.app-shell .product-menu-switch button{
  min-height:28px;padding:4px 8px;border:0;border-radius:6px;background:transparent;
  color:var(--kimi-secondary);font-size:12px;font-weight:500;box-shadow:none
}
.app-shell .product-menu-switch button:hover{border:0;background:rgba(255,255,255,.72);color:var(--kimi-text);box-shadow:none}
.app-shell .product-menu-switch button.active,
.app-shell .product-menu-switch button.active:hover{border:0;background:#fff;color:var(--kimi-text);box-shadow:0 1px 2px rgba(0,0,0,.06)}

@media(min-width:821px){
  .app-shell .sidebar{display:none}
  .app-shell .content{margin-left:0;padding-left:clamp(36px,4.5vw,76px);padding-right:clamp(36px,4.5vw,76px)}
}
@media(max-width:820px){
  .app-shell .product-menu-card{display:none}
  .app-shell .sidebar{display:flex}
}

.app-shell .button,
.app-shell button,
.app-shell .global-ask-button,
.app-shell .sidebar a,
.app-shell .queue-tabs a,
.app-shell .tabs a,
.app-shell .feedback-status-strip a,
.app-shell .mode-tabs button,
.app-shell .entry-mode-tabs button,
.app-shell .rule-segment-tabs button,
.app-shell .financial-rule-version-switch a{border-radius:8px}
.app-shell .sidebar .work-mode-switch,
.app-shell .surface,
.app-shell .card,
.app-shell .message,
.app-shell .filter-bar,
.app-shell .form-card,
.app-shell .shared-key-panel,
.app-shell .directory-maintenance,
.app-shell .permission-tree,
.app-shell .rule-outline-level,
.app-shell .rule-segments section,
.app-shell .segment-fieldset,
.app-shell .segment-input-grid fieldset,
.app-shell .global-search-results,
.app-shell .product-menu-card{border-radius:10px}
.app-shell .sidebar .work-mode-switch button,
.app-shell .status,
.app-shell .status-badge,
.app-shell .nav-count,
.app-shell .financial-rule-category,
.app-shell .feedback-label,
.app-shell .dq-status{border-radius:6px}
.app-shell .application-submit,
.app-shell .review-bar,
.app-shell .rule-save-bar{border-radius:12px}
.app-shell input,
.app-shell textarea,
.app-shell select{border-radius:8px}
.app-shell .global-search input{border-radius:10px}
.app-shell .global-search input:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.08)}


/* 2026-08-07 Kimi product menu hover bridge: keep the card open across the visual gap. */
.app-shell .product-menu-card::before{
  content:"";position:absolute;left:0;right:0;top:-14px;height:14px;pointer-events:auto
}


/* 2026-08-07 Product menu groups and JS-restored open state. */
.app-shell .product-menu-group + .product-menu-group{margin-top:6px;padding-top:6px;border-top:1px solid rgba(0,0,0,.06)}
.app-shell .product-menu-label{padding:4px 10px 2px;color:var(--kimi-tertiary);font-size:12px;line-height:18px}
.app-shell .product-nav-item.menu-open .product-menu-card{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)
}

/* Rule workflow keeps the project primary action blue and dialogs above sticky chrome. */
.app-shell #ruleConfigApp button.primary,
.app-shell #ruleConfigApp .button.primary,
.app-shell .rule-field-dialog button.primary,
.app-shell .rule-branch-dialog button.primary,
.app-shell .rule-publish-dialog button.primary{
  border:0;background:#1769e0;color:#fff
}
.app-shell #ruleConfigApp button.primary:hover,
.app-shell #ruleConfigApp .button.primary:hover,
.app-shell .rule-field-dialog button.primary:hover,
.app-shell .rule-branch-dialog button.primary:hover,
.app-shell .rule-publish-dialog button.primary:hover{
  background:#0f5dcc;color:#fff
}
/* Explainable AI review: evidence is visible by default and grouped by model. */
.ai-model-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 12px}.ai-model-evidence-grid section{min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fff}.ai-model-evidence-grid header{display:flex;align-items:center;justify-content:space-between;gap:10px}.ai-model-evidence-grid ul{margin:8px 0 0;padding-left:18px}.ai-model-evidence-grid li{margin-top:5px;color:#344054}.teaching-field-list{display:grid;gap:7px;margin:8px 0 14px}.teaching-field-list label{display:flex;align-items:flex-start;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;cursor:pointer}.teaching-field-list input{margin-top:3px}.teaching-field-list span{display:grid;gap:2px}.teaching-field-list small{color:var(--muted)}
@media(max-width:820px){.ai-model-evidence-grid{grid-template-columns:1fr}}
.operation-tabs{margin-bottom:14px}.batch-operation-section+.batch-operation-section{margin-top:28px}.batch-operation-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 9px}.batch-operation-heading h2{margin:0;font-size:18px}.batch-operation-heading span{color:var(--muted);font-size:12px}
.batch-review-select-all{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;color:var(--muted);font-size:13px;font-weight:500}.batch-review-select-all input,.approval-item-identity input{width:16px;height:16px;accent-color:var(--blue)}
.approval-item-list{display:grid;gap:12px}.approval-item-detail{overflow:hidden}.approval-item-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid var(--line);background:#fafafa}.approval-item-identity,.approval-item-header-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.approval-item-identity>span:first-of-type{font-weight:650}.review-single-only{color:var(--amber);font-size:12px}.approval-item-layout{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(420px,1.55fr) minmax(180px,.48fr);align-items:start}.approval-item-content,.approval-item-evidence,.approval-item-outcome{min-width:0;padding:18px}.approval-item-layout>*+*{border-left:1px solid var(--line)}.approval-item-layout h3{margin:0 0 10px;color:var(--muted);font-size:12px;font-weight:600}.approval-item-value,.approval-item-content .value-after{display:block;line-height:1.65;overflow-wrap:anywhere}.approval-item-content .segments{display:grid;gap:5px}.approval-item-content .segments span{width:max-content;max-width:100%;overflow-wrap:anywhere}.approval-item-evidence{display:grid;align-content:start;gap:8px}.approval-issue-list{margin:0;padding-left:18px;color:var(--red)}.semantic-reasons{display:grid;gap:5px}.semantic-reasons small{display:block;line-height:1.6}.approval-item-outcome{display:grid;gap:22px}.approval-item-outcome>div{display:grid;justify-items:start;gap:7px}.approval-item-label{color:var(--muted);font-size:12px}.approval-item-outcome small{display:block;line-height:1.5}.approval-item-detail>.approval-flow-disclosure{border-top:1px solid var(--line);background:#fbfbfc}.approval-item-detail>.approval-flow-disclosure>summary{padding:10px 16px}.approval-item-detail .ai-review-trace{margin-top:4px}.approval-item-detail .ai-review-trace-body{padding-top:10px}.approval-item-detail .ai-model-evidence-grid li{line-height:1.55;overflow-wrap:anywhere}
@media(max-width:1120px){.approval-item-layout{grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr)}.approval-item-outcome{grid-column:1/-1;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:0!important}.approval-item-outcome>div+div{padding-left:18px;border-left:1px solid var(--line)}}
@media(max-width:760px){.approval-item-header{align-items:flex-start;flex-direction:column}.approval-item-layout{grid-template-columns:1fr}.approval-item-layout>*+*{border-top:1px solid var(--line);border-left:0}.approval-item-outcome{grid-template-columns:1fr}.approval-item-outcome>div+div{padding:0;border-left:0}.approval-item-detail .ai-model-evidence-grid{grid-template-columns:1fr}}
.review-queue-type-filter{display:flex;align-items:center;gap:10px;min-height:34px}.review-queue-type-filter>span{flex:0 0 auto;color:var(--muted);font-size:13px}.review-queue-type-filter nav{display:inline-flex;align-items:center;gap:3px;padding:3px;border-radius:8px;background:var(--surface-soft)}.review-queue-type-filter a{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:6px;color:var(--muted);font-size:13px;text-decoration:none}.review-queue-type-filter a:hover{background:#fff;color:var(--text)}.review-queue-type-filter a.active{background:#fff;color:var(--text);font-weight:600}.review-queue-operation{display:flex;align-items:center;gap:7px;white-space:nowrap}
.queue-review-list{display:grid;gap:18px}.queue-review-batch{overflow:hidden}.queue-review-batch>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 16px;border-bottom:1px solid var(--line)}.queue-review-batch-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 12px}.queue-review-batch-title a{font-weight:700}.queue-review-batch-title span,.queue-review-batch>header p{color:var(--muted);font-size:12px}.queue-review-batch>header p{margin:4px 0 0}.queue-review-batch-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.queue-review-batch-actions label{display:flex;align-items:center;gap:6px;margin-right:4px;color:var(--muted);font-size:12px}.queue-review-batch-actions input,.queue-review-item-heading input{width:16px;height:16px;accent-color:var(--blue)}.queue-review-items{display:grid}.queue-review-item{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.35fr) auto;gap:0;align-items:stretch}.queue-review-item+.queue-review-item{border-top:1px solid var(--line)}.queue-review-item-main,.queue-review-evidence,.queue-review-actions{min-width:0;padding:16px}.queue-review-item>*+*{border-left:1px solid var(--line)}.queue-review-item-heading,.queue-review-decision{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:9px}.queue-review-item-main>strong{display:block;line-height:1.65;overflow-wrap:anywhere}.queue-review-item-main .segments{display:grid;gap:4px}.queue-review-item-main .segments span{width:max-content;max-width:100%;overflow-wrap:anywhere}.queue-review-evidence{display:grid;align-content:start;gap:6px}.queue-review-decision>span:last-child{color:var(--muted);font-size:12px}.queue-review-evidence>ul{margin:0;padding-left:18px;color:var(--red)}.queue-review-evidence>small{line-height:1.55}.queue-review-evidence details{margin-top:5px}.queue-review-evidence details>summary{cursor:pointer;color:var(--muted);font-size:12px}.queue-ai-models{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.queue-ai-models section{display:grid;align-content:start;gap:5px;padding:9px 10px;border:1px solid var(--line);border-radius:5px}.queue-ai-models header{display:flex;align-items:center;justify-content:space-between;gap:8px}.queue-ai-models small{line-height:1.5}.queue-review-actions{display:flex;align-items:center;gap:7px}.queue-review-actions button{min-width:62px}.queue-review-empty{padding:48px 20px}.queue-review-list+.reject-reason-dialog{position:fixed}
.ai-decision-cause{display:grid;gap:3px;margin:4px 0 2px;padding:8px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;line-height:1.55}.ai-decision-cause strong{font-size:12px}.ai-decision-cause.reject strong{color:var(--red)}.ai-decision-cause.manual strong{color:var(--amber)}.ai-decision-cause span{overflow-wrap:anywhere}
.queue-decision-choice{display:flex;gap:8px;margin:0;padding:0;border:0}.queue-decision-choice legend{margin-bottom:7px;font-size:13px;font-weight:700}.queue-decision-choice label{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--line);border-radius:6px;cursor:pointer}.queue-decision-choice label:has(input:checked){border-color:var(--blue);background:var(--blue-soft)}.queue-decision-choice input{width:16px;height:16px;accent-color:var(--blue)}

/* Compact business dashboards: dense hierarchy without decorative data walls. */
.app-shell .compact-dashboard .section-kicker{display:none}
.app-shell .compact-dashboard .analytics-title{align-items:center!important;margin-bottom:18px}
.app-shell .compact-dashboard .analytics-title h1{margin-bottom:4px;font-size:27px;letter-spacing:-.025em}
.app-shell .compact-dashboard .analytics-title p{font-size:13px;line-height:1.5}
.app-shell .compact-dashboard .analytics-freshness{display:flex;align-items:center;gap:8px;font-size:11px}
.app-shell .compact-dashboard .analytics-freshness strong{font-size:11px}
.app-shell .compact-dashboard .analytics-freshness .button{grid-row:auto;grid-column:auto;min-height:34px;margin-left:4px;padding:6px 13px}
.app-shell .compact-dashboard .analytics-filter{grid-template-columns:140px 140px minmax(210px,1fr) minmax(190px,.8fr) auto;gap:9px;margin-bottom:18px;padding:0 0 16px}
.app-shell .compact-dashboard .analytics-filter input,.app-shell .compact-dashboard .analytics-filter select{height:38px;min-height:38px;padding:6px 9px}
.app-shell .compact-dashboard .analytics-filter-actions>*{min-height:38px;padding:6px 13px}
.app-shell .compact-dashboard .analytics-kpis{margin:0 0 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.app-shell .compact-dashboard .analytics-kpi{gap:3px;padding:13px 15px!important;border-right:1px solid var(--line);background:#fff}
.app-shell .compact-dashboard .analytics-kpi:first-child{padding-left:15px!important}
.app-shell .compact-dashboard .analytics-kpi:last-child{padding-right:15px!important;border-right:0}
.app-shell .compact-dashboard .analytics-kpi strong{font-size:25px;line-height:1.15}
.app-shell .compact-dashboard .analytics-kpi small{font-size:11px}
.app-shell .compact-dashboard .analytics-kpi b{display:none}
.app-shell .compact-dashboard .analytics-main-grid,.app-shell .compact-dashboard .analytics-rank-grid{gap:24px;margin-bottom:22px}
.app-shell .compact-dashboard .analytics-panel>header,.app-shell .compact-dashboard .analytics-pending-overview>header,.app-shell .compact-dashboard .ai-effect-section>header{padding:0 0 10px;border-bottom:1px solid var(--line)}
.app-shell .compact-dashboard .analytics-panel>header h2,.app-shell .compact-dashboard .analytics-pending-overview>header h2,.app-shell .compact-dashboard .ai-effect-section>header h2{margin:0;font-size:17px}
.app-shell .compact-dashboard .analytics-chart{min-height:235px;padding-top:8px}
.app-shell .compact-dashboard .analytics-outcomes{padding:6px 0}
.app-shell .compact-dashboard .analytics-outcome-row{padding:6px 0}
.app-shell .compact-dashboard .analytics-pending-overview{margin-bottom:22px}
.app-shell .compact-dashboard .analytics-stage-strip>a{margin-right:18px;padding:13px 0}
.app-shell .ai-effect-dashboard-page .ai-effect-volume{margin-bottom:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0}
.app-shell .ai-effect-dashboard-page .ai-effect-volume>a{padding:12px 15px}
.app-shell .ai-effect-dashboard-page .ai-effect-volume strong{font-size:23px}
.app-shell .ai-effect-dashboard-page .ai-effect-kpis{margin-bottom:24px}
@media(max-width:900px){.app-shell .compact-dashboard .analytics-filter{grid-template-columns:1fr 1fr}.app-shell .compact-dashboard .analytics-title{align-items:flex-start!important}.app-shell .compact-dashboard .analytics-freshness{flex-wrap:wrap}.app-shell .compact-dashboard .analytics-main-grid,.app-shell .compact-dashboard .analytics-rank-grid{gap:18px}}
@media(max-width:560px){.app-shell .compact-dashboard .analytics-filter{grid-template-columns:1fr}.app-shell .compact-dashboard .analytics-title h1{font-size:24px}.app-shell .compact-dashboard .analytics-kpi{padding:11px 12px!important}.app-shell .compact-dashboard .analytics-kpi strong{font-size:22px}}
@media(max-width:1100px){.queue-review-item{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)}.queue-review-actions{grid-column:1/-1;justify-content:flex-end;border-top:1px solid var(--line);border-left:0!important}.queue-review-batch>header{align-items:flex-start;flex-direction:column}.queue-review-batch-actions{justify-content:flex-start}}
@media(max-width:760px){.queue-review-item{grid-template-columns:1fr}.queue-review-item>*+*{border-top:1px solid var(--line);border-left:0}.queue-ai-models{grid-template-columns:1fr}.queue-review-batch-actions label{width:100%}}
.applicant-type-filter{margin:12px 0 18px}.applicant-batch-table table{min-width:1040px}.applicant-batch-table td{vertical-align:middle}.applicant-batch-table td:nth-child(2){min-width:170px}.applicant-batch-table td:nth-child(4){min-width:190px}.applicant-batch-table td:nth-child(5){min-width:210px}.applicant-batch-table td small{color:var(--muted)}.applicant-next-action{font-weight:600;white-space:nowrap}.applicant-batch-table .empty{display:table-cell;padding:56px 20px;text-align:center}.applicant-batch-table .empty strong,.applicant-batch-table .empty span{display:block}.applicant-batch-table .empty span{margin:6px 0 14px;color:var(--muted);font-weight:400}
.batch-application-page .entry-toolbar{align-items:flex-start}.batch-application-page .entry-toolbar>div:first-child{display:grid;gap:6px}.sheet-direct-help{color:var(--muted);font-size:11px}.entry-tools [hidden]{display:none!important}
.sheet-direct-help[hidden]{display:none!important}.batch-application-page .application-submit{position:static;box-shadow:none}.batch-application-page .application-workbench{padding-bottom:12px}

/* 2026-08-19 Auxiliary application workspace: continuous, explicit and task-led. */
.app-shell .batch-application-page{max-width:1320px!important}
.app-shell .batch-application-page .batch-page-title{align-items:flex-end;margin-bottom:10px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.app-shell .batch-application-page .batch-page-title h1{font-size:24px;line-height:1.25}
.app-shell .batch-application-page .batch-page-actions{flex-direction:row;align-items:center;gap:10px}
.app-shell .batch-application-page .application-form{display:block}
.app-shell .batch-application-page .application-workbench{display:block;padding:0}
.app-shell .batch-application-page .application-context,
.app-shell .batch-application-page .archive-picker,
.app-shell .batch-application-page .application-entry{
  margin:0;padding:26px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none
}
.app-shell .batch-application-page .application-section-head{display:block;margin-bottom:18px}
.app-shell .batch-application-page .application-section-head>div{display:grid;gap:3px}
.app-shell .batch-application-page .application-section-head strong{font-size:18px;line-height:1.4}
.app-shell .batch-application-page .application-section-head small{color:var(--muted);font-size:13px;line-height:1.5}
.app-shell .batch-application-page .application-context .form-row{display:grid;grid-template-columns:1fr 1fr;gap:28px;width:100%;padding:0}
.app-shell .batch-application-page .application-context .form-row label{gap:7px;font-weight:600}
.app-shell .batch-application-page .application-context .form-row input,
.app-shell .batch-application-page .application-context .form-row select{min-height:44px;background:#fff}
/* Archive choices contain multiline records, not fixed-height toolbar buttons.
   Keep natural row heights inside the scroll viewport and reserve an action column. */
.app-shell .batch-application-page .archive-results{
  grid-auto-rows:max-content;align-content:start;gap:8px;overflow-x:hidden
}
.app-shell .batch-application-page .archive-result{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;
  height:auto;min-height:66px;padding:12px;border:0;
  border-radius:0;background:transparent;text-align:left;white-space:normal;line-height:1.6
}
.app-shell .batch-application-page .archive-result>span:first-child{min-width:0;overflow-wrap:anywhere}
.app-shell .batch-application-page .archive-result strong{font-size:14px;font-weight:600;line-height:1.6}
.app-shell .batch-application-page .archive-result small{margin-top:4px;font-size:12px;font-weight:400;line-height:1.5}
.app-shell .batch-application-page .archive-result>span:last-child{
  position:static;transform:none;white-space:nowrap;font-size:12px;
  color:#1769e0;text-decoration:underline;text-underline-offset:3px
}
.app-shell .batch-application-page .archive-result:after{display:none}
.app-shell .batch-application-page .archive-result:not(:disabled):hover{background:transparent}
.app-shell .batch-application-page .archive-result:disabled{background:transparent;color:var(--muted)}
.app-shell .batch-application-page .archive-result:disabled>span:last-child{color:var(--muted);text-decoration:none}
@media(max-width:900px){.app-shell .batch-application-page .archive-results{grid-template-columns:minmax(0,1fr)}}
.app-shell .batch-application-page .entry-section-head{margin-bottom:12px;padding:0;border:0}
.app-shell .batch-application-page .entry-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 16px;padding:0}
.app-shell .batch-application-page .entry-mode-group{display:grid;gap:7px;min-width:300px}
.app-shell .batch-application-page .mode-tabs{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line)}
.app-shell .batch-application-page .mode-tabs button{
  min-height:38px;padding:6px 2px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-weight:500;box-shadow:none
}
.app-shell .batch-application-page .mode-tabs button:hover{border-color:#b8c9e5;background:transparent;color:var(--text)}
.app-shell .batch-application-page .mode-tabs button.active{border-color:#1769e0;background:transparent;color:#1769e0;font-weight:650}
.app-shell .batch-application-page .entry-tools{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.app-shell .batch-application-page .entry-tools>*{min-height:36px}
.app-shell .batch-application-page .entry-tools [hidden]{display:none!important}
.app-shell .batch-application-page .structured-rows{display:grid;gap:0}
.app-shell .batch-application-page .structured-row{padding:18px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none}
.app-shell .batch-application-page .structured-row-head{margin:0 0 16px;padding:0}
.app-shell .batch-application-page .structured-row-head strong{font-size:15px}
.app-shell .batch-application-page .structured-row-head button{min-height:30px;padding:4px 10px}
.app-shell .batch-application-page .segment-input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0}
.app-shell .batch-application-page .segment-input-grid fieldset{
  min-width:0;margin:0;padding:0 18px;border:0;border-left:1px solid var(--line);border-radius:0;background:#fff
}
.app-shell .batch-application-page .segment-input-grid fieldset:first-child{padding-left:0;border-left:0}
.app-shell .batch-application-page .segment-input-grid fieldset:last-child{padding-right:0}
.app-shell .batch-application-page .segment-input-grid legend{margin:0 0 12px;padding:0;color:#344054;font-size:13px;font-weight:650}
.app-shell .batch-application-page .segment-input-grid label{gap:6px;color:#344054;font-size:13px}
.app-shell .batch-application-page .segment-input-grid em{color:var(--red);font-size:11px;font-style:normal;font-weight:500}
.app-shell .batch-application-page .segment-input-grid input,
.app-shell .batch-application-page .segment-input-grid select{min-height:40px;background:#fff}
.app-shell .batch-application-page .composite-segment>span{font-size:13px}
.app-shell .batch-application-page .unsigned-contract-toggle{border:1px solid var(--line);border-radius:6px;background:#fff}
.app-shell .batch-application-page .value-preview{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;margin:16px 0 0;padding:12px 0 0;border-top:1px dashed var(--line);border-radius:0;background:#fff}
.app-shell .batch-application-page .value-preview code{font-family:inherit;color:#344054;line-height:1.55}
.app-shell .batch-application-page .raw-entry-panel{padding:18px 0 0;border-top:1px solid var(--line)}
.app-shell .batch-application-page .raw-entry-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}
.app-shell .batch-application-page .raw-entry-head>div{display:grid;gap:3px}
.app-shell .batch-application-page .raw-entry-head small{color:var(--muted)}
.app-shell .batch-application-page .raw-entry-panel textarea{margin-top:7px;font-family:var(--mono);line-height:1.65}
.app-shell .batch-application-page .sheet-load-failure{display:grid;justify-items:start;gap:6px;padding:28px;border:1px solid var(--line);background:#fff}
.app-shell .batch-application-page .sheet-load-failure span{color:var(--muted)}
.app-shell .batch-application-page .sheet-load-failure button{margin-top:6px}
.app-shell .batch-application-page .application-submit{
  position:static;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0;padding:14px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:#fff;box-shadow:none
}
.app-shell .batch-application-page .application-submit>div{display:grid;gap:2px}
.app-shell .batch-application-page .application-submit #submitBatch{min-width:148px;border-color:#1769e0;background:#1769e0;color:#fff}
.app-shell .batch-application-page .application-submit #submitBatch:hover:not(:disabled){background:#0f5dcc}
.app-shell .batch-application-page .application-submit #submitBatch:disabled{border-color:#d9d9d9;background:#ededed;color:#999}
@media(max-width:820px){
  .app-shell .batch-application-page .batch-page-title,.app-shell .batch-application-page .batch-page-actions,.app-shell .batch-application-page .entry-toolbar,.app-shell .batch-application-page .raw-entry-head{align-items:flex-start;flex-direction:column}
  .app-shell .batch-application-page .application-context .form-row{grid-template-columns:1fr;gap:16px}
  .app-shell .batch-application-page .entry-mode-group,.app-shell .batch-application-page .entry-tools{width:100%}
  .app-shell .batch-application-page .entry-tools{justify-content:flex-start}
  .app-shell .batch-application-page .segment-input-grid{grid-template-columns:1fr;gap:18px}
  .app-shell .batch-application-page .segment-input-grid fieldset,.app-shell .batch-application-page .segment-input-grid fieldset:first-child{padding:0;border:0}
  .app-shell .batch-application-page .application-submit{align-items:stretch;flex-direction:column}
  .app-shell .batch-application-page .application-submit #submitBatch{width:100%}
}

/* Reverse-closing requests: one continuous, line-based financial workspace. */
.reverse-closing-page{max-width:1240px!important}.reverse-closing-page .page-title{margin-bottom:12px}.reverse-closing-page .page-title h1{font-size:24px}.reverse-closing-page .page-title p{margin-top:3px}.reverse-closing-form{background:#fff;border-top:1px solid var(--line)}
.reverse-closing-section{padding:17px 0;border-bottom:1px solid var(--line)}.reverse-closing-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:11px}.reverse-closing-section h2{margin:0;font-size:17px}.reverse-closing-section header p{margin:3px 0 0;color:var(--muted);font-size:12px}.reverse-closing-section-heading{align-items:flex-end!important}.reverse-closing-inline-actions{display:flex;gap:6px}.reverse-closing-info-grid{display:grid;grid-template-columns:minmax(160px,.55fr) minmax(300px,1.45fr) minmax(130px,.45fr);gap:12px}.reverse-closing-info-grid label>span{margin-bottom:5px;font-size:12px}.reverse-closing-info-grid input,.reverse-closing-info-grid select{min-height:40px}.reverse-closing-form-error{margin:0 0 12px}
.reverse-closing-month-grid{display:grid;grid-template-columns:repeat(12,minmax(48px,1fr));gap:6px}.reverse-closing-month-grid label{position:relative;display:block;cursor:pointer}.reverse-closing-month-grid input{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);opacity:0}.reverse-closing-month-grid span{display:flex;align-items:center;justify-content:center;min-height:34px;border:1px solid var(--line-strong);border-radius:5px;background:#fff;color:#344054;font-size:13px;font-weight:600}.reverse-closing-month-grid label:hover span{border-color:#98a2b3;background:var(--surface-soft)}.reverse-closing-month-grid input:focus-visible+span{outline:2px solid #1769e0;outline-offset:2px}.reverse-closing-month-grid input:checked+span{border-color:#1769e0;background:#eef5ff;color:#145fc9}.reverse-closing-month-grid label.has-conflict span{border-color:#df8b83;background:var(--red-soft);color:var(--red)}.reverse-closing-month-summary{margin:8px 0 0;color:#344054;font-size:13px;font-weight:600}.reverse-closing-conflicts{margin-top:8px;padding:8px 10px;border:1px solid #efc5c0;border-radius:5px;background:var(--red-soft);color:#a82c23;font-size:12px}
.reverse-closing-adjustment-table{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reverse-closing-adjustment-head,.reverse-closing-adjustment-row{display:grid;grid-template-columns:minmax(200px,.7fr) minmax(380px,1.3fr) 66px;gap:8px;align-items:center}.reverse-closing-adjustment-head{padding:7px 8px;background:var(--surface-soft);color:var(--muted);font:600 11px var(--mono)}.reverse-closing-adjustment-row{padding:7px 8px;border-top:1px solid var(--line)}.reverse-closing-adjustment-row:first-child{border-top:0}.reverse-closing-adjustment-row input{min-height:36px}.reverse-closing-row-delete{min-height:30px;padding:4px 8px;color:var(--red)}.reverse-closing-submit-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0}.reverse-closing-submit-bar>div{display:grid;gap:1px}.reverse-closing-submit-bar small{font-size:12px}.reverse-closing-submit-bar button{min-width:160px}.reverse-closing-form.is-submitting{cursor:progress}.reverse-closing-form.is-submitting>*:not(.reverse-closing-submit-bar){opacity:.72}
.reverse-closing-tabs{margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--line)}.reverse-closing-filter{display:grid;grid-template-columns:150px 140px minmax(220px,1fr) 180px auto;gap:12px;align-items:end;margin-bottom:18px;padding:16px 0;border-bottom:1px solid var(--line)}.reverse-closing-filter label{color:var(--muted);font-size:12px}.reverse-closing-filter input,.reverse-closing-filter select{min-height:40px}.reverse-closing-filter-actions{display:flex;gap:8px;align-items:center}.reverse-closing-table-wrap{border-radius:8px}.reverse-closing-table{min-width:1120px}.reverse-closing-table td{font-size:13px}.reverse-closing-table td small{margin-top:2px}.reverse-closing-table td:nth-child(3){max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reverse-closing-table .mono{font-size:12px}.status.pending_group,.status.pending_global,.status.active{background:var(--amber-soft);color:var(--amber)}.status.waiting,.status.skipped{background:#eef1f4;color:#5b6672}
.reverse-closing-detail-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-top:1px solid var(--line)}.reverse-closing-detail-summary dl>div{padding:14px 12px;border-bottom:1px solid var(--line)}.reverse-closing-detail-summary dt{color:var(--muted);font-size:12px}.reverse-closing-detail-summary dd{margin:4px 0 0;font-weight:650}.reverse-closing-adjustment-detail{min-width:760px}.reverse-closing-adjustment-detail th:first-child,.reverse-closing-adjustment-detail td:first-child{width:68px;text-align:center}.reverse-closing-adjustment-detail th:nth-child(2){width:30%}.reverse-closing-reason-text{margin:0;white-space:pre-wrap}.reverse-closing-timeline{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.reverse-closing-timeline li{padding:14px 2px;border-bottom:1px solid var(--line)}.reverse-closing-timeline li>div{display:flex;align-items:center;justify-content:space-between;gap:16px}.reverse-closing-timeline li p{margin:5px 0 0;color:var(--muted);font-size:13px}.reverse-closing-decision-bar{position:sticky;z-index:8;bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:13px 15px;border:1px solid var(--line-strong);border-radius:9px;background:#fff}.reverse-closing-decision-bar>div{display:flex;align-items:center;gap:10px}.reverse-closing-decision-bar>div:first-child{display:grid;gap:1px}.reverse-closing-decision-bar form{margin:0}.reverse-closing-reject-dialog{z-index:150;width:min(600px,calc(100vw - 32px));padding:0;border:1px solid var(--line-strong);border-radius:12px;background:#fff}.reverse-closing-reject-dialog::backdrop{background:rgba(17,17,17,.38)}.reverse-closing-reject-dialog form{display:flex;flex-direction:column}.reverse-closing-reject-dialog header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.reverse-closing-reject-dialog h2{margin:0}.reverse-closing-reject-dialog header button{min-width:32px;width:32px;height:32px;padding:0;border:0;background:transparent;font-size:22px}.reverse-closing-reject-dialog label{padding:20px}.reverse-closing-reject-dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--line);background:var(--surface-soft)}
.reverse-closing-access-section>header{align-items:center}.reverse-closing-access-section dl{display:flex;flex-wrap:wrap;gap:24px 48px;margin:0 0 12px}.reverse-closing-access-section dl>div{min-width:180px}.reverse-closing-access-section dt{color:var(--muted);font-size:12px}.reverse-closing-access-section dd{margin:3px 0 0;font-weight:650}.reverse-closing-close-check{display:flex!important;align-items:center;gap:10px}.reverse-closing-close-check input{width:18px;height:18px}.reverse-closing-close-check span{font-weight:650}.reverse-closing-table td:nth-child(7) small{display:block;max-width:170px;color:var(--muted);white-space:normal}
.reverse-closing-page .status.success{background:var(--green-soft);color:var(--green)}.reverse-closing-page .status.warning{background:var(--amber-soft);color:var(--amber)}.reverse-closing-page .status.neutral{background:#eef1f4;color:#5b6672}
.reverse-closing-stat-filter{grid-template-columns:repeat(4,minmax(150px,1fr));}.reverse-closing-stat-filter .reverse-closing-filter-actions{grid-column:4;justify-self:end}.reverse-closing-stat-summary{display:grid;grid-template-columns:1fr 1fr;margin-bottom:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reverse-closing-stat-summary>div{display:flex;align-items:baseline;gap:10px;padding:16px 12px}.reverse-closing-stat-summary>div+div{border-left:1px solid var(--line)}.reverse-closing-stat-summary span{color:var(--muted)}.reverse-closing-stat-summary strong{font:700 26px var(--mono)}.reverse-closing-stat-summary small{display:inline;color:var(--muted)}
@media(max-width:1100px){.reverse-closing-info-grid{grid-template-columns:1fr 1fr}.reverse-closing-info-grid label:last-child{grid-column:1/-1}.reverse-closing-month-grid{grid-template-columns:repeat(6,1fr)}.reverse-closing-filter,.reverse-closing-stat-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.reverse-closing-filter-actions,.reverse-closing-stat-filter .reverse-closing-filter-actions{grid-column:1/-1;justify-self:start}.reverse-closing-detail-summary dl{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.reverse-closing-section>header,.reverse-closing-section-heading,.reverse-closing-submit-bar,.reverse-closing-decision-bar{align-items:stretch!important;flex-direction:column}.reverse-closing-info-grid,.reverse-closing-filter,.reverse-closing-stat-filter,.reverse-closing-detail-summary dl{grid-template-columns:1fr}.reverse-closing-info-grid label:last-child,.reverse-closing-filter-actions,.reverse-closing-stat-filter .reverse-closing-filter-actions{grid-column:auto}.reverse-closing-month-grid{grid-template-columns:repeat(4,1fr)}.reverse-closing-adjustment-head{display:none}.reverse-closing-adjustment-row{grid-template-columns:1fr}.reverse-closing-row-delete{justify-self:start}.reverse-closing-submit-bar button{width:100%}.reverse-closing-stat-summary{grid-template-columns:1fr}.reverse-closing-stat-summary>div+div{border-top:1px solid var(--line);border-left:0}.reverse-closing-decision-bar>div:last-child{display:grid;grid-template-columns:1fr 1fr}.reverse-closing-decision-bar form,.reverse-closing-decision-bar button{width:100%}}
.dt-item-main .dt-similarity-evidence{margin:9px 0 0}
.similarity-evidence{margin:0 15px 12px 53px;padding:10px 0;border-top:1px solid #ead8b4;border-bottom:1px solid #ead8b4}.similarity-evidence>header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.similarity-evidence>header strong{color:#8a5a00;font-size:13px}.similarity-evidence>header small{color:var(--muted);font-size:11px;text-align:right}.similarity-match{padding:9px 10px;border-radius:7px;background:#fffaf0}.similarity-match+.similarity-match{margin-top:7px}.similarity-match>strong{display:block;margin-bottom:6px;font-size:12px}.similarity-match dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.similarity-match dl>div{min-width:0}.similarity-match dt{margin-bottom:2px;color:var(--muted);font-size:10px}.similarity-match dd{margin:0;color:#1d2939;font-size:12px;font-weight:650;line-height:1.45;overflow-wrap:anywhere}.similarity-archive{display:block;margin-top:6px;color:#667085;line-height:1.45;overflow-wrap:anywhere}.similarity-match p{margin:6px 0 0;color:#7a4b00;font-size:11px;line-height:1.5}.similarity-match p b{font-weight:700}.similarity-model-reasons{display:grid;gap:3px;margin-top:6px;padding-top:6px;border-top:1px solid #ead8b4}.similarity-model-reasons small{color:#667085;line-height:1.45}.similarity-model-reasons b{color:#475467}.dt-item-main .similarity-evidence,.queue-review-evidence .similarity-evidence{margin:4px 0 0}.queue-review-evidence .similarity-evidence{padding:9px 0}.queue-review-actions{justify-content:center}.queue-review-actions .danger,.queue-review-actions .primary{min-width:64px}@media(max-width:520px){.similarity-evidence{margin-left:15px}.similarity-evidence>header{align-items:flex-start;flex-direction:column;gap:2px}.similarity-evidence>header small{text-align:left}.similarity-match dl{grid-template-columns:1fr}}
