
:root{font-family:-apple-system,BlinkMacSystemFont,'Microsoft YaHei',system-ui,sans-serif;color:#20252e;background:#f3f5f8}*{box-sizing:border-box}body{margin:0}.wrap{max-width:1050px;margin:auto;padding:14px 12px 70px}header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:15px}header h1{font-size:20px;margin:0}small,.muted{color:#738092}small{font-size:12px}.panel{background:#fff;border:1px solid #e1e5e9;padding:15px;border-radius:12px;margin-bottom:12px}h2{font-size:16px;margin:0 0 12px}input,select,textarea{width:100%;padding:10px 11px;border:1px solid #cfd5dd;border-radius:8px;font:inherit;background:white;min-width:0;font-size:15px}textarea{min-height:55px}label{display:block;font-size:13px;font-weight:650;margin-bottom:5px}button{border:1px solid #cbd2dc;background:#fff;color:#26313d;border-radius:8px;padding:9px 12px;font-size:14px;cursor:pointer}button.primary{background:#2769ce;border-color:#2769ce;color:white}button.danger{color:#bd2f3d}button:disabled{opacity:.42;cursor:not-allowed}button.tiny{font-size:12px;padding:6px 9px}.fields{display:grid;grid-template-columns:1fr 150px;gap:12px}.flex{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.grow{flex:1}.right{margin-left:auto}.tablewrap{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{background:#f4f6f8;text-align:left;font-size:12px;color:#5b6877;padding:9px 5px}.table td{padding:8px 4px;border-bottom:1px solid #e9edf1;vertical-align:top}.table .n{width:25px;color:#89919d;font-size:13px;padding-top:19px}.rowinput{min-width:170px}.rowtools{display:flex;gap:5px;flex-wrap:wrap}.thumbs{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}.thumbs img{width:58px;height:58px;object-fit:cover;border-radius:5px;border:1px solid #dce2e8;cursor:pointer}.thumbs .photo{position:relative}.thumbs .photo button{position:absolute;right:-4px;top:-5px;padding:0;width:20px;height:20px;border-radius:50%;background:#fff;color:#b32931;font-size:12px}.hint{font-size:12px;color:#727f8e;line-height:1.6;margin-top:6px}.ok{color:#138b52}.warn{color:#ae5b00}.err{color:#c03434}.hidden{display:none!important}.pill{font-size:12px;background:#eff3f8;color:#465468;padding:5px 9px;border-radius:15px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.modal{position:fixed;inset:0;z-index:30;background:#000b;display:none;align-items:center;justify-content:center;padding:12px}.modal.show{display:flex}.dialog{width:min(100%,570px);max-height:93vh;overflow:auto;background:#fff;border-radius:14px;padding:12px}.viewer{width:100%;max-height:77vh;object-fit:contain}.videoBox{height:300px;background:#141b27;border-radius:8px;position:relative;overflow:hidden}.videoBox video{width:100%;height:100%;object-fit:cover}.videoBox:after{content:"";position:absolute;inset:20% 10%;border:2px solid #33d090;border-radius:12px;pointer-events:none}.candidate{display:block;text-align:left;width:100%;margin-top:6px;overflow-wrap:anywhere}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#243042;color:white;padding:11px 15px;border-radius:9px;z-index:99;display:none;max-width:90vw}.status{font-size:12px;padding:5px 8px;border-radius:6px;background:#eff5fa}.history{display:flex;flex-direction:column;gap:7px}.record{padding:9px;border:1px solid #e2e5ea;border-radius:8px;display:flex;align-items:center;gap:12px;justify-content:space-between}.record strong{font-size:14px}.tabs{display:flex;gap:5px;margin-bottom:12px}.tabs button.active{background:#2769ce;color:#fff;border-color:#2769ce}.login{max-width:400px;margin:10vh auto}.login h1{font-size:22px}.login input{margin-bottom:12px}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.drop{border:1px dashed #adb7c3;padding:12px;border-radius:8px;background:#f8fafc}#imagePreview{max-width:100%}@media(max-width:640px){.wrap{padding:10px 9px 65px}.panel{padding:11px}.fields{grid-template-columns:1fr 108px}header h1{font-size:18px}.table td{padding:7px 3px}.table th{padding:7px 3px}.rowinput{min-width:135px}.rowtools button{padding:6px 7px;font-size:12px}.table .n{width:20px}input,select{padding:9px 7px;font-size:14px}.grid{grid-template-columns:1fr}.videoBox{height:250px}}
