/* BESFUL 采购计划单（产品页“我要采购”与购买页入口调用） */
.bf-procure,.bf-procure *{box-sizing:border-box;}
.bf-procure [hidden]{display:none!important;}
.bf-procure-modal{position:fixed;inset:0;z-index:10020;font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;color:#2f3e4c;}
.bf-procure-backdrop{position:absolute;inset:0;background:rgba(12,29,43,.58);backdrop-filter:blur(2px);}
.bf-procure-dialog{position:relative;width:min(880px,calc(100vw - 36px));max-height:90vh;margin:5vh auto 0;background:#f5f8fb;border-radius:10px;box-shadow:0 22px 70px rgba(0,0,0,.3);overflow:auto;}
.bf-procure-dialog>header{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px 17px;background:linear-gradient(135deg,#2e5276,#2e78a8);color:#fff;}
.bf-procure-dialog h2{font-size:21px;font-weight:600;}.bf-procure-dialog header p{margin-top:5px;font-size:12px;color:rgba(255,255,255,.78);}
.bf-procure-x{width:34px;height:34px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:transparent;color:#fff;font-size:25px;line-height:28px;cursor:pointer;}
.bf-procure-head-actions{display:flex;align-items:center;gap:14px;margin-left:18px;}.bf-procure-lookup-link{border:1px solid rgba(255,255,255,.42);border-radius:4px;padding:7px 11px;background:rgba(255,255,255,.08);color:#fff;font-size:12px;cursor:pointer;white-space:nowrap;}.bf-procure-lookup-link:hover{background:rgba(255,255,255,.18);}
.bf-procure-section-side{display:flex;align-items:center;gap:14px;}.bf-procure-text-btn{border:0;padding:0;background:transparent;color:#2e78a8;font-size:12px;cursor:pointer;}.bf-procure-text-btn:hover{text-decoration:underline;}
.bf-procure-body{padding:20px 24px 24px;}.bf-procure-pending{padding:16px;margin-bottom:20px;border:1px solid #bcd6e6;border-radius:7px;background:#eaf4fa;}
.bf-procure-pending-info{display:flex;align-items:center;gap:14px;}.bf-procure-pending-info img{width:64px;height:64px;object-fit:contain;background:#fff;border:1px solid #d8e4eb;border-radius:5px;}.bf-procure-pending-info strong{display:block;font-size:15px;color:#245578;}.bf-procure-pending-info span{display:block;margin-top:5px;font-size:12px;color:#6c7f8d;}
.bf-procure-pending-action{display:flex;align-items:flex-end;justify-content:flex-end;gap:12px;margin-top:14px;}.bf-procure-pending-action label{font-size:13px;color:#536b7b;}.bf-procure-pending-action input{display:block;width:130px;height:38px;margin-top:5px;padding:0 10px;border:1px solid #b9cbd7;border-radius:4px;background:#fff;}
.bf-procure-btn{border:0;border-radius:5px;padding:11px 20px;background:#2e78a8;color:#fff;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;}.bf-procure-btn:hover{background:#245f86;}.bf-procure-btn:disabled{opacity:.55;cursor:wait;}
.bf-procure-section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:18px 0 10px;}.bf-procure-section-title strong{font-size:15px;color:#2e5276;}.bf-procure-section-title span{font-size:12px;color:#7d8c97;}
.bf-procure-items{border:1px solid #dce5ec;border-radius:6px;background:#fff;overflow:hidden;}.bf-procure-item{display:grid;grid-template-columns:1fr 128px 58px;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #edf1f4;}.bf-procure-item:last-child{border-bottom:0;}.bf-procure-item-name{min-width:0;}.bf-procure-item-name a{display:block;color:#2c4d64;font-size:13px;line-height:1.5;text-decoration:none;}.bf-procure-item-name a:hover{color:#2e78a8;text-decoration:underline;}.bf-procure-item-name small{display:block;color:#95a1aa;font-size:11px;margin-top:2px;}.bf-procure-qty{display:flex;align-items:center;gap:5px;font-size:12px;color:#788894;}.bf-procure-qty input{width:72px;height:32px;padding:0 7px;border:1px solid #cad8e1;border-radius:4px;}.bf-procure-remove{border:0;background:transparent;color:#a07171;font-size:12px;cursor:pointer;}.bf-procure-remove:hover{color:#c33;}
.bf-procure-empty{padding:28px 15px;text-align:center;border:1px dashed #c8d6df;border-radius:6px;background:#fff;color:#8797a2;font-size:13px;}
#bfProcureForm{margin-top:4px;}.bf-procure-contact{display:grid;grid-template-columns:1fr 1fr;gap:13px 18px;padding:16px;border:1px solid #dfe7ed;border-radius:6px;background:#fff;}.bf-procure-contact label{font-size:12px;color:#596d7a;}.bf-procure-contact label b,.bf-procure-lookup-form label b{color:#c94d42;}.bf-procure-contact input,.bf-procure-contact textarea{display:block;width:100%;margin-top:6px;padding:9px 10px;border:1px solid #cbd9e2;border-radius:4px;background:#fff;color:#2e3e49;font-size:13px;line-height:1.5;}.bf-procure-contact input:focus,.bf-procure-contact textarea:focus{border-color:#2e78a8;outline:2px solid rgba(46,120,168,.1);}.bf-procure-wide{grid-column:1/-1;}.bf-procure-submit{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;}.bf-procure-submit>span{font-size:11px;color:#8a969e;}.bf-procure-msg{min-height:20px;margin-top:10px;color:#c04438;font-size:12px;}.bf-procure-success{padding:34px 20px;text-align:center;background:#fff;border:1px solid #cde3d4;border-radius:7px;}.bf-procure-success>strong{color:#27834b;font-size:20px;}.bf-procure-success p{margin:12px 0;color:#526b5a;}.bf-procure-success>span{color:#7b8c81;font-size:13px;}
.bf-procure-back{margin-bottom:14px;}.bf-procure-lookup h3{font-size:19px;font-weight:600;color:#2e5276;}.bf-procure-lookup>p{margin-top:7px;color:#71838f;font-size:12px;line-height:1.8;}.bf-procure-lookup-form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;margin-top:18px;padding:17px;border:1px solid #dfe7ed;border-radius:6px;background:#fff;}.bf-procure-lookup-form label{font-size:12px;color:#596d7a;}.bf-procure-lookup-form input{display:block;width:100%;height:40px;margin-top:6px;padding:0 10px;border:1px solid #cbd9e2;border-radius:4px;}.bf-procure-lookup-form input:focus{border-color:#2e78a8;outline:2px solid rgba(46,120,168,.1);}
.bf-procure-lookup-result{margin-top:16px;padding:20px;border:1px solid #d7e3eb;border-radius:7px;background:#fff;}.bf-procure-result-head{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding-bottom:16px;border-bottom:1px solid #e6edf2;}.bf-procure-result-head span{display:block;color:#8796a0;font-size:11px;}.bf-procure-result-head strong{display:block;margin-top:5px;color:#2e5276;font-size:15px;}.bf-procure-result-contact{margin:15px 0;color:#657985;font-size:12px;}.bf-procure-result-contact strong{color:#334f63;}.bf-procure-lookup-result table{width:100%;border-collapse:collapse;font-size:13px;}.bf-procure-lookup-result th,.bf-procure-lookup-result td{padding:11px 10px;border:1px solid #e1e8ed;text-align:left;}.bf-procure-lookup-result th{background:#f1f6f9;color:#526b7b;font-weight:500;}.bf-procure-lookup-result th:first-child,.bf-procure-lookup-result td:first-child{width:55px;text-align:center;}.bf-procure-lookup-result th:last-child,.bf-procure-lookup-result td:last-child{width:110px;text-align:center;}.bf-procure-result-message{margin-top:15px;color:#647985;font-size:12px;}.bf-procure-result-message p{margin-top:5px;white-space:pre-wrap;line-height:1.7;}
.bf-procure-toast{position:fixed;left:50%;bottom:42px;z-index:10040;transform:translateX(-50%);padding:11px 20px;border-radius:6px;background:rgba(28,52,68,.94);color:#fff;box-shadow:0 6px 24px rgba(0,0,0,.2);font-size:13px;}
@media(max-width:700px){.bf-procure-dialog{width:100%;max-width:calc(100vw - 20px);max-height:92vh;margin-top:4vh;}.bf-procure-dialog>header{padding:16px;}.bf-procure-dialog header p{display:none;}.bf-procure-head-actions{gap:8px;margin-left:10px;}.bf-procure-lookup-link{padding:6px 8px;font-size:11px;}.bf-procure-body{padding:16px;}.bf-procure-contact,.bf-procure-lookup-form{grid-template-columns:1fr;padding:13px;}.bf-procure-wide{grid-column:auto;}.bf-procure-pending-action,.bf-procure-submit{align-items:stretch;flex-direction:column;}.bf-procure-pending-action .bf-procure-btn,.bf-procure-submit .bf-procure-btn{width:100%;}.bf-procure-section-title{align-items:flex-start;flex-direction:column;gap:4px;}.bf-procure-item{grid-template-columns:minmax(0,1fr) 96px 40px;gap:7px;padding:11px 9px;}.bf-procure-result-head{grid-template-columns:1fr;}}
