/* Compact, guided vendor RFI workflow. Applies only to project-card modal. */
.vendor-rfi-modal.vendor-rfi-wizard[open]{
 width:min(820px,95vw);
 height:min(540px,89dvh);
 max-width:95vw;max-height:89dvh;
 display:flex;flex-direction:column;
 overflow:hidden;
 border-radius:13px;
 box-shadow:0 26px 85px #10253f66;
}
.vendor-rfi-wizard .vendor-workflow-header{
 padding:12px 18px;min-height:70px;
 background:linear-gradient(110deg,#f8fbfd,#fff);
 color:#1d3650;
 border-bottom:1px solid #e1e9ee;box-shadow:none;
 gap:10px;flex:none
}
.vendor-rfi-wizard .vendor-workflow-mark{
 background:#e4efff;border:1px solid #c9dbed;color:#345d91;
 width:38px;height:38px;border-radius:11px;
 box-shadow:inset 0 1px 0 #fff;flex:none;font-size:18px
}
.vendor-rfi-wizard .vendor-workflow-header small{display:none}
.vendor-rfi-wizard .vendor-workflow-header h2{
 color:#193552;font-size:17px;letter-spacing:-.25px;margin:0 0 3px;
 font-weight:830
}
.vendor-rfi-wizard .vendor-workflow-header p{
 color:#627b91;font-size:11px;line-height:1.4;margin:0
}
.vendor-rfi-wizard .vendor-workflow-close{
 color:#45647e;background:#fff;border:1px solid #d4e2ea;
 font-size:20px;width:30px;height:30px;margin-left:auto
}
.vendor-rfi-wizard .vendor-workflow-close:hover{color:#1d496a;background:#f1f7fb}
.vendor-rfi-wizard .vendor-workflow-body{
 flex:1;min-height:0;overflow:auto;
 padding:0 18px 12px;
 background:#fff
}
.vendor-rfi-wizard .vendor-rfi-modal-editor{min-height:0}
.vendor-rfi-wizard #vendor-rfi-modal-editor>.v30-page{
 background:transparent!important;padding:0!important;margin:0!important;
 max-width:none!important;min-height:0
}
.vendor-rfi-wizard #vendor-rfi-modal-editor .v30-panel{
 border:0!important;box-shadow:none!important;
 padding:0!important;margin:0!important;
 max-width:none!important
}
.vendor-rfi-wizard #vendor-rfi-modal-editor #vendor-rfi-history,
.vendor-rfi-wizard #vendor-rfi-modal-editor .v30-title{display:none!important}
.vendor-rfi-wizard .rfi-wizard-message:empty{display:none}
.vendor-rfi-wizard .rfi-wizard-message:not(:empty){
 margin:10px 0 0;font-size:11px;padding:8px 10px;
 border-radius:7px;background:#e9f4f7;color:#236075
}
.vendor-rfi-wizard .rfi-wizard-message.is-error{
 color:#a33f31;background:#fff0ee;border-left:3px solid #d56d5d
}
.vendor-rfi-wizard .rfi-wizard-stepper{
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
 margin:0 0 14px;border-bottom:1px solid #e1eaf1
}
.vendor-rfi-wizard .rfi-wizard-step{
 display:flex;align-items:center;justify-content:center;
 min-width:0;gap:6px;padding:12px 5px 10px;
 font-size:10px;line-height:1.3;text-align:center;color:#8391a3;
 border-bottom:2px solid transparent
}
.vendor-rfi-wizard .rfi-wizard-step.is-active{
 border-bottom-color:#174579;color:#1f4b79;font-weight:820
}
.vendor-rfi-wizard .rfi-wizard-step.is-complete{color:#177f79}
.vendor-rfi-wizard .rfi-step-index{
 display:grid;place-items:center;flex:none;
 width:18px;height:18px;font-size:9px;
 font-weight:800;border-radius:50%;
 background:#eaf0f5;color:#657d92
}
.vendor-rfi-wizard .rfi-wizard-step.is-active .rfi-step-index{
 color:white;background:#14538a
}
.vendor-rfi-wizard .rfi-wizard-step.is-complete .rfi-step-index{
 color:#fff;background:#14877e
}
.vendor-rfi-wizard [hidden]{display:none!important}
.vendor-rfi-wizard .rfi-wizard-pages{min-height:0}
.vendor-rfi-wizard .rfi-wizard-page{max-width:100%;padding:0 1px 12px}
.vendor-rfi-wizard .rfi-wizard-page h3{
 font-size:14px;color:#243b56;margin:1px 0 6px
}
.vendor-rfi-wizard .rfi-wizard-step-copy{
 color:#72869a;font-size:11px;line-height:1.5;margin:0 0 14px
}
.vendor-rfi-wizard .rfi-wizard-intro-grid{
 display:grid;grid-template-columns:minmax(0,1.16fr) minmax(220px,.94fr);
 gap:19px;align-items:start
}
.vendor-rfi-wizard .rfi-wizard-main-fields{
 display:flex;flex-direction:column;gap:12px
}
.vendor-rfi-wizard #vendor-rfi-form label.field{
 display:flex;flex-direction:column;gap:5px;
 font-size:11px;font-weight:750;color:#334e69;
 min-width:0;line-height:1.3
}
.vendor-rfi-wizard #vendor-rfi-form .field input:not([type=file]),
.vendor-rfi-wizard #vendor-rfi-form .field select,
.vendor-rfi-wizard #vendor-rfi-form .field textarea{
 min-height:38px;border-radius:7px;
 border:1px solid #cbdbea;
 padding:8px 11px;font:inherit;font-size:11px;
 box-shadow:inset 0 1px 2px #17324b0a;background:#fff
}
.vendor-rfi-wizard #vendor-rfi-form .field textarea{
 min-height:138px;resize:vertical;font-size:12px;line-height:1.55
}
.vendor-rfi-wizard #vendor-rfi-form .field input:focus,
.vendor-rfi-wizard #vendor-rfi-form .field select:focus,
.vendor-rfi-wizard #vendor-rfi-form .field textarea:focus{
 border-color:#397caf;box-shadow:0 0 0 3px #3c92ce1c;outline:0
}
.vendor-rfi-wizard .rfi-wizard-side{display:grid;gap:9px}
.vendor-rfi-wizard .rfi-number-card{
 background:linear-gradient(120deg,#eff5fc,#e8f0fc);
 border:1px solid #dae6f4;border-radius:9px;padding:12px 14px;
 box-shadow:0 1px 5px #244e7910
}
.vendor-rfi-wizard .rfi-number-card span{
 font-size:10px;display:block;color:#365675;margin:0 0 4px
}
.vendor-rfi-wizard .rfi-number-card strong{
 display:block;color:#1a3b61;font-size:12px;letter-spacing:.1px;
 overflow-wrap:anywhere
}
.vendor-rfi-wizard .rfi-number-card p{
 margin:7px 0 0;font-size:10px;line-height:1.4;color:#667f96
}
.vendor-rfi-wizard .rfi-wizard-info-note{
 display:flex;align-items:flex-start;gap:9px;
 padding:12px 13px;background:#e8f3ff;
 border:1px solid #c9def7;border-radius:8px;
 color:#2c6191;font-size:10px;line-height:1.55
}
.vendor-rfi-wizard .rfi-wizard-info-note span{font-size:17px;line-height:1;flex:none}
.vendor-rfi-wizard .rfi-wizard-info-note p{margin:0}
.vendor-rfi-wizard #vendor-rfi-form fieldset{
 padding:10px 12px!important;margin:0 0 12px!important;
 border:1px solid #d9e5ee!important;border-radius:8px!important;
 background:#f8fbfe
}
.vendor-rfi-wizard #vendor-rfi-form fieldset legend{
 font-size:11px;font-weight:800;color:#2c4e6a
}
.vendor-rfi-wizard #vendor-rfi-form fieldset label{
 font-size:11px;margin:3px 15px 3px 0!important
}
.vendor-rfi-wizard #vendor-rfi-form #rfi-create-fields,
.vendor-rfi-wizard #vendor-rfi-form #rfi-upload-fields{
 margin:9px 0!important;padding:12px!important;
 border:1px solid #e1eaf1!important;border-radius:9px!important;
 background:#fbfdff
}
.vendor-rfi-wizard .rfi-wizard-upload-note{
 padding:11px 14px;border-radius:8px;
 background:#edf4fa;color:#43657f;
 font-size:11px;line-height:1.5
}
.vendor-rfi-wizard .rfi-wizard-upload-note p{margin:4px 0 0}
.vendor-rfi-wizard #vendor-rfi-form input[type=file]{
 background:#f4f9fd;border:1px dashed #bad2e4;
 border-radius:8px;padding:13px;font-size:11px;
 max-width:100%;width:100%
}
.vendor-rfi-wizard #vendor-rfi-form .subtle{font-size:10px;line-height:1.5;margin:8px 0 0}
.vendor-rfi-wizard .rfi-wizard-photo-fields{
 padding:12px;margin:10px 0;border:1px dashed #bed3e1;
 background:#f8fbfd;border-radius:8px
}
.vendor-rfi-wizard .rfi-wizard-review{
 border:1px solid #e0e9f0;border-radius:9px;
 overflow:hidden;background:#fff
}
.vendor-rfi-wizard .rfi-wizard-review-row{
 display:grid;grid-template-columns:155px minmax(0,1fr);
 gap:14px;padding:9px 11px;font-size:11px;
 border-bottom:1px solid #e6eef3;line-height:1.4
}
.vendor-rfi-wizard .rfi-wizard-review-row:last-child{border-bottom:0}
.vendor-rfi-wizard .rfi-wizard-review-row:nth-child(odd){background:#f7fafc}
.vendor-rfi-wizard .rfi-wizard-review-row dt{
 font-weight:780;color:#42627a
}
.vendor-rfi-wizard .rfi-wizard-review-row dd{
 margin:0;color:#1c3e57;overflow-wrap:anywhere;white-space:pre-wrap
}
.vendor-rfi-wizard .rfi-wizard-review-notice{
 background:#eaf5fc;color:#3b6886;border-radius:8px;
 padding:10px 12px;font-size:10px;line-height:1.5;margin-top:12px
}
.vendor-rfi-wizard .vendor-workflow-footer{
 flex:none;min-height:58px;padding:10px 16px;
 border-top:1px solid #dde7ee;background:linear-gradient(#fff,#f8fafc);
 display:flex;align-items:center;justify-content:space-between;gap:10px
}
.vendor-rfi-wizard .rfi-wizard-footer-actions{
 display:flex;align-items:center;gap:9px
}
.vendor-rfi-wizard .vendor-workflow-footer button{
 border-radius:7px;min-height:36px;
 padding:8px 12px;font-size:11px;
 font-weight:760;cursor:pointer
}
.vendor-rfi-wizard .rfi-wizard-cancel,
.vendor-rfi-wizard .rfi-wizard-back{
 background:#fff;color:#2a4861;border:1px solid #c4d4e0
}
.vendor-rfi-wizard .rfi-wizard-next,
.vendor-rfi-wizard #vendor-rfi-send{
 background:linear-gradient(160deg,#25588e,#0d3569);
 border:1px solid #164a80;color:#fff;
 font-weight:820;box-shadow:0 3px 7px #16385729
}
.vendor-rfi-wizard .rfi-wizard-next:hover,
.vendor-rfi-wizard #vendor-rfi-send:hover{filter:brightness(1.08)}
.vendor-rfi-wizard #vendor-rfi-send:disabled{opacity:.56;cursor:wait}
.vendor-rfi-wizard .rfi-wizard-success{text-align:center;padding:38px 20px}
.vendor-rfi-wizard .rfi-wizard-success-icon{
 margin:0 auto 13px;width:46px;height:46px;border-radius:50%;
 display:grid;place-items:center;background:#def6e9;
 color:#0d8666;font-size:26px;font-weight:900
}
.vendor-rfi-wizard .rfi-wizard-success h3{font-size:19px;margin:0 0 12px}
.vendor-rfi-wizard .rfi-wizard-success p{
 font-size:12px;color:#617b8e;max-width:410px;margin:9px auto;line-height:1.6
}
@media(max-width:680px){
 .vendor-rfi-modal.vendor-rfi-wizard[open]{width:96vw;height:min(700px,93dvh);max-height:93dvh}
 .vendor-rfi-wizard .vendor-workflow-body{padding:0 12px 12px}
 .vendor-rfi-wizard .rfi-wizard-intro-grid{grid-template-columns:1fr;gap:13px}
 .vendor-rfi-wizard .rfi-wizard-side{grid-template-columns:1fr}
 .vendor-rfi-wizard .rfi-wizard-step{font-size:9px;gap:3px;flex-wrap:wrap}
 .vendor-rfi-wizard .rfi-wizard-step-index{width:17px;height:17px}
 .vendor-rfi-wizard .rfi-wizard-review-row{grid-template-columns:105px minmax(0,1fr);gap:8px}
}
@media(max-width:460px){
 .vendor-rfi-wizard .rfi-wizard-step{font-size:8px;padding:8px 2px}
 .vendor-rfi-wizard .rfi-wizard-footer-actions{gap:5px}
 .vendor-rfi-wizard .vendor-workflow-footer button{padding:7px 9px}
 .vendor-rfi-wizard .vendor-workflow-header h2{font-size:16px}
}
