body.is-locked{overflow:hidden}.is-locked #appShell{filter:blur(14px);pointer-events:none;user-select:none}.auth-gate{position:fixed;z-index:100;inset:0;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);background:#f7faff}.auth-gate.hidden{display:none}.auth-visual{position:relative;overflow:hidden;padding:clamp(42px,7vw,105px);background:radial-gradient(circle at 18% 18%,#168eff 0,#096cdf 30%,#09285f 74%,#071839 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between}.auth-visual:after{content:"";position:absolute;width:560px;height:560px;border:1px solid #ffffff22;border-radius:50%;right:-150px;bottom:-180px;box-shadow:0 0 0 65px #ffffff0b,0 0 0 130px #ffffff08}.auth-visual img{position:relative;z-index:2;width:210px;filter:brightness(0) invert(1)}.auth-visual>div{position:relative;z-index:2;max-width:640px}.auth-visual .hero-badge{color:#9ee9ff}.auth-visual h1{font-size:clamp(44px,5vw,76px);line-height:1.05;letter-spacing:-.07em;margin:18px 0}.auth-visual h1 em{color:#6ee9ff;font-style:normal}.auth-visual p{font-size:16px;color:#d6e8ff;line-height:1.8}.auth-glow{position:absolute;border-radius:50%;filter:blur(2px)}.auth-glow.one{width:230px;height:230px;background:#34d9ff22;top:18%;right:12%}.auth-glow.two{width:110px;height:110px;background:#fff2;bottom:15%;left:14%}.login-card{width:min(430px,calc(100% - 52px));align-self:center;justify-self:center;background:#fff;border:1px solid #e5ebf5;border-radius:26px;padding:44px;box-shadow:0 30px 90px #234b8d20}.login-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-size:23px;font-weight:950;box-shadow:0 12px 28px #0878ff40;margin-bottom:25px}.login-card h2{font-size:30px;letter-spacing:-.04em;margin:7px 0}.login-card>p{color:var(--muted);line-height:1.7;margin:0 0 28px}.login-card label{display:block;color:#536078;font-size:12px;font-weight:800;margin-top:16px}.login-card input{width:100%;height:48px;margin-top:7px;border:1px solid var(--line);border-radius:12px;padding:0 14px;outline:0;background:#fbfcfe}.login-card input:focus{border-color:#8fc5ff;box-shadow:0 0 0 4px #0878ff12}.login-submit{width:100%;height:48px;margin-top:12px}.login-card small{display:block;text-align:center;color:#abb4c5;margin-top:24px}.form-error{min-height:20px;color:#cc4242;font-size:11px;margin-top:10px}
.user-chip{padding:8px 11px;border:1px solid #dfe8f4;border-radius:999px;background:#f8fbff;color:#68758e;font-size:11px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:10px;width:38px;height:38px;color:#65738d;cursor:pointer}.pill.error{color:#a33b3b;background:#ffe7e7}.batch-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:14px}.batch-metrics span{padding:8px;border:1px solid #e9edf4;border-radius:9px;color:#8a95a8;font-size:9px;background:#fafbfd}.batch-metrics b{display:block;color:#35425d;font-size:14px;margin-top:2px}.v3-toolbar{align-items:center}.toolbar-main-actions{display:flex;gap:8px}.toolbar-main-actions select{height:41px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:#fff;color:#58657d}.filter-panel{display:grid;grid-template-columns:1.5fr 1fr 1fr repeat(4,.82fr) 1fr 1.35fr auto;gap:9px;align-items:end;padding:16px 24px;border-top:1px solid var(--line);background:#fafcff}.filter-panel label{font-size:9px;font-weight:800;color:#7c879c}.filter-panel input,.filter-panel select{width:100%;height:38px;margin-top:5px;border:1px solid #dfe5ef;border-radius:9px;background:#fff;padding:0 10px;color:#46536d;outline:0}.filter-panel input:focus,.filter-panel select:focus{border-color:#8fc5ff;box-shadow:0 0 0 3px #0878ff0e}.filter-buttons{display:flex;gap:6px}.filter-buttons button{height:38px;padding:0 12px}.table-wrap table{min-width:1380px}.party-cell strong,.party-cell span{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-cell span{color:#8a95aa;font-size:10px;margin-top:4px}.money-cell{font-variant-numeric:tabular-nums;white-space:nowrap}.meta-line{color:#96a0b2;font-size:9px;margin-top:4px}.status{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:850;white-space:nowrap}.status.pending,.status.processing{background:#e4f5ff;color:#086a8c}.status.reviewing{background:#fff2d9;color:#986000}.status.confirmed,.status.exported{background:#daf5e7;color:#087148}.status.failed,.status.duplicate{background:#ffe7e7;color:#ad3535}.row-actions{min-width:158px;flex-wrap:wrap}.detail,.retry-row,.download-row,.delete-row{height:29px;border:0;border-radius:8px;padding:0 9px;font-size:10px;font-weight:800;cursor:pointer}.retry-row{background:#fff2d9;color:#9b6500}.download-row{background:#e9f8f2;color:#087148;text-decoration:none;display:inline-flex;align-items:center}.delete-row{width:29px;padding:0}.pagination{display:flex;justify-content:space-between;align-items:center;padding:15px 24px;color:#7f8ba1;font-size:11px;border-top:1px solid var(--line)}.pagination>div{display:flex;align-items:center;gap:8px}.pagination button,.pagination select{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 10px;color:#59667e}.pagination button:disabled{opacity:.45;cursor:not-allowed}.pagination b{font-variant-numeric:tabular-nums}
.review-dialog{width:min(1240px,95vw);max-height:92vh}.dialog-head-status{display:flex;align-items:center;gap:14px}.review-layout{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(520px,1.08fr);min-height:650px;max-height:calc(92vh - 82px);overflow:auto}.source-pane{padding:23px;background:#f7f9fc;border-right:1px solid var(--line)}.pane-title{display:flex;align-items:center;justify-content:space-between}.pane-title h3{margin:0 0 12px}.text-link{color:var(--brand);font-size:11px;text-decoration:none}.source-pane .preview{height:430px;background:#e8edf4}.source-pane details{margin-top:14px}.source-pane summary{color:#69768d;font-size:11px;cursor:pointer}.source-pane textarea{width:100%;height:170px;margin-top:9px;border:1px solid var(--line);border-radius:9px;padding:10px;line-height:1.6;resize:vertical}.field-pane{padding:23px;display:flex;flex-direction:column}.structured-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.structured-form label{font-size:10px;font-weight:800;color:#707d94}.structured-form label.span2{grid-column:span 2}.structured-form input,.structured-form select{display:block;width:100%;height:41px;margin-top:5px;border:1px solid var(--line);border-radius:9px;padding:0 10px;background:#fff;color:#273550;outline:0}.structured-form input:focus,.structured-form select:focus{border-color:#7fbcff;box-shadow:0 0 0 3px #0878ff10}.structured-form label.has-warning{color:#c33d3d}.structured-form label.has-warning input,.structured-form label.has-warning select{border-color:#e45b5b;background:#fff8f8}.validation-box{display:none;margin-bottom:15px;padding:12px 14px;border:1px solid #ffd1d1;border-radius:10px;background:#fff7f7;color:#a23b3b;font-size:11px;line-height:1.65}.validation-box.show{display:block}.validation-box strong{display:block;margin-bottom:4px}.review-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:auto;padding-top:20px}.download-link{text-decoration:none;display:inline-flex;align-items:center}.download-link.hidden{display:none}.duplicate-dialog{width:min(560px,92vw)}.duplicate-body{padding:28px;text-align:center}.duplicate-alert{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 14px;border-radius:50%;background:#fff0e7;color:#e46d2d;font-size:28px;font-weight:900}.duplicate-body p{font-size:16px;font-weight:850}.duplicate-body small{color:#8a95a8;line-height:1.6}.duplicate-comparison{display:grid;grid-template-columns:1fr 1fr;gap:9px;text-align:left;margin:18px 0}.duplicate-comparison div{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fafcff}.duplicate-comparison b,.duplicate-comparison span{display:block}.duplicate-comparison span{font-size:10px;color:#8792a5;line-height:1.6;margin-top:5px}.duplicate-actions{display:flex;justify-content:flex-end;gap:9px;padding:17px 24px;border-top:1px solid var(--line)}.danger-btn{border:1px solid #ffd1d1;border-radius:10px;background:#fff5f5;color:#b84242;padding:10px 15px;font-weight:750;cursor:pointer}
@media(max-width:1300px){.filter-panel{grid-template-columns:repeat(5,1fr)}.filter-buttons{grid-column:span 2}.review-layout{grid-template-columns:1fr 1.15fr}.structured-form{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.auth-gate{display:block;padding:24px;overflow:auto;background:linear-gradient(160deg,#0a71e7 0,#f7faff 36%)}.auth-visual{min-height:250px;border-radius:24px;padding:30px;margin-bottom:18px}.auth-visual img{width:145px}.auth-visual h1{font-size:36px;margin:14px 0 8px}.auth-visual p{font-size:12px}.login-card{width:100%;padding:28px;border-radius:22px}.head-actions .user-chip,.head-actions #passwordBtn,.head-actions #logoutBtn{display:none}.batch-metrics{grid-template-columns:repeat(4,1fr)}.v3-toolbar{align-items:flex-start}.toolbar-main-actions{width:100%;flex-wrap:wrap}.filter-panel{grid-template-columns:1fr 1fr;padding:14px}.filter-panel label:first-child{grid-column:span 2}.filter-buttons{grid-column:span 2}.filter-buttons button{flex:1}.pagination{align-items:flex-start;gap:12px;flex-direction:column}.pagination>div{width:100%;justify-content:space-between}.review-dialog{width:96vw;max-height:95vh}.review-layout{display:block;max-height:calc(95vh - 75px)}.source-pane{border:0;border-bottom:1px solid var(--line)}.source-pane .preview{height:310px}.field-pane{padding:18px}.structured-form{grid-template-columns:1fr 1fr}.structured-form label.span2{grid-column:span 2}.review-actions{position:sticky;bottom:-1px;background:#fff;padding:13px 0}.duplicate-comparison{grid-template-columns:1fr}}

.hidden{display:none!important}.team-dialog{width:min(1240px,95vw);max-height:92vh}.team-dialog .dialog-head p{margin:5px 0 0;color:#7b8699;font-size:11px}.team-dialog-body{max-height:calc(92vh - 94px);overflow:auto;padding:22px;background:#f7f9fc}.team-section{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;margin-bottom:16px;box-shadow:0 8px 28px #263f6e0a}.team-section:last-child{margin-bottom:0}.team-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:15px}.team-section-head h3{margin:0 0 5px;font-size:16px}.team-section-head p{margin:0;color:#8792a5;font-size:10px;line-height:1.6}.member-create-form{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.25fr 1.2fr .9fr auto;gap:9px;align-items:end;padding:13px;border-radius:11px;background:#f5f9ff;border:1px solid #dfeeff;margin-bottom:15px}.member-create-form label{font-size:10px;font-weight:800;color:#68758d}.member-create-form input,.member-create-form select,.member-row-input,.member-row-select{display:block;width:100%;height:37px;margin-top:5px;border:1px solid #dce4ef;border-radius:8px;padding:0 9px;background:#fff;color:#33415d;outline:0}.member-create-form input:focus,.member-create-form select:focus,.member-row-input:focus,.member-row-select:focus{border-color:#83beff;box-shadow:0 0 0 3px #0878ff10}.member-create-form .form-error{grid-column:1/-2;margin:0;align-self:center}.member-create-form .primary{height:37px;padding:0 13px}.team-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:11px}.team-table-wrap table{min-width:940px}.team-table-wrap th{position:sticky;top:0;z-index:1}.team-table-wrap td{vertical-align:middle}.team-member-name strong,.team-member-name span{display:block}.team-member-name span{color:#8a95a8;font-size:10px;margin-top:3px}.member-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap}.member-status input{width:auto}.member-save{height:32px;padding:0 11px}.member-save:disabled{opacity:.5;cursor:wait}.member-current{color:var(--brand);font-size:9px;font-weight:850}.audit-table-wrap{max-height:330px}.audit-table-wrap table{min-width:980px}.audit-detail{max-width:330px;color:#7b879a;font-family:Consolas,"Microsoft YaHei",sans-serif;font-size:10px;white-space:normal;word-break:break-word}.audit-empty{text-align:center;color:#8792a5;padding:28px}.team-loading{text-align:center;color:#8792a5;padding:26px}
@media(max-width:1100px){.member-create-form{grid-template-columns:repeat(3,1fr)}.member-create-form .form-error{grid-column:1/3}.member-create-form .primary{justify-self:stretch}}
@media(max-width:800px){.head-actions #teamBtn{display:inline-flex;padding:8px 10px}.team-dialog{width:96vw;max-height:95vh}.team-dialog .dialog-head{padding:16px}.team-dialog-body{padding:10px;max-height:calc(95vh - 82px)}.team-section{padding:12px}.member-create-form{grid-template-columns:1fr}.member-create-form .form-error{grid-column:auto}.member-create-form .primary,.team-section-head .outline-btn,.team-table-wrap .member-save{display:inline-flex}.team-section-head{align-items:center}.team-table-wrap table{min-width:860px}}

.account-dialog{width:min(760px,94vw);max-height:92vh}.account-dialog .dialog-head p{margin:5px 0 0;color:#7b8699;font-size:11px}.account-dialog-body{max-height:calc(92vh - 96px);overflow:auto;padding:24px;background:#f7f9fc}.account-profile{display:grid;grid-template-columns:1fr 1.25fr 1.25fr;gap:10px}.account-profile>div{padding:16px;border:1px solid #e1e8f2;border-radius:13px;background:#fff}.account-profile span,.account-profile strong{display:block}.account-profile span{color:#8994a7;font-size:9px;font-weight:800}.account-profile strong{margin-top:6px;color:#24334f;font-size:12px;word-break:break-word}.account-actions{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:14px 0}.account-action{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #dfe8f4;border-radius:13px;background:#fff;text-align:left;cursor:pointer;color:#263650}.account-action:hover{border-color:#91c6ff;box-shadow:0 8px 24px #0878ff0e}.account-action:disabled{opacity:.55;cursor:wait}.account-action-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:12px;background:#e8f4ff;color:var(--brand);font-size:18px;font-weight:900}.account-action strong,.account-action small{display:block}.account-action small{margin-top:4px;color:#8792a5;line-height:1.5}.account-links{display:flex;flex-wrap:wrap;gap:8px;padding:13px 0 20px}.account-links a{padding:7px 10px;border-radius:999px;background:#edf3fb;color:#41628d;font-size:10px;text-decoration:none}.account-danger{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:10px;align-items:end;padding:18px;border:1px solid #ffd8d8;border-radius:14px;background:#fff8f8}.account-danger h3{margin:4px 0;color:#9f3232}.account-danger p{margin:0;color:#9b6a6a;font-size:10px;line-height:1.55}.account-danger label{font-size:9px;font-weight:800;color:#9a5a5a}.account-danger input{width:100%;height:38px;margin-top:5px;border:1px solid #eccccc;border-radius:8px;padding:0 9px;background:#fff}.account-danger .form-error{grid-column:2/4;margin:0}.account-danger .danger-btn{height:38px;white-space:nowrap}.account-danger .danger-btn:disabled{opacity:.55;cursor:wait}
@media(max-width:800px){.head-actions #accountBtn{display:inline-flex;padding:8px 10px}.account-dialog{width:96vw;max-height:95vh}.account-dialog .dialog-head{padding:16px}.account-dialog-body{max-height:calc(95vh - 85px);padding:12px}.account-profile{grid-template-columns:1fr}.account-actions{grid-template-columns:1fr}.account-danger{grid-template-columns:1fr}.account-danger .form-error{grid-column:auto}.account-danger .danger-btn{display:inline-flex;justify-content:center}.account-links{padding-bottom:14px}}
