:root{--page-bg:#eaf5ff;--surface:rgba(255,255,255,.62);--surface-strong:rgba(255,255,255,.82);--surface-soft:rgba(245,250,255,.66);--control:rgba(255,255,255,.72);--text:#172335;--text-2:#607184;--text-3:#9aa9b8;--line:rgba(82,122,153,.16);--line-hi:rgba(255,255,255,.92);--blue:#2478ff;--blue-hover:#1168ec;--blue-soft:rgba(36,120,255,.1);--green:#2ff17d;--green-deep:#15a957;--red:#ff4e59;--black-button:#1d1d1f;--black-button-hover:#353538;--shadow-main:0 24px 68px rgba(33,76,111,.14);--shadow-card:0 10px 28px rgba(36,79,111,.07);--shadow-card-hover:0 14px 34px rgba(36,79,111,.1)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei UI",sans-serif;color:var(--text)}body{background:radial-gradient(circle at 7% 5%,rgba(81,167,255,.28),transparent 30%),radial-gradient(circle at 92% 8%,rgba(47,241,125,.1),transparent 22%),radial-gradient(circle at 89% 96%,rgba(36,120,255,.12),transparent 25%),linear-gradient(145deg,#eaf5ff,#f7fbff 58%,#e8f3ff);min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(rgba(74,128,165,.12) .5px,transparent .5px);background-size:16px 16px;opacity:.28}.app-shell{position:relative;height:100vh;min-height:700px;padding:8px;display:grid;grid-template-columns:190px minmax(560px,1fr);gap:8px}.glass{background:radial-gradient(ellipse at -10% -14%,rgba(255,255,255,.88),transparent 58%),radial-gradient(ellipse at 116% 118%,rgba(255,255,255,.44),transparent 54%),var(--surface);border:1px solid var(--line-hi);border-radius:28px;box-shadow:inset 1px 1px 0 rgba(255,255,255,.9),var(--shadow-main);backdrop-filter:blur(32px) saturate(155%)}.sidebar{padding:16px 12px}.brand{display:flex;align-items:center;gap:10px;padding:0 4px 20px;font-size:19.5px;font-weight:760}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#fff;color:var(--blue);box-shadow:var(--shadow-card);font-size:21px}.sidebar nav{display:grid;gap:6px}.nav-item{position:relative;display:flex;align-items:center;height:43px;padding:0 12px;border-radius:13px;color:var(--text-2);font-size:18px;font-weight:600;text-decoration:none;transition:background 180ms,transform 180ms}.nav-item:hover{background:rgba(255,255,255,.7);transform:translateX(2px)}.nav-item.selected{background:rgba(255,255,255,.75);font-weight:750;color:var(--text)}.nav-item.selected:before{content:"";position:absolute;left:2px;width:3px;height:22px;border-radius:3px;background:var(--green);box-shadow:0 0 9px rgba(47,241,125,.35)}.workspace{overflow:auto;padding:20px 22px;display:flex;flex-direction:column;gap:13px}.page-heading h1{margin:0;font-size:33px;line-height:1.2;font-weight:780}.page-heading p{margin:7px 0 0;color:var(--text-2);font-size:14px}.card{border-radius:20px;background:var(--surface-strong);border:1px solid rgba(255,255,255,.9);box-shadow:inset 1px 1px 0 rgba(255,255,255,.95),var(--shadow-card)}.form-card{padding:15px 16px}.form-card h2{margin:0 0 12px;font-size:21px;font-weight:740}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 13px}.field-grid label{display:grid;gap:6px;font-size:15px;font-weight:680}.field-grid label span{color:var(--text-2)}.field-full{grid-column:1/-1}input:not([type=checkbox]),textarea{width:100%;min-height:40px;padding:8px 12px;border:1px solid rgba(50,91,124,.14);border-radius:12px;background:var(--control);color:var(--text);font:400 16.5px -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei UI",sans-serif;outline:none}textarea{resize:vertical}input:focus,textarea:focus,button:focus-visible,a:focus-visible{border-color:var(--green);box-shadow:0 0 0 3px rgba(47,241,125,.12)}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px}.check-grid label{display:flex;align-items:center;gap:8px;min-height:39px;font-size:16px}.check-grid input{accent-color:var(--blue);width:17px;height:17px}.action-bar{padding:11px;display:flex;justify-content:flex-end;gap:8px}.button{min-height:39px;padding:0 15px;border-radius:11px;font-size:16.5px;font-weight:750;border:1px solid transparent;cursor:pointer;transition:transform 180ms,background 180ms}.button:hover{transform:translateY(-1px)}.button:active{transform:scale(.99)}.button.primary{background:var(--black-button);color:#fff}.button.primary:hover{background:var(--black-button-hover)}.button.secondary{background:var(--control);color:var(--text-2);border-color:var(--line)}@media(max-width:900px){.app-shell{grid-template-columns:166px minmax(560px,1fr)}}@media(max-width:760px){.app-shell{height:auto;min-height:100vh;display:block}.sidebar{margin-bottom:8px}.sidebar nav{grid-template-columns:repeat(3,1fr)}.nav-item{font-size:14px}.workspace{overflow:visible}.field-grid,.check-grid{grid-template-columns:1fr}.field-full{grid-column:auto}}
.nav-item{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;font-family:inherit}.sidebar{display:flex;flex-direction:column}.sidebar-account{margin-top:auto;padding:12px 8px;display:grid;gap:5px;color:var(--text-2);font-size:13px;overflow-wrap:anywhere}.sidebar-account strong{color:var(--text);font-size:14px}.sidebar-account a{color:var(--blue);text-decoration:none}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.button.blue{background:var(--blue);color:#fff}.button.blue:hover{background:var(--blue-hover)}.button.success{background:rgba(47,241,125,.12);border-color:rgba(21,169,87,.25);color:var(--green-deep)}.button.danger{background:rgba(255,78,89,.07);border-color:rgba(255,78,89,.23);color:var(--red)}.button:disabled,input:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}.link-button{display:inline-flex;align-items:center;text-decoration:none}.signin-card{padding:18px}.signin-card h1{margin:0;font-size:33px}.signin-card p{color:var(--text-2)}.signin-card .button{margin-top:12px}.other-input{margin-top:8px}.list-card,.log-card,.review-card{padding:14px 15px}.list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.list-head h2,.review-card h2{margin:0;font-size:21px;font-weight:740}.list-head span{color:var(--text-3);font-size:12px;font-weight:800}.record-list,.event-list{max-height:420px;overflow:auto;border-radius:14px;background:rgba(236,245,252,.72);padding:8px}.record-row{min-height:55px;padding:8px 11px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.record-row+.record-row{border-top:1px solid var(--line)}.record-button{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;font-family:inherit;color:var(--text)}.record-button:hover{background:#fff}.record-row strong{font-size:16px}.record-row small{display:block;margin-top:5px;color:var(--text-2);font-size:13px}.status{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:9px;background:var(--blue-soft);color:var(--blue);white-space:nowrap;font-size:13px;font-weight:760}.status-approved{background:rgba(47,241,125,.1);color:var(--green-deep)}.status-rejected{background:rgba(255,78,89,.08);color:var(--red)}.status-returned,.status-draft{background:rgba(96,113,132,.1);color:var(--text-2)}.empty{margin:20px;text-align:center;color:var(--text-2)}.review-card label{display:grid;gap:6px;margin-top:12px;font-size:15px;font-weight:680;color:var(--text-2)}.review-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.event{padding:8px 11px;font-size:13px;line-height:1.55}.event+.event{border-top:1px solid var(--line)}.event>div{display:flex;gap:12px;flex-wrap:wrap}.event strong{font-weight:760}.event span{color:var(--text-2)}.event p{margin:5px 0 0;color:var(--text-2);overflow-wrap:anywhere}.near-status{margin:0;padding:0 5px;font-size:13.5px;font-weight:760}.near-status.error{color:var(--red)}.near-status.success-text{color:var(--green-deep)}.inline-field{display:flex;gap:8px}.inline-field input{flex:1}.inline-field button{white-space:nowrap}@media(max-width:760px){.sidebar-account{margin-top:12px}.page-heading{align-items:flex-start;flex-direction:column}.inline-field{flex-direction:column}.review-actions{flex-wrap:wrap}}
[hidden]{display:none!important}#editor-view,#list-view,#users-view,#dingtalk-view{display:flex;flex-direction:column;gap:13px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:8px}.login-panel{width:min(440px,100%);padding:28px}.login-panel h1{font-size:33px;margin:0 0 20px}.login-panel label{display:grid;gap:6px;margin:0 0 13px;font-size:15px;font-weight:680;color:var(--text-2)}.login-panel .button{width:100%;margin-top:7px}.login-panel .near-status{min-height:20px;margin-top:12px}.plain-link{border:0;background:transparent;padding:0;text-align:left;font:inherit;color:var(--blue);cursor:pointer}.permission-label{display:flex;align-items:center;gap:8px;min-height:39px;font-size:15px;color:var(--text-2)}.permission-label input{width:17px;height:17px;accent-color:var(--blue)}.record-row .button{font-size:13px;min-height:33px;padding:0 10px}.record-row .permission-label{font-size:13px;min-height:33px}.user-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-actions .button{white-space:nowrap}#work-message:empty{display:none}#workbench .workspace{min-width:0}@media(max-width:760px){.login-panel{padding:20px}.user-actions{justify-content:flex-start}}

.field-grid select{width:100%;min-height:40px;padding:8px 12px;border:1px solid rgba(50,91,124,.14);border-radius:12px;background:var(--control);color:var(--text);font:400 16.5px -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei UI",sans-serif;outline:none}.field-grid select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.sidebar-account small{display:block;margin-top:3px;color:var(--text-2);font-size:12px}.role-heading{padding:12px 10px 5px;font-size:13px;font-weight:800;color:var(--text-2)}
.user-actions select{min-height:39px;padding:0 10px;border:1px solid var(--line);border-radius:11px;background:var(--control);color:var(--text);font:600 14px "Microsoft YaHei UI",sans-serif}.user-actions select:focus{outline:2px solid var(--blue)}

/* 审批单填写区按原 A4 表格顺序呈现；外围仍保留蓝白玻璃工作台。 */
.template-sheet{padding:16px 18px 13px;background:rgba(255,255,255,.84)}
.template-title{margin:0 0 14px;text-align:center;font-size:25px;line-height:1.3;font-weight:730;letter-spacing:2px;color:var(--text)}
.template-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid rgba(82,122,153,.22);background:#fff}
.template-form{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed;background:rgba(255,255,255,.96)}
.template-form col{width:16.666%}
.template-form th,.template-form td{border:1px solid rgba(76,106,135,.46);vertical-align:middle}
.template-form th{padding:8px 6px;background:rgba(234,245,255,.58);text-align:center;font-size:15px;font-weight:700;white-space:nowrap}
.template-form td{padding:4px 9px;min-height:45px}
.template-short{height:51px}.template-medium{height:61px}.template-tall{height:78px}
.template-form input:not([type=checkbox]),.template-form textarea{width:100%;min-height:32px;padding:4px 5px;border:1px solid transparent;border-radius:7px;background:transparent;box-shadow:none;color:var(--text);font-size:15.5px}
.template-form input.centered-value{text-align:center}
.template-form textarea{min-height:48px;line-height:1.5;resize:vertical}
.template-form input:not([type=checkbox]):focus,.template-form textarea:focus{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 2px rgba(36,120,255,.10)}
.template-form :disabled{opacity:.82;cursor:default}
.template-dates{display:flex;align-items:center;gap:4px}.template-dates input{min-width:0;flex:1}.template-dates span{flex:none;color:var(--text-2);font-size:14px}
.template-options{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;min-height:40px}
.template-options label{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:15px;cursor:pointer}
.template-options input{width:16px;height:16px;margin:0;accent-color:var(--blue)}
.template-form .template-other{width:min(360px,100%);margin-top:5px;border-bottom:1px solid rgba(76,106,135,.45);border-radius:0}
.template-blank{background:rgba(255,255,255,.85)}
.template-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
@media(max-width:800px){.template-sheet{padding:12px}.template-title{font-size:21px}.template-form{min-width:820px}.template-form th{font-size:14px}.template-options label{font-size:14px}}

.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}.template-statusbar{min-height:39px}.template-statusbar p{margin:0;font-size:14px;color:var(--text-2)}
.draft-list-item{display:flex;align-items:center;gap:8px;padding:2px;border-bottom:1px solid var(--line)}.draft-list-item:last-child{border-bottom:0}.draft-list-item .record-button{flex:1;min-width:0}.draft-remove{flex:none;min-height:33px;padding:0 10px;font-size:13px;white-space:nowrap}
.user-management-card{padding:14px 15px}.user-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:12px;padding:5px;border:1px solid var(--line);border-radius:14px;background:rgba(234,245,255,.7)}.user-tab{position:relative;min-height:42px;border:0;border-radius:10px;background:transparent;color:var(--text-2);font:650 16px "Microsoft YaHei UI",sans-serif;cursor:pointer}.user-tab span{display:inline-flex;justify-content:center;min-width:23px;margin-left:5px;padding:2px 6px;border-radius:8px;background:rgba(96,113,132,.09);font-size:12px}.user-tab:hover{background:rgba(255,255,255,.62)}.user-tab.selected{background:rgba(255,255,255,.9);box-shadow:var(--shadow-card);color:var(--text);font-weight:780}.user-tab.selected:after{content:"";position:absolute;left:25%;right:25%;bottom:3px;height:3px;border-radius:3px;background:var(--green)}.user-directory{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:rgba(245,250,255,.72)}.user-tab-summary{display:flex;align-items:baseline;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.72)}.user-tab-summary h3{margin:0;font-size:18px}.user-tab-summary p{margin:0;color:var(--text-2);font-size:13px}.user-group-empty{margin:0;padding:22px 14px;color:var(--text-3);font-size:14px;text-align:center}.user-table-scroll{overflow-x:auto}.user-table{min-width:1200px}.user-management-row{display:grid;grid-template-columns:minmax(145px,1fr) 82px minmax(245px,1.35fr) 120px minmax(290px,1.65fr) 170px;align-items:center;gap:10px;min-height:60px;padding:9px 12px;background:rgba(255,255,255,.48)}.user-management-row+.user-management-row{border-top:1px solid var(--line)}.user-management-head{min-height:36px;padding-top:6px;padding-bottom:6px;background:rgba(234,245,255,.82);color:var(--text-2);font-size:12px;font-weight:800}.user-identity{min-width:0}.user-identity strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.user-identity small{display:block;margin-top:4px;color:var(--text-3);font-size:11px}.account-state{display:inline-flex;align-items:center;width:max-content;min-height:25px;padding:0 8px;border-radius:8px;background:rgba(47,241,125,.1);color:var(--green-deep);font-size:12px;font-weight:760}.account-state.inactive{background:rgba(96,113,132,.1);color:var(--text-2)}.user-management-row select{width:100%;min-height:36px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:var(--control);color:var(--text);font:600 14px "Microsoft YaHei UI",sans-serif;outline:none}.user-management-row select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.password-reset,.dingtalk-user-binding,.user-operation-actions{display:flex;align-items:center;gap:6px}.password-reset input,.dingtalk-user-binding input{min-width:0;min-height:36px;padding:6px 9px;font-size:14px}.password-reset .button,.dingtalk-user-binding .button,.user-operation-actions .button,.user-management-row>.button{flex:none;min-height:36px;padding:0 10px;font-size:13px;white-space:nowrap}.fixed-role{font-size:14px;font-weight:700}.unavailable-action{color:var(--text-3);font-size:13px}.user-management-row input:disabled{opacity:.55}@media(max-width:760px){.user-management-card{padding:12px}.user-tab{font-size:14px}.user-tab-summary{display:grid;gap:3px}.user-table{min-width:1160px}}
.user-import-card{display:grid;gap:12px}.user-import-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.user-import-heading h2{margin-bottom:5px}.user-import-heading p{margin:0;color:var(--text-2);font-size:14px;line-height:1.55}.user-import-heading .button{flex:none}.user-import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 13px}.user-import-grid label{display:grid;gap:6px;color:var(--text-2);font-size:15px;font-weight:680}.user-file-picker{display:flex!important;align-items:center;gap:8px;min-height:40px;padding:4px 7px;border:1px solid rgba(50,91,124,.14);border-radius:12px;background:var(--control)}.user-file-picker .button{flex:none;min-height:30px;padding:0 11px;font-size:13px}.user-file-picker>span:last-child{min-width:0;overflow:hidden;color:var(--text-2);font-size:14px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.password-input-row{display:flex!important;align-items:center;gap:7px}.password-input-row input{min-width:0;flex:1}.password-input-row .button{flex:none;min-width:72px}.user-import-card .action-bar{padding:0}.user-import-card #user-import-status{min-height:20px}.user-import-result{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:rgba(245,250,255,.72)}.user-import-summary{margin:0;padding:10px 12px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.74);color:var(--text-2);font-size:13px;font-weight:700}.user-import-table-scroll{max-height:300px;overflow:auto}.user-import-table{width:100%;min-width:720px;border-collapse:collapse;font-size:13px}.user-import-table th,.user-import-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left}.user-import-table th{position:sticky;z-index:1;top:0;background:#eef7ff;color:var(--text-2);font-size:12px;font-weight:800}.user-import-table tr:last-child td{border-bottom:0}.user-import-table td:nth-child(1){width:62px}.user-import-table td:nth-child(3){font-variant-numeric:tabular-nums}.user-import-state{font-weight:760}.user-import-state.valid{color:var(--green-deep)}.user-import-state.invalid{color:var(--red)}@media(max-width:760px){.user-import-heading{display:grid}.user-import-grid{grid-template-columns:1fr}.user-import-heading .button{width:100%}.password-input-row{align-items:stretch}.user-import-card .action-bar{flex-wrap:wrap}.user-import-card .action-bar .button{flex:1}}
.dingtalk-review-card p,.settings-note{margin:8px 0 0;color:var(--text-2);font-size:14px;line-height:1.65}.dingtalk-enable-label{align-content:start}.dingtalk-check{display:flex!important;align-items:center;gap:8px;min-height:40px;color:var(--text)!important;font-size:16px;font-weight:600}.dingtalk-check input{width:18px;height:18px;accent-color:var(--blue)}.dingtalk-settings-card #dingtalk-status{min-height:20px;margin-top:4px}
.record-tabs{display:grid;gap:6px;padding:5px;border:1px solid var(--line);border-radius:14px;background:rgba(234,245,255,.7)}.record-tabs.mine-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.record-tabs.review-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.record-tab{position:relative;display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border:0;border-radius:10px;background:transparent;color:var(--text-2);font:650 16px "Microsoft YaHei UI",sans-serif;cursor:pointer}.record-tab strong{display:inline-flex;justify-content:center;min-width:23px;padding:2px 6px;border-radius:8px;background:rgba(96,113,132,.09);font-size:12px}.record-tab:hover{background:rgba(255,255,255,.62)}.record-tab.selected{background:rgba(255,255,255,.9);box-shadow:var(--shadow-card);color:var(--text);font-weight:780}.record-tab.selected:after{content:"";position:absolute;left:25%;right:25%;bottom:3px;height:3px;border-radius:3px;background:var(--green)}@media(max-width:760px){.record-tabs.mine-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.record-tab{font-size:14px}}
.account-actions{display:flex;gap:10px;flex-wrap:wrap}.password-dialog{width:min(450px,calc(100vw - 24px));padding:0;border:1px solid var(--line-hi);border-radius:22px;background:radial-gradient(ellipse at 0 0,rgba(255,255,255,.96),transparent 62%),rgba(245,250,255,.94);box-shadow:var(--shadow-main);color:var(--text);backdrop-filter:blur(28px)}.password-dialog::backdrop{background:rgba(23,35,53,.24);backdrop-filter:blur(4px)}.password-dialog form{display:grid;gap:13px;padding:22px}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dialog-heading h2{margin:0;font-size:24px}.dialog-heading p{margin:5px 0 0;color:var(--text-2);font-size:13px}.dialog-close{border:0;background:transparent;color:var(--blue);font:650 14px "Microsoft YaHei UI",sans-serif;cursor:pointer}.password-dialog label{display:grid;gap:6px;color:var(--text-2);font-size:14px;font-weight:680}.password-dialog input{width:100%}.password-dialog .near-status{min-height:20px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}
.reviewer-assignment{display:grid;grid-template-columns:auto minmax(220px,360px) 1fr;align-items:center;gap:8px 12px;margin:0 0 12px;padding:10px 12px;border:1px solid rgba(36,120,255,.16);border-radius:13px;background:var(--blue-soft)}.reviewer-assignment label{font-size:15px;font-weight:760}.reviewer-assignment select{min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--control);color:var(--text);font:600 15px "Microsoft YaHei UI",sans-serif;outline:none}.reviewer-assignment select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.reviewer-assignment span{color:var(--text-2);font-size:13px}.reviewer-assignment select:disabled{opacity:.72;cursor:not-allowed}@media(max-width:800px){.reviewer-assignment{grid-template-columns:1fr}.reviewer-assignment select{width:100%}}

/* 差旅费报销单：网页中保持纸质表格的字段顺序，小屏幕可横向查看。 */
#reimbursement-view{display:flex;flex-direction:column;gap:13px}.reimbursement-heading p{max-width:700px}.reimbursement-source{display:grid;grid-template-columns:auto minmax(260px,440px) auto 1fr;align-items:center;gap:8px 12px;padding:10px 12px;border:1px solid rgba(36,120,255,.16);border-radius:13px;background:var(--blue-soft)}.reimbursement-source label{font-size:15px;font-weight:760}.reimbursement-source select{min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--control);color:var(--text);font:600 15px "Microsoft YaHei UI",sans-serif;outline:none}.reimbursement-source select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(47,241,125,.12)}.reimbursement-source select:disabled{opacity:.62}.reimbursement-source span{color:var(--text-2);font-size:13px}.allowance-toggle{min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:10px;background:var(--control);color:var(--text-2);font:750 14px "Microsoft YaHei UI",sans-serif;white-space:nowrap;cursor:pointer;transition:transform 180ms,background 180ms,color 180ms}.allowance-toggle:hover:not(:disabled){transform:translateY(-1px)}.allowance-toggle[aria-pressed="true"]{border-color:transparent;background:var(--blue);color:#fff}.allowance-toggle:disabled{opacity:.5;cursor:not-allowed}.reimbursement-sheet{padding:16px 18px 14px;background:rgba(255,255,255,.9)}.reimbursement-title{margin:0 0 10px;text-align:center;font:730 27px/1.3 "Microsoft YaHei UI",sans-serif;letter-spacing:9px}.reimbursement-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:7px;padding:0 4px;color:var(--text);font-size:15px}.reimbursement-meta label,.reimbursement-report-date{display:flex;align-items:center;gap:5px;white-space:nowrap}.reimbursement-meta input:not([type=checkbox]){width:55px;min-height:28px;padding:2px 4px;border:0;border-bottom:1px solid rgba(42,55,67,.62);border-radius:0;background:transparent;text-align:center;font-size:15px;box-shadow:none}.reimbursement-report-date input:first-child{width:72px}.reimbursement-table-wrap{overflow-x:auto;border:1px solid rgba(42,55,67,.48);border-radius:5px;background:#fff}.reimbursement-form{width:100%;min-width:1180px;border-collapse:collapse;table-layout:fixed;background:#fff;color:#24303d;font-size:13px}.reimbursement-form .reimbursement-date-column{width:3.8%}.reimbursement-form .reimbursement-route-column{width:6.8%}.reimbursement-form .reimbursement-days-column{width:5.4%}.reimbursement-form .reimbursement-meal-column{width:5.8%}.reimbursement-form .reimbursement-cost-column{width:7.15%}.reimbursement-form .reimbursement-narrow-column{width:4.8%}.reimbursement-form .reimbursement-total-column{width:5%}.reimbursement-form .reimbursement-note-column{width:10%}.reimbursement-form th,.reimbursement-form td{height:39px;padding:0;border:1px solid rgba(42,55,67,.55);vertical-align:middle;text-align:center}.reimbursement-form thead th{padding:4px 3px;background:rgba(234,245,255,.42);font-weight:600;line-height:1.45}.reimbursement-form .reimbursement-owner-row th,.reimbursement-form .reimbursement-owner-row td{height:45px;font-size:15px}.reimbursement-form tbody td{height:43px}.reimbursement-form input:not([type=checkbox]){width:100%;height:100%;min-height:0;padding:3px 4px;border:1px solid transparent;border-radius:0;background:transparent;box-shadow:none;text-align:center;font-size:13px}.reimbursement-form input[readonly]{color:var(--text);background:rgba(234,245,255,.34);cursor:default}.reimbursement-form input:focus{border-color:var(--blue);background:var(--blue-soft);box-shadow:inset 0 0 0 1px rgba(36,120,255,.12)}.reimbursement-signatures{display:grid;grid-template-columns:1.45fr 1fr .8fr .85fr;gap:25px;padding:9px 4px 0;font-size:14px}.reimbursement-signatures label{display:flex;align-items:center;white-space:nowrap}.reimbursement-signatures input:not([type=checkbox]){min-width:0;min-height:30px;padding:2px 3px;border:0;border-bottom:1px solid rgba(42,55,67,.55);border-radius:0;background:transparent;box-shadow:none;font-size:14px}@media(max-width:800px){.reimbursement-source{grid-template-columns:1fr}.reimbursement-source select,.allowance-toggle{width:100%}.reimbursement-sheet{padding:12px}.reimbursement-title{font-size:22px;letter-spacing:6px}.reimbursement-form{min-width:1080px}.reimbursement-meta{align-items:flex-start;flex-direction:column}.reimbursement-signatures{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}}@media(max-width:520px){.reimbursement-signatures{grid-template-columns:1fr}}
.reimbursement-total-cell{position:relative}.reimbursement-total-cell input[data-column="total"]{padding-left:12px;font-weight:700;font-variant-numeric:tabular-nums}.reimbursement-grand-total-cell input[data-column="total"]{background:rgba(36,120,255,.09);color:#172335;font-weight:800}.reimbursement-grand-brace{position:absolute;z-index:3;top:0;left:1px;width:10px;height:430px;overflow:visible;pointer-events:none;transform:scaleX(-1);transform-origin:center}.reimbursement-grand-brace path{fill:none;stroke:#25384a;stroke-width:1.45;vector-effect:non-scaling-stroke}
.reimbursement-source .reimbursement-save-status{grid-column:2/-1;color:var(--text-2);font-weight:700}.reimbursement-source .reimbursement-save-status.saving{color:var(--blue)}.reimbursement-source .reimbursement-save-status.saved{color:var(--green-deep)}.reimbursement-source .reimbursement-save-status.error{color:var(--red)}@media(max-width:800px){.reimbursement-source .reimbursement-save-status{grid-column:1}}

/* 登录页：仅保留登录所需内容。 */
.login-wrap{position:relative;min-height:100vh;padding:16px;overflow:auto;background:#f4f7fb}.login-wrap:before,.login-wrap:after{display:none}.login-panel.login-panel-simple{width:min(390px,100%);margin:0;padding:34px 32px 28px;border:1px solid rgba(82,122,153,.14);border-radius:18px;background:#fff;box-shadow:0 14px 38px rgba(33,76,111,.1);backdrop-filter:none}.login-simple-brand{display:flex;align-items:center;justify-content:center;margin-bottom:28px}.login-simple-brand strong{font-size:25px;font-weight:760;letter-spacing:.04em}.login-panel-simple label{display:grid;gap:7px;margin:0 0 14px;color:var(--text-2);font-size:14px;font-weight:680}.login-panel-simple input:not([type=checkbox]){min-height:46px;padding:10px 12px;border:1px solid rgba(50,91,124,.16);border-radius:10px;background:#f8fbfe;font-size:16px}.login-panel-simple input:not([type=checkbox])::placeholder{color:var(--text-3)}.login-panel-simple .button{width:100%;min-height:46px;margin-top:5px;border-radius:10px;font-size:16px}.login-panel-simple .near-status{display:flex;align-items:center;min-height:24px;margin:7px 0 0;padding:0;font-size:13px}.login-panel-simple .near-status:empty{visibility:hidden}.login-panel-simple input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #f8fbfe inset;-webkit-text-fill-color:var(--text)}@media(max-width:520px){.login-wrap{padding:10px}.login-panel.login-panel-simple{padding:28px 22px 22px;border-radius:16px}.login-simple-brand{margin-bottom:24px}.login-simple-brand strong{font-size:23px}}

@media print{
  @page{size:A4 landscape;margin:21mm 23mm 21mm 36mm}
  body.reimbursement-printing{background:#fff!important;color:#000!important}.reimbursement-printing:before,.reimbursement-printing .sidebar,.reimbursement-printing #editor-view,.reimbursement-printing #list-view,.reimbursement-printing #users-view,.reimbursement-printing #dingtalk-view,.reimbursement-printing .reimbursement-heading,.reimbursement-printing .reimbursement-source,.reimbursement-printing #work-message{display:none!important}.reimbursement-printing #workbench,.reimbursement-printing .app-shell,.reimbursement-printing .workspace,.reimbursement-printing #reimbursement-view{display:block!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;backdrop-filter:none!important}.reimbursement-printing .reimbursement-sheet{width:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.reimbursement-printing .reimbursement-title{margin:0 0 2.5mm;font:700 18pt/1.1 SimSun,"Microsoft YaHei UI",sans-serif;letter-spacing:4mm}.reimbursement-printing .reimbursement-meta{min-width:0;margin:0 0 1.5mm;padding:0;font:10pt/1.1 SimSun,"Microsoft YaHei UI",sans-serif}.reimbursement-printing .reimbursement-meta input:not([type=checkbox]){min-height:5mm;height:5mm;font:10pt SimSun,"Microsoft YaHei UI",sans-serif}.reimbursement-printing .reimbursement-table-wrap{overflow:visible;border:0;border-radius:0}.reimbursement-printing .reimbursement-form{min-width:0;width:100%;font:8.3pt/1.25 SimSun,"Microsoft YaHei UI",sans-serif}.reimbursement-printing .reimbursement-form th,.reimbursement-printing .reimbursement-form td{height:5.3mm;border:.35mm solid #333}.reimbursement-printing .reimbursement-form .reimbursement-owner-row th,.reimbursement-printing .reimbursement-form .reimbursement-owner-row td{height:6.3mm;font-size:9pt}.reimbursement-printing .reimbursement-form thead th{padding:.4mm .2mm;background:#fff!important}.reimbursement-printing .reimbursement-form tbody td{height:7.2mm}.reimbursement-printing .reimbursement-form input:not([type=checkbox]){padding:.2mm;border:0!important;background:#fff!important;color:#000!important;font:8pt SimSun,"Microsoft YaHei UI",sans-serif}.reimbursement-printing .reimbursement-grand-brace{width:2mm;height:72mm;left:.2mm}.reimbursement-printing .reimbursement-grand-brace path{stroke:#000;stroke-width:.8}.reimbursement-printing .reimbursement-signatures{grid-template-columns:1.45fr 1fr .8fr .85fr;gap:5mm;min-width:0;padding:1.7mm 0 0;font:9pt SimSun,"Microsoft YaHei UI",sans-serif}.reimbursement-printing .reimbursement-signatures input:not([type=checkbox]){min-height:4mm;height:4mm;border:0;font:9pt SimSun,"Microsoft YaHei UI",sans-serif}
}
@media print{.reimbursement-printing .reimbursement-total-cell input[data-column="total"]{padding-left:2.4mm!important}}
