:root{--app-bg:#f5f7fa;--surface:#fff;--surface-muted:#f8fafc;--surface-raised:#fff;--line:#d8dee8;--line-soft:#e8edf3;--text:#17212f;--text-soft:#5b6675;--text-muted:#7a8594;--accent:#178b7f;--accent-strong:#0f6f65;--accent-soft:#e8f7f4;--info:#315fb8;--info-soft:#edf3ff;--warning:#9a6400;--warning-soft:#fff5dc;--danger:#b42318;--danger-soft:#fff0ef;--radius:6px;--radius-lg:8px;--shadow:0 8px 22px #141f2b0f;color:var(--text);background:var(--app-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--app-bg);margin:0}#app{min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}.shell{background:var(--app-bg);grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.login-shell{background:linear-gradient(135deg,#eef4f1 0%,#f7f9fc 54%,#eef3fb 100%);grid-template-columns:minmax(0,1.25fr) minmax(360px,.8fr);align-items:stretch;gap:28px;max-width:1360px;min-height:100vh;margin:0 auto;padding:28px;display:grid}.login-visual{color:#f8fbfa;background:linear-gradient(135deg,#ffffff0a,#0000 42%),linear-gradient(#175f59 0%,#10333f 100%);border-radius:24px;flex-direction:column;justify-content:space-between;min-height:calc(100vh - 48px);padding:32px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 45px #081e231f}.login-visual:before{content:"";opacity:.45;pointer-events:none;background:repeating-linear-gradient(90deg,#ffffff0a 0 1px,#0000 1px 88px),repeating-linear-gradient(0deg,#ffffff09 0 1px,#0000 1px 88px),linear-gradient(115deg,#ffffff14,#0000 34%);position:absolute;inset:0}.login-visual>*{z-index:1;position:relative}.login-visual-brand{align-items:center;gap:16px;display:flex}.login-visual-copy{max-width:560px;margin-top:18px}.login-visual-eyebrow{color:#fffc;letter-spacing:0;border:1px solid #ffffff29;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;display:inline-flex}.login-visual-copy h2{letter-spacing:0;margin:14px 0 12px;font-size:42px;line-height:1.08}.login-visual-eyebrow{font-size:13px}.login-visual-copy p{color:#ffffffbd;margin:0;font-size:15px;line-height:1.7}.login-visual-board{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff12;border:1px solid #ffffff1f;border-radius:18px;margin-top:28px;padding:18px 18px 16px}.login-visual-board-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.login-visual-board-head strong{color:#fff;font-size:16px}.login-visual-board-head span{color:#ffffffad;font-size:12px}.login-visual-rows{gap:10px;display:grid}.login-visual-rows article{border-top:1px solid #ffffff1a;gap:12px;padding-top:12px;display:flex}.login-visual-rows article:first-child{border-top:0;padding-top:0}.login-visual-rows i{background:#89e2d8;border-radius:999px;flex:none;width:10px;height:10px;margin-top:5px;box-shadow:0 0 0 4px #ffffff14}.login-visual-rows strong{color:#fff;font-size:15px;display:block}.login-visual-rows span{color:#ffffffb8;margin-top:4px;font-size:13px;display:block}.login-visual-foot{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.login-visual-foot span{color:#ffffffb8;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;padding:6px 10px;font-size:12px}.login-visual .brand-mark{background:#ffffff0f;border-color:#ffffff29;width:88px;height:52px}.login-visual .login-brand-copy h1{color:#fff;font-size:21px;line-height:1.25}.login-visual .login-brand-copy p{color:#ffffffb8;font-size:13px}.login-panel{background:#fffffff2;border:1px solid #d8dee8e6;border-radius:20px;place-self:center end;width:min(100%,420px);padding:30px 30px 28px;box-shadow:0 18px 40px #141f2b14}.login-brand{margin-bottom:18px}.login-panel .login-brand{border-bottom:1px solid var(--line-soft);gap:12px;min-height:auto;margin-bottom:18px;padding:0 0 18px}.login-panel .brand-mark{width:78px;height:48px}.login-brand-copy h1{margin:0;font-size:20px}.login-panel .login-brand-copy h1{white-space:normal;font-size:20px;line-height:1.25}.login-brand-copy p{color:var(--text-muted);margin:4px 0 0;font-size:13px}.login-panel .login-brand-copy p{font-size:13px;line-height:1.25}.login-lead{color:var(--text-soft);margin:0 0 18px;font-size:15px;line-height:1.5}.login-field{color:var(--text-soft);gap:8px;margin-bottom:14px;font-size:14px;display:grid}.login-field input{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:13px 14px}.login-panel .primary{border-radius:12px;width:100%;min-height:48px;margin-top:6px;padding:0 16px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sidebar{border-right:1px solid var(--line);background:var(--surface);height:100vh;color:var(--text);padding:20px 16px;position:sticky;top:0;overflow-y:auto}.brand{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;margin-bottom:24px;padding:0 4px 18px;display:flex}.brand-mark{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--surface);place-items:center;width:72px;height:44px;display:grid;overflow:hidden}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.shell .brand-mark{background:0 0;border:0;border-radius:0}.brand h1{letter-spacing:0;margin:0;font-size:18px}.brand p,.eyebrow{color:var(--text-muted);margin:4px 0 0;font-size:13px}.menu-tree{gap:8px;display:grid}.menu-group{gap:6px;display:grid}.menu-parent,.submenu-button{border-radius:var(--radius);color:var(--text-soft);text-align:left;background:0 0;border:0;align-items:center;width:100%;display:flex}.menu-parent{gap:10px;padding:10px 12px;font-weight:700}.menu-parent span{border-radius:var(--radius);background:var(--surface-muted);width:24px;height:24px;color:var(--accent-strong);place-items:center;font-size:12px;display:grid}.menu-parent.active,.menu-parent:hover{background:var(--accent-soft);color:var(--accent-strong)}.menu-chevron{border-bottom:2px solid;border-right:2px solid;width:8px;height:8px;margin-left:auto;transition:transform .16s;transform:rotate(-45deg)}.menu-parent.expanded .menu-chevron{transform:rotate(45deg)}.submenu{border-left:1px solid var(--line-soft);gap:4px;margin-left:34px;padding-left:10px;display:grid}.submenu-button{min-height:32px;color:var(--text-muted);padding:7px 10px;font-size:13px}.submenu-button.active,.submenu-button:hover{background:var(--surface-muted);color:var(--text)}.content{background:#f7f9fb;min-width:0;padding:24px 30px 40px}.topbar{justify-content:space-between;align-items:center;gap:18px;max-width:1480px;margin:0 auto 14px;display:flex}.topbar h2{letter-spacing:0;margin:0;font-size:24px}.top-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.user-chip{color:#3730a3;white-space:nowrap;background:#eef2ff;border-radius:999px;align-items:center;min-height:28px;padding:5px 10px;font-size:13px;display:inline-flex}.status,.badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:5px 10px;font-size:13px;display:inline-flex}.status.ok,.badge.approved{color:#0f6b45;background:#e7f6ee}.status.warn,.badge.pending{color:#8a5a00;background:#fff4d8}.badge.submitted,.badge.selected{color:#1d4ed8;background:#e8f1ff}.badge.rejected{color:#9f1d1d;background:#f8e7e7}.badge.withdrawn,.badge.draft,.badge.cancelled{color:#4b5563;background:#edf0f3}.badge.published,.badge.quoting,.badge.evaluating,.badge.awarded{color:#8a5a00;background:#fff4d8}.badge.in-transit{color:#1d4ed8;background:#e8f1ff}.badge.exception{color:#b42318;background:#fdecec}.badge.delivered,.badge.completed,.badge.sent{color:#0f6b45;background:#e7f6ee}.badge.failed{color:#9f1d1d;background:#f8e7e7}.risk-low{color:#0f6b45;background:#e7f6ee}.risk-medium{color:#8a5a00;background:#fff4d8}.risk-high{color:#9f1d1d;background:#f8e7e7}.pill{color:#4338ca;background:#eef2ff;border-radius:6px;align-items:center;min-height:24px;padding:0 8px;font-size:12px;display:inline-flex}.pill.neutral{color:#475569;background:#f1f5f9}.toast{border-radius:8px;max-width:1480px;margin:0 auto 14px;padding:10px 12px;font-size:14px}.toast.success{color:#0f6b45;background:#e7f6ee}.toast.error{color:#9f1d1d;background:#f8e7e7}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1480px;margin:0 auto 16px;display:grid}.summary-grid article,.panel{background:#fff;border:1px solid #e1e5ea;border-radius:8px}.summary-grid span{color:#667085;font-size:13px}.summary-grid strong{margin-top:5px;font-size:22px;display:block}.summary-card-link{cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.summary-card-link:hover,.summary-card-link:focus-visible{border-color:#9bcfc5;outline:none;transform:translateY(-1px);box-shadow:0 4px 12px #17695f1f}.workspace{gap:16px;max-width:1480px;margin:0 auto;display:grid}.two-cols{grid-template-columns:minmax(320px,.8fr) minmax(360px,1.2fr);align-items:start}.panel{padding:16px;box-shadow:0 1px 2px #1018280a}.panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-head h3{margin:0;font-size:16px}.supplier-form-head{align-items:flex-start;margin-bottom:2px;padding-bottom:2px}.supplier-form-head p{color:#667085;margin:5px 0 0;font-size:12px;line-height:1.5}.panel-head span,.muted{color:#667085;font-size:13px}.panel-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.compact-select{color:#475467;align-items:center;gap:8px;font-size:13px;display:inline-flex}.compact-select select{border:1px solid var(--line);background:var(--surface);width:min(360px,42vw);min-width:220px;color:var(--text);border-radius:8px;padding:9px 12px}.file-action{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.file-action.disabled{cursor:not-allowed;opacity:.52}.file-action input{display:none}.qualification-cell{flex-wrap:nowrap;align-items:center;gap:8px;min-width:190px;max-width:240px;display:flex}.qualification-collapsed{color:#315257;background:#f8fafc;border:1px solid #dbe4f0;border-radius:6px;flex:auto;gap:3px;min-width:0;padding:6px 8px;display:grid}.qualification-cell>.inline{flex:none}.qualification-collapsed strong,.qualification-collapsed small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.qualification-collapsed strong{font-size:12px}.qualification-collapsed small{color:#667085;font-size:11px}.link-button{color:#1d4ed8;font:inherit;text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #dbe4f0;border-radius:6px;gap:3px;max-width:210px;padding:6px 8px;display:grid}.link-button span,.link-button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.link-button small{color:#667085;font-size:11px}.supplier-name-link{width:100%}.supplier-name-link span{color:#123f8c;font-weight:700}.qualification-status{border-radius:999px;justify-self:start;padding:2px 7px;font-size:11px;font-style:normal}.qualification-status.ok{color:#0f6b45;background:#e7f6ee}.qualification-status.warning{color:#8a5a00;background:#fff4d8}.qualification-status.expired{color:#9f1d1d;background:#f8e7e7}.compact-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:0}.compact-grid article{min-height:74px}.roadmap-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.roadmap-grid article{background:#f8fafc;border:1px solid #e1e5ea;border-radius:8px;gap:8px;min-height:92px;padding:14px;display:grid}.roadmap-grid span{color:#667085;font-size:13px;line-height:1.5}.audit-integrity{background:#f8fafc;border:1px solid #e1e5ea;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;display:flex}.audit-integrity span:last-child{color:#667085;font-size:13px}.award-summary{color:#475569;border-top:1px solid #e1e5ea;gap:8px;margin-top:16px;padding-top:16px;font-size:14px;display:grid}.award-summary strong{color:#1f2937}.readiness-list{gap:10px;display:grid}.readiness-item{background:#f8fafb;border:1px solid #e1e5ea;border-radius:8px;grid-template-columns:minmax(260px,.8fr) minmax(260px,1.2fr);align-items:center;gap:14px;padding:12px;display:grid}.readiness-main{align-items:center;gap:12px;min-width:0;display:flex}.readiness-main div{gap:4px;min-width:0;display:grid}.readiness-main strong{color:#1f2937;font-size:15px}.readiness-main span:not(.badge),.readiness-item p{color:#667085;font-size:13px}.readiness-main span:not(.badge){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.readiness-item p{margin:0;line-height:1.5}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.form-grid .full{grid-column:1/-1}.field-note{color:#17695f;background:#f2faf8;border:1px solid #d7e7e4;border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;font-size:13px;display:flex}.publish-request-summary{background:#f2faf8;border-left:3px solid #2a9d8f;gap:5px;margin-bottom:16px;padding:12px 14px;display:grid}.publish-request-summary strong{color:#17695f;font-size:15px}.publish-request-summary span{color:#667085;font-size:12px}.publish-workbench{gap:14px;display:grid}.publish-step{background:#fff;border:1px solid #e1e5ea;border-radius:6px;gap:12px;padding:14px;display:grid}.publish-step-head{align-items:center;gap:12px;min-width:0;display:flex}.step-index{color:#fff;background:#2a9d8f;border-radius:6px;flex:none;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:grid}.step-copy{gap:3px;min-width:0;display:grid}.step-copy strong{color:#1f2937;font-size:15px}.step-copy span,.step-count{color:#667085;font-size:12px}.step-count{white-space:nowrap;background:#f1f5f9;border-radius:999px;margin-left:auto;padding:5px 10px}.publish-tools{grid-template-columns:minmax(360px,1fr) auto;align-items:center;gap:12px;display:grid}.publish-count{color:#667085;white-space:nowrap;align-items:baseline;gap:5px;margin-left:auto;display:flex}.publish-count strong{color:#17695f;font-size:19px}.publish-count em{color:#98a2b3;font-style:normal}.supplier-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:390px;padding:2px;display:grid;overflow-y:auto}.supplier-card{cursor:pointer;background:#fbfcfd;border:1px solid #d7dee5;border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:96px;padding:11px;display:grid}.supplier-card:has(input:checked){background:#f0fbf8;border-color:#2a9d8f}.supplier-card input{width:16px;min-height:16px}.supplier-card-body{gap:5px;min-width:0;display:grid}.supplier-card-title{align-items:center;gap:8px;min-width:0;display:flex}.supplier-card-title strong{color:#1f2937;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.supplier-card-title span{color:#3730a3;background:#eef2ff;border-radius:999px;flex:none;padding:2px 7px;font-size:11px}.supplier-card small{color:#667085;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.supplier-card-score{color:#667085;text-align:right;gap:2px;min-width:42px;display:grid}.supplier-card-score strong{color:#17695f;font-size:15px}.supplier-card-score span{font-size:11px}.publish-empty{color:#667085;text-align:center;background:#f8fafb;border:1px dashed #cfd6dd;border-radius:6px;grid-column:1/-1;place-content:center;gap:5px;min-height:120px;display:grid}.publish-empty strong{color:#344054}.publish-actions{border-top:1px solid #edf0f2;justify-content:flex-end;align-items:center;padding-top:2px}.publish-actions .muted{margin-right:auto}.field-help{color:#667085;margin-top:1px;font-size:12px;line-height:1.45;display:block}.file-upload-field input[type=file]{background:#f8fafb;border-style:dashed;min-height:42px}.request-form{gap:14px;display:grid}label{color:#344054;gap:6px;font-size:13px;display:grid}input,select,textarea{color:#1f2937;background:#fff;border:1px solid #cfd6dd;border-radius:6px;width:100%;min-height:38px;padding:8px 10px}input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}input[type=checkbox]{accent-color:#2a9d8f;width:16px;min-height:16px;padding:0}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#2a9d8f;outline:2px solid #2a9d8f29}.primary,.secondary,.inline{border:0;border-radius:6px;min-height:38px;padding:8px 12px}.primary{color:#fff;background:#2a9d8f}.secondary{color:#344054;background:#fff;border:1px solid #cfd6dd}.inline{color:#17695f;background:#eef8f6;border:1px solid #bfd8d3}.danger{color:#9f1d1d;background:#fff1f1;border:1px solid #f1b8b8;border-radius:6px;min-height:38px;padding:8px 12px}.danger-inline{color:#9f1d1d;background:#fff1f1;border-color:#f1b8b8}.form-action{align-self:end}.form-grid .form-action{grid-column:1/-1;justify-self:start}.table-wrap{overflow-x:auto}.supplier-list-toolbar{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;margin:14px 0 10px;display:flex}.supplier-list-search{flex:1;max-width:680px}.supplier-list-search input{width:100%;min-height:38px}.supplier-list-filter{flex:0 0 230px}.supplier-list-filter select{width:100%;min-height:38px}.supplier-list-toolbar>.muted{white-space:nowrap;margin-left:auto}.supplier-list-results{margin-top:12px}.supplier-import-preview{background:#f7fbff;border:1px solid #cfe0f5;border-radius:8px;gap:12px;margin:14px 0;padding:16px;display:grid}.supplier-import-preview>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.supplier-import-stats{color:#1d4f91;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:10px 20px;font-size:13px;display:flex}.supplier-import-preview-table{background:#fff;max-height:260px;overflow:auto}.supplier-list-pagination{padding-bottom:2px}.supplier-list-section{background:#fff;border:1px solid #e3e8ee;border-radius:8px;margin-top:14px;overflow:hidden}.supplier-list-pending{border-color:#f1d49a}.supplier-section-head{text-align:left;background:#f8fafc;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:62px;padding:12px 16px;display:flex}.supplier-list-pending .supplier-section-head{background:#fffaf0}.supplier-section-head h4{color:#1d2939;margin:0;font-size:15px}.supplier-section-head span:not(.section-count){color:#667085;margin-top:4px;font-size:12px;display:block}.supplier-section-toggle{cursor:pointer;border:0}.supplier-section-toggle:hover{background:#f1f5f9}.section-count{color:#17695f;justify-content:center;align-items:center;gap:10px;min-width:32px;font-size:14px;font-weight:700;display:inline-flex}.section-count.pending{color:#a15c00}.supplier-section-chevron{border-bottom:1px solid;border-right:1px solid;width:8px;height:8px;transition:transform .16s;transform:rotate(45deg)translateY(-2px)}.supplier-section-chevron.expanded{transform:rotate(225deg)translate(-1px,-1px)}.supplier-list-section .table-wrap{border-top:1px solid #edf0f2}.supplier-list-empty{margin:18px 0}table{border-collapse:collapse;width:100%;min-width:1080px}.supplier-row{cursor:pointer}.supplier-row:hover td{background:#f8fafc}th,td{text-align:left;vertical-align:middle;border-bottom:1px solid #edf0f2;padding:11px 10px}th{color:#667085;font-size:13px;font-weight:600}.table-sub{color:#667085;text-overflow:ellipsis;white-space:nowrap;max-width:260px;margin-top:4px;font-size:12px;display:block;overflow:hidden}.table-sub.danger-text{color:var(--danger)}.table-input,.table-textarea{width:100%;min-width:150px;margin-top:6px}.date-pair,.row-actions{flex-wrap:wrap;gap:6px;display:flex}.cell-form{gap:6px;min-width:160px;display:grid}.attachment-links{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.date-pair input{width:144px}.row-actions{min-width:172px}.row-actions .inline{min-height:32px;padding:6px 9px;font-size:12px}.empty{color:#8b97a3;text-align:center;margin:0;padding:18px 0}.detail-modal-backdrop{z-index:40;background:#0f172a6b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.detail-modal{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);width:min(960px,100%);max-height:calc(100vh - 48px);padding:20px;overflow:auto;box-shadow:0 22px 56px #0f172a38}.detail-modal-head{align-items:flex-start;margin-bottom:16px}.modal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.detail-grid-dialog{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.detail-grid-dialog>div{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--surface-muted);gap:5px;min-width:0;padding:11px 12px;display:grid}.detail-grid-dialog strong{overflow-wrap:anywhere;color:var(--text);font-size:14px;line-height:1.45}.detail-section{border-top:1px solid var(--line-soft);gap:10px;margin-top:16px;padding-top:16px;display:grid}.detail-summary{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--surface-muted);color:var(--text-soft);margin:0;padding:11px 12px;line-height:1.55}.detail-attachment-list{gap:8px;display:grid}.detail-attachment{border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--surface-muted);width:100%;color:var(--text);text-align:left;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px 12px;padding:10px 12px;display:grid}.detail-attachment:hover{background:var(--info-soft);border-color:#b8c9e4}.detail-attachment-name,.detail-attachment-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.detail-qualification-group,.detail-qualification-history{border-bottom:1px solid #edf2f0;gap:7px;padding:11px 0;display:grid}.detail-qualification-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.detail-qualification-heading strong{color:#315257;font-size:13px}.detail-qualification-empty{color:#9aa9aa;margin:0;font-size:12px}.detail-qualification-empty-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.detail-qualification-history{border-top:1px solid #dce8e4;border-bottom:0;margin-top:8px;padding-top:14px}.detail-attachment-name{font-weight:700}.detail-attachment-meta{color:var(--text-muted);font-size:12px}.detail-attachment .qualification-status{grid-area:1/2/span 2}.detail-attachment-actions{grid-area:1/3/span 2;align-items:center;gap:7px;display:flex}.detail-edit-card{border-radius:var(--radius);background:#f8fbff;border:1px solid #cfddeb;gap:12px;margin-top:16px;padding:16px;display:grid}.detail-edit-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.detail-edit-grid label{color:var(--text-soft);gap:6px;font-size:13px;font-weight:650;display:grid}.detail-edit-grid input,.detail-edit-grid select{border:1px solid var(--line);width:100%;min-height:38px;color:var(--text);background:#fff;border-radius:6px;padding:8px 10px}.supplier-review-card label{color:var(--text-soft);gap:6px;font-size:13px;font-weight:650;display:grid}.supplier-review-card textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:96px;color:var(--text);font:inherit;border-radius:6px;padding:10px 11px}.supplier-review-error{color:var(--danger);margin:-4px 0 0;font-size:13px}.invite-bar{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.publish-entry-note{color:#667085;background:#f8fafc;border:1px solid #dbe4f0;border-radius:6px;align-items:center;min-height:40px;margin-bottom:14px;padding:9px 12px;font-size:13px;display:flex}.invite-toolbar{justify-content:space-between;align-items:end;gap:14px;margin-bottom:12px;display:flex}.order-filter-bar{grid-template-columns:minmax(320px,1fr) minmax(180px,240px) 180px;gap:10px;margin-bottom:14px;display:grid}.purchase-filter-bar{grid-template-columns:minmax(320px,680px)}.purchase-status-modules{grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;margin-bottom:14px;display:grid}.purchase-status-module{color:#344054;cursor:pointer;background:#fff;border:1px solid #dbe4e8;border-radius:6px;justify-content:space-between;align-items:center;min-height:58px;padding:10px 14px;display:flex}.purchase-status-module strong{color:#17695f;font-size:20px}.purchase-status-module:hover,.purchase-status-module.active,.evaluation-type-switch .secondary.active{color:#17695f;background:#eef8f6;border-color:#238478}.evaluation-type-switch{gap:8px;margin-bottom:16px;display:flex}.weight-warning{color:#b54708}.logistics-company-filter{min-width:0}.address-picker-field{position:relative}.address-suggestions{z-index:20;background:#fff;border:1px solid #cfd6dd;border-radius:6px;gap:2px;max-height:240px;padding:5px;display:grid;position:absolute;top:calc(100% - 2px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px #1f29371f}.address-suggestions button{color:#344054;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;gap:3px;width:100%;min-height:32px;padding:7px 8px;display:grid}.address-suggestions button:hover{color:#17695f;background:#eef8f6}.address-suggestions small{color:#667085;white-space:normal;font-size:11px;font-weight:400;line-height:1.35}.group-select{width:100%}.group-picker{flex-wrap:wrap;gap:7px;min-height:38px;display:flex}.group-option{color:#475569;cursor:pointer;background:#f8fafb;border:1px solid #d7dee5;border-radius:6px;grid-template-columns:none;align-items:center;gap:6px;min-height:36px;padding:6px 10px;display:inline-flex}.group-option:has(input:checked){color:#17695f;background:#eefbf7;border-color:#2a9d8f}.group-option input{width:14px;min-height:14px}.check-item{background:#f8fafb;border:1px solid #d7dee5;border-radius:999px;grid-template-columns:none;align-items:center;gap:6px;min-height:34px;padding:6px 10px;display:flex}.check-item input{width:14px;min-height:14px}.check-line{grid-template-columns:none;align-items:center;gap:8px;display:flex}.logistics-option-row{align-items:center;gap:24px;min-height:44px;display:flex}.logistics-option-row .check-line{margin-bottom:0}.check-item.square{border-radius:8px}.check-item small{color:#667085;font-size:12px}.permission-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.permission-form .full{grid-column:1/-1}.module-picker{flex-wrap:wrap;gap:10px;display:flex}.field-label{color:#344054;width:100%;font-size:13px}.supplier-search{gap:8px;display:grid}.search-control{align-items:center;gap:8px;display:flex}.search-control input{flex:1;min-width:180px}.search-control .inline{flex:none;min-height:38px}.selected-supplier{color:#0f6b45;background:#eefbf7;border:1px solid #b7e1d9;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.selected-supplier strong{font-size:14px}.selected-supplier span{color:#2f7d68;font-size:12px}.supplier-result-list{gap:6px;max-height:220px;display:grid;overflow-y:auto}.supplier-result-list button{color:#1f2937;text-align:left;background:#fff;border:1px solid #d7dee5;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.supplier-result-list button:hover,.supplier-result-list button.selected{background:#f0fbf8;border-color:#2a9d8f}.supplier-result-list span{color:#667085;font-size:12px}.quote-entry-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.quote-entry-form .panel-head{grid-column:1/-1;margin-bottom:4px}.quote-entry-form>label:first-of-type,.quote-entry-form>.supplier-search{grid-column:1/-1}.quote-entry-form label,.quote-entry-form .field-label{color:var(--text-soft);font-size:13px;font-weight:700}.quote-entry-form .search-control .inline{min-height:42px;padding:8px 14px;font-size:13px}.quote-entry-form .selected-supplier{gap:6px;padding:14px 16px}.quote-entry-form .selected-supplier strong{font-size:16px}.quote-entry-form .selected-supplier span{font-size:13px}.quote-entry-form .supplier-result-list{gap:10px;max-height:260px}.quote-entry-form .supplier-result-list button{gap:6px;padding:14px 16px}.quote-entry-form .supplier-result-list button strong{font-size:15px}.quote-entry-form .supplier-result-list button span{font-size:13px}.quote-entry-form>.primary{justify-self:start;min-height:42px;padding:9px 16px;font-size:14px}.compact-empty{text-align:left;padding:8px 0}.form-actions{flex-wrap:wrap;gap:10px;display:flex}.request-list,.quote-list{gap:10px;display:grid}.request-list article,.quote-list article{border:1px solid #e1e5ea;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.request-list article.selected{background:#f2fbf9;border-color:#2a9d8f}.request-main{text-align:left;background:0 0;border:0;gap:5px;min-width:0;padding:0;display:grid}.request-main strong,.quote-list strong{color:#1f2937}.request-main span,.quote-list span{color:#667085;font-size:13px}.request-meta-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.request-main .badge{min-height:22px;padding:3px 8px}.quote-list article div{gap:4px;display:grid}.quote-block{min-width:0}.quote-block.right{text-align:right}.quote-list article.quote-card{grid-template-columns:minmax(0,1fr);justify-content:stretch;align-items:stretch;gap:12px;width:100%;min-width:0;display:grid}.quote-summary{justify-content:space-between;align-items:flex-start;gap:12px;width:100%;min-width:0;display:flex!important}.quote-attachments{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;max-width:100%;display:flex}.quote-attachment-link{align-items:center;min-width:0;max-width:260px;display:inline-flex}.quote-attachment-filename{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.quote-detail-table{background:#fff;border:1px solid #edf0f2;border-radius:6px;gap:0;width:100%;min-width:0;overflow:hidden;display:grid!important}.quote-detail-row{border-bottom:1px solid #edf0f2;grid-template-columns:minmax(180px,1.6fr) minmax(80px,.7fr) minmax(90px,.7fr) minmax(72px,.6fr) minmax(90px,.8fr) minmax(120px,1fr) minmax(90px,.8fr);align-items:center;gap:10px;padding:9px 10px;display:grid!important}.quote-detail-row:last-child{border-bottom:0}.quote-detail-head{color:#667085;background:#f8fafc;font-size:12px;font-weight:700}.quote-detail-row span{overflow-wrap:anywhere;color:#344054;min-width:0;font-size:12px}.quote-detail-row strong{color:#1f2937;font-size:13px;display:block}.quote-detail-row small{color:#667085;margin-top:3px;font-size:11px;display:block}.quote-detail-empty{color:#8b97a3;margin:0;font-size:12px}.quotation-pagination{justify-content:flex-end;align-items:center;gap:12px;margin-top:12px;display:flex}.quotation-pagination span{color:#667085;text-align:center;min-width:190px;font-size:12px}.panel-note{color:#667085;margin:0 0 14px;font-size:13px;line-height:1.6}.logistics-detail{gap:16px;display:grid}.logistics-detail .panel-head{margin-bottom:0}.logistics-detail .panel-note{margin:4px 0 0}.logistics-detail-query{background:#f8fafc;border:1px solid #dbe4f0;border-radius:8px;grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:8px;padding:12px;display:grid}.logistics-detail-query-input{gap:5px;min-width:0;display:grid}.logistics-detail-query-input label{color:#475467;font-size:12px;font-weight:600}.logistics-detail-query-input input{width:100%;min-width:0}.logistics-detail-results{flex-wrap:wrap;align-items:center;gap:8px;padding:0 2px;display:flex}.logistics-detail-results-label{color:#667085;flex:none;font-size:12px}.logistics-detail-result{color:#344054;text-align:left;cursor:pointer;background:#fff;border:1px solid #d8e0e6;border-radius:6px;grid-template-columns:auto minmax(120px,1fr);gap:2px 8px;min-width:220px;max-width:360px;padding:7px 10px;display:grid}.logistics-detail-result:hover,.logistics-detail-result.selected{color:#17695f;background:#eff8f6;border-color:#2a9d8f}.logistics-detail-result strong,.logistics-detail-result span,.logistics-detail-result small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.logistics-detail-result strong{grid-row:span 2;align-self:center;font-size:13px}.logistics-detail-result span,.logistics-detail-result small{color:#667085;font-size:11px}.logistics-detail-result.selected span,.logistics-detail-result.selected small{color:#17695f}.logistics-stepper{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.step-button{color:#667085;text-align:left;background:#f8fafb;border:1px solid #e1e5ea;border-radius:6px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-height:56px;padding:10px 12px;display:grid}.step-button.current,.step-button.done{color:#17695f;background:#eff8f6;border-color:#2a9d8f}.step-button.exception{color:#b42318;background:#fff5f4;border-color:#f3b5b0}.step-button:disabled{opacity:1}.step-index{width:40px;height:40px;color:inherit;background:#fff;border-radius:6px;place-items:center;font-size:12px;font-weight:700;display:grid}.step-button.current .step-index,.step-button.done .step-index{color:#fff;background:#2a9d8f}.step-text{overflow-wrap:anywhere;min-width:0;font-size:13px;font-weight:600}.logistics-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.logistics-detail-grid>div{background:#f8fafb;border:1px solid #edf0f2;border-radius:6px;gap:5px;min-width:0;padding:12px;display:grid}.detail-label{color:#667085;font-size:12px}.logistics-detail-grid strong{overflow-wrap:anywhere;color:#1f2937;font-size:14px;line-height:1.45}.logistics-note{color:#475569;background:#f3faf8;border-left:3px solid #2a9d8f;margin:0;padding:10px 12px;font-size:13px;line-height:1.5}.logistics-track{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.track-step{color:#98a2b3;align-items:center;gap:8px;min-height:36px;font-size:13px;display:flex;position:relative}.track-step:not(:last-child):after{content:"";z-index:0;background:#e1e5ea;height:1px;position:absolute;top:50%;left:20px;right:-8px}.track-dot{z-index:1;background:#fff;border:2px solid #cfd6dd;border-radius:50%;width:12px;height:12px;display:block;position:relative}.track-step.done .track-dot,.track-step.current .track-dot{background:#2a9d8f;border-color:#2a9d8f}.track-step.exception .track-dot{background:#d92d20;border-color:#d92d20}.track-step.done:not(:last-child):after{background:#9bd3ca}.logistics-actions{justify-content:flex-start}.logistics-quotes{border-top:1px solid #edf0f2;gap:10px;padding-top:4px;display:grid}.section-inline-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-inline-head h4{color:#1f2937;margin:0;font-size:15px}.section-inline-head .panel-note{margin:4px 0 0}.logistics-quote-list{gap:8px;display:grid}.logistics-quote-item{background:#f8fafb;border:1px solid #e1e5ea;border-radius:6px;grid-template-columns:minmax(180px,1fr) minmax(160px,.8fr) minmax(120px,.6fr);align-items:center;gap:12px;padding:11px 12px;display:grid}.logistics-quote-item>div{gap:4px;min-width:0;display:grid}.logistics-quote-item strong{color:#1f2937;font-size:14px}.logistics-quote-item span{color:#667085;font-size:12px}.logistics-history{border-top:1px solid #edf0f2;gap:10px;padding-top:4px;display:grid}.history-list{gap:0;display:grid}.history-item{grid-template-columns:112px 12px minmax(0,1fr);align-items:start;gap:10px;min-height:54px;display:grid}.history-time{color:#667085;font-size:12px;line-height:20px}.history-dot{background:#fff;border:2px solid #2a9d8f;border-radius:50%;width:10px;height:10px;margin-top:5px;display:block;position:relative}.history-item:not(:last-child) .history-dot:after{content:"";background:#cce7e2;width:2px;height:48px;position:absolute;top:8px;left:2px}.history-content{gap:3px;min-width:0;display:grid}.history-content strong{color:#1f2937;font-size:13px}.history-content span,.history-content small{overflow-wrap:anywhere;color:#667085;font-size:12px;line-height:1.45}.trial-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0;display:grid}.trial-meta div{background:#f8fafb;border:1px solid #e1e5ea;border-radius:8px;padding:12px}.trial-meta dt{color:#667085;font-size:12px}.trial-meta dd{margin:6px 0 0;font-size:20px;font-weight:700}.trial-form{gap:10px;margin-bottom:14px;display:grid}.trial-form input,.trial-form textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:12px 14px}.issue-list{gap:10px;display:grid}.issue-item{border:1px solid #e1e5ea;border-radius:8px;justify-content:space-between;gap:14px;padding:12px;display:flex}.issue-main{gap:5px;min-width:0;display:grid}.issue-main strong{font-size:15px}.issue-main span{color:#667085;font-size:13px}.issue-actions{align-content:start;gap:8px;min-width:88px;display:grid}.issue-actions .inline{width:100%}@media (width<=980px){.shell{grid-template-columns:1fr}.sidebar{padding:18px}nav{grid-template-columns:repeat(5,minmax(0,1fr))}nav button{justify-content:center}.brand{margin-bottom:18px}.summary-grid,.permission-form,.form-grid,.two-cols,.publish-tools,.supplier-card-grid,.detail-grid-dialog{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-detail-row{grid-template-columns:minmax(160px,1.4fr) minmax(80px,.7fr) minmax(90px,.7fr) minmax(72px,.6fr)}.quote-detail-row span:nth-child(5),.quote-detail-row span:nth-child(6),.quote-detail-row span:nth-child(7){grid-column:span 1}}@media (width<=680px){.content{padding:18px}.purchase-status-modules{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar,.invite-toolbar,.order-filter-bar,.supplier-list-toolbar,.request-list article,.quote-list article{flex-direction:column;align-items:stretch}.supplier-list-search,.supplier-list-filter{flex-basis:auto;width:100%;max-width:none}.supplier-list-toolbar>.muted{margin-left:0}.top-actions{justify-content:space-between}.panel-actions{flex-direction:column;align-items:stretch}.detail-modal-backdrop{align-items:stretch;padding:12px}.detail-modal{max-height:calc(100vh - 24px);padding:16px}.detail-grid-dialog,.detail-attachment{grid-template-columns:1fr}.quote-summary{flex-direction:column}.quotation-pagination{justify-content:space-between}.quotation-pagination span{min-width:0}.quote-block.right .quote-attachments{justify-content:flex-start}.quote-detail-head{display:none!important}.quote-detail-row{grid-template-columns:1fr}.detail-attachment .qualification-status{grid-area:auto}.issue-item{flex-direction:column}.issue-actions{grid-template-columns:repeat(3,minmax(0,1fr))}nav{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-grid,.permission-form,.form-grid,.logistics-detail-grid,.two-cols,.publish-tools,.supplier-card-grid{grid-template-columns:1fr}.publish-step-head,.publish-tools,.publish-actions{flex-direction:column;align-items:stretch}.publish-count{margin-left:0}.publish-actions{align-items:stretch}.publish-actions .muted{margin-right:0}.quote-list article>.quote-block.right{text-align:left}.readiness-item{grid-template-columns:1fr}.quote-block.right{text-align:left}.section-inline-head{flex-direction:column;align-items:stretch}.logistics-quote-item,.order-filter-bar,.logistics-detail-query{grid-template-columns:1fr}.logistics-detail-query .inline{width:100%}.logistics-detail-result{width:100%;max-width:none}.logistics-stepper{grid-template-columns:1fr 1fr}.history-item{grid-template-columns:92px 12px minmax(0,1fr)}}:root{--app-bg:#f3f6f8;--surface:#fff;--surface-muted:#f7f9fb;--surface-strong:#eef3f5;--line:#d8e0e6;--line-soft:#e9eef2;--text:#17212f;--text-soft:#566474;--text-muted:#788696;--accent:#177f76;--accent-strong:#0f665f;--accent-soft:#e8f6f3;--info:#2f5ea8;--info-soft:#edf3ff;--warning:#946400;--warning-soft:#fff5dd;--danger:#b42318;--danger-soft:#fff1ef;--radius:6px;--radius-lg:8px;--shadow:0 10px 24px #15202b0f}body{color:var(--text);background:linear-gradient(180deg, #e8eef2b8 0, #f3f6f800 220px), var(--app-bg)}.shell{background:0 0;grid-template-columns:252px minmax(0,1fr)}.sidebar{border-right:1px solid var(--line);background:#fbfcfd;padding:18px 14px}.brand{min-height:72px;margin-bottom:16px;padding:0 6px 16px}.brand-mark{border-color:var(--line);background:var(--surface);width:64px;height:40px}.brand h1{color:var(--text);font-size:17px;font-weight:760}.brand p,.eyebrow{color:var(--text-muted)}.menu-parent{min-height:42px;color:var(--text-soft);padding:9px 10px}.menu-parent span{border:1px solid var(--line-soft);background:var(--surface);width:26px;height:26px;color:var(--accent-strong)}.menu-parent.active{background:var(--accent-soft);color:var(--accent-strong)}.menu-parent:hover,.submenu-button:hover{background:var(--surface-strong);color:var(--text)}.submenu{margin-left:23px;padding:2px 0 4px 13px}.submenu-button{border-radius:var(--radius);min-height:34px;padding:7px 10px}.submenu-button.active{background:var(--text);color:#fff}.content{background:0 0;min-height:100vh;padding:24px 28px 36px}.topbar{z-index:5;border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;min-height:72px;margin-bottom:16px;padding:14px 16px;position:sticky;top:0;box-shadow:0 6px 16px #15202b0d}.topbar h2{color:var(--text);margin-top:3px;font-size:22px;font-weight:760}.user-chip,.status,.badge,.pill{border:1px solid #0000;font-weight:650}.user-chip{border-color:var(--line-soft);background:var(--surface-muted);color:var(--text-soft)}.status.ok,.badge.approved,.badge.delivered,.badge.completed,.badge.sent,.risk-low,.qualification-status.ok{background:var(--accent-soft);color:var(--accent-strong)}.status.warn,.badge.pending,.badge.published,.badge.quoting,.badge.evaluating,.badge.awarded,.risk-medium,.qualification-status.warning{background:var(--warning-soft);color:var(--warning)}.badge.submitted,.badge.selected,.badge.in-transit,.pill{background:var(--info-soft);color:var(--info)}.badge.rejected,.badge.failed,.badge.exception,.risk-high,.qualification-status.expired{background:var(--danger-soft);color:var(--danger)}.badge.withdrawn,.badge.draft,.badge.cancelled,.pill.neutral{background:var(--surface-strong);color:var(--text-soft)}.toast{border-radius:var(--radius-lg);border:1px solid #0000;box-shadow:0 8px 20px #15202b0d}.toast.success{background:var(--accent-soft);color:var(--accent-strong);border-color:#b9ded6}.toast.error{background:var(--danger-soft);color:var(--danger);border-color:#f3c2bd}.summary-grid,.workspace,.topbar,.toast{max-width:1500px}.summary-grid article,.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.summary-grid span,.panel-head span,.muted,.panel-note,.field-help,.table-sub,.request-main span,.quote-list span,.readiness-main span:not(.badge),.readiness-item p,.logistics-quote-item span,.history-content span,.history-content small,.issue-main span,.supplier-result-list span,.supplier-card small{color:var(--text-muted)}.summary-grid strong{color:var(--text);font-size:24px;font-weight:780}.panel{padding:18px}.panel-head{border-bottom:1px solid var(--line-soft);min-height:38px;margin-bottom:16px;padding-bottom:12px}.panel-head h3,.section-inline-head h4{color:var(--text);font-weight:760}.supplier-form-head{border-bottom:0;padding-bottom:2px}.roadmap-grid article,.audit-integrity,.readiness-item,.publish-step,.supplier-card,.publish-empty,.group-option,.check-item,.selected-supplier,.supplier-result-list button,.request-list article,.quote-list article,.step-button,.logistics-detail-grid>div,.logistics-quote-item,.trial-meta div,.issue-item,.publish-entry-note{border-color:var(--line);background:var(--surface-muted);border-radius:var(--radius-lg)}.request-list article,.quote-list article,.issue-item{background:var(--surface)}.request-list article:hover,.quote-list article:hover,.supplier-result-list button:hover,.supplier-card:hover,.group-option:hover,.check-item:hover{background:#fbfcfd;border-color:#b9c6d0}.request-list article.selected,.supplier-result-list button.selected,.step-button.current,.step-button.done{border-color:var(--accent);background:var(--accent-soft)}.supplier-card:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.group-option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}label,.field-label{color:var(--text-soft);font-weight:650}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:40px;color:var(--text);transition:border-color .16s,box-shadow .16s,background .16s}input::placeholder,textarea::placeholder{color:#9aa5b1}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 3px #177f7624}input[type=checkbox]{accent-color:var(--accent);box-shadow:none}.primary,.secondary,.inline,.danger{border-radius:var(--radius);font-weight:700;transition:transform .12s,box-shadow .12s,border-color .12s,background .12s}.primary{background:var(--accent);color:#fff;box-shadow:0 6px 14px #177f7629}.primary:hover{background:var(--accent-strong)}.secondary{border:1px solid var(--line);background:var(--surface);color:var(--text-soft)}.secondary:hover{background:var(--surface-muted);border-color:#b9c6d0}.inline{background:var(--accent-soft);color:var(--accent-strong);border:1px solid #b9d9d3}.inline:hover{border-color:var(--accent);background:#dcf1ed}.danger,.danger-inline{background:var(--danger-soft);color:var(--danger);border-color:#f1bbb5}.table-wrap{border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--surface)}table{min-width:1080px}th,td{border-bottom:1px solid var(--line-soft);padding:12px}th{background:var(--surface-muted);color:var(--text-soft);font-weight:760}tbody tr:hover{background:#fbfcfd}tbody tr:last-child td{border-bottom:0}.publish-request-summary,.field-note,.logistics-note{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.publish-request-summary strong,.publish-count strong,.supplier-card-score strong,.step-copy strong,.request-main strong,.quote-list strong,.readiness-main strong,.logistics-detail-grid strong,.logistics-quote-item strong,.history-content strong,.issue-main strong,.award-summary strong{color:var(--text)}.publish-workbench{gap:16px}.publish-step{padding:16px}.step-index,.step-button.current .step-index,.step-button.done .step-index{background:var(--accent);color:#fff}.step-button .step-index{background:var(--surface);color:inherit}.step-count,.publish-entry-note{background:var(--surface-muted);color:var(--text-muted)}.supplier-card-grid{gap:12px;max-height:420px;padding:3px}.supplier-card{background:var(--surface);min-height:104px}.supplier-card-title span{background:var(--surface-strong);color:var(--text-soft)}.supplier-card-score,.publish-empty,.empty{color:var(--text-muted)}.link-button{border-color:var(--line);background:var(--surface-muted);color:var(--info)}.link-button:hover{background:var(--info-soft);border-color:#b8c9e4}.logistics-track .track-step:not(:last-child):after{background:var(--line)}.track-dot,.history-dot{border-color:var(--accent)}.track-step.done,.track-step.current{color:var(--accent-strong)}.track-step.done .track-dot,.track-step.current .track-dot{border-color:var(--accent);background:var(--accent)}.track-step.exception{color:var(--danger)}.track-step.exception .track-dot{border-color:var(--danger);background:var(--danger)}.history-item:not(:last-child) .history-dot:after{background:#c9e5df}@media (width<=980px){.shell,.login-shell{grid-template-columns:1fr}.login-visual{min-height:220px;padding:22px}.login-visual-copy h2{font-size:26px}.login-visual-board{margin-top:22px}.login-panel{justify-self:stretch}.sidebar{height:auto;max-height:none;position:static}.content{padding:20px}.topbar{position:static}.publish-tools{grid-template-columns:minmax(0,1fr)}}@media (width<=680px){.content,.topbar,.panel{padding:14px}.summary-grid{gap:10px}.summary-grid article{min-height:72px}.summary-grid strong{font-size:21px}.search-control,.form-actions{flex-direction:column;align-items:stretch}.search-control .inline,.form-actions button{width:100%}}body{font-size:13px;line-height:1.42}.shell{grid-template-columns:228px minmax(0,1fr)}.sidebar{padding:14px 12px}.brand{gap:9px;min-height:58px;margin-bottom:12px;padding:0 4px 12px}.brand-mark{width:56px;height:34px}.brand h1{white-space:nowrap;font-size:15px;line-height:1.2}.brand p,.eyebrow{font-size:11px;line-height:1.2}.menu-tree{gap:4px}.menu-parent{white-space:nowrap;gap:8px;min-height:34px;padding:7px 8px;font-size:13px;line-height:1.2}.menu-parent span{flex:0 0 22px;width:22px;height:22px;font-size:11px}.submenu{margin-left:18px;padding-left:10px}.submenu-button{text-overflow:ellipsis;white-space:nowrap;min-height:28px;padding:5px 8px;font-size:12px;line-height:1.2;overflow:hidden}.content{padding:18px 22px 30px}.topbar{gap:12px;min-height:58px;margin-bottom:12px;padding:10px 12px}.topbar h2{margin-top:2px;font-size:18px;line-height:1.22}.top-actions{gap:6px}.user-chip,.status,.badge,.pill{white-space:nowrap;min-height:22px;padding:3px 7px;font-size:11px;line-height:1.2}.summary-grid{gap:10px;margin-bottom:12px}.summary-grid article{min-height:62px;padding:10px 12px}.summary-grid span,.panel-head span,.muted,.panel-note,.field-help,.table-sub{font-size:11px;line-height:1.3}.summary-grid strong{margin-top:3px;font-size:19px;line-height:1.15}.workspace{gap:12px}.panel{min-width:0;padding:12px}.panel-head{min-height:30px;margin-bottom:10px;padding-bottom:8px}.panel-head h3,.section-inline-head h4{margin:0;font-size:15px;line-height:1.25}label,.field-label{font-size:12px;line-height:1.25}input,select,textarea{min-height:32px;padding:6px 8px;font-size:12px;line-height:1.35}.primary,.secondary,.inline,.danger,.file-action{white-space:nowrap;min-height:30px;padding:5px 9px;font-size:12px;line-height:1.2}.inline{min-height:26px;padding:4px 7px}table{min-width:1180px;font-size:12px;line-height:1.32}th,td{padding:7px 8px}th{white-space:nowrap;font-size:12px;line-height:1.25}td{font-size:12px}td>.badge,td>.status,td>.pill,td>.inline,td>.danger-inline{margin:1px 0}.table-sub{max-width:220px;margin-top:2px}.table-input,.table-textarea{min-width:120px;margin-top:4px}.compact-input{min-width:96px}.row-actions,.date-pair,.panel-actions,.form-actions{gap:5px}.request-main strong,.quote-list strong,.readiness-main strong,.logistics-detail-grid strong,.logistics-quote-item strong,.history-content strong,.issue-main strong,.award-summary strong{font-size:13px;line-height:1.3}.request-main,.step-button,.supplier-result-list button{font-size:12px;line-height:1.3}.quote-entry-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.quote-entry-form .panel-head,.quote-entry-form>label:first-of-type,.quote-entry-form>.supplier-search{grid-column:1/-1}.quote-entry-form label,.quote-entry-form .supplier-search{gap:8px}.quote-entry-form input,.quote-entry-form select{min-height:44px;padding:10px 12px;font-size:14px}.quote-entry-form .search-control{gap:10px}.quote-entry-form .search-control .inline,.quote-entry-form>.primary{min-height:42px;padding:8px 14px;font-size:13px}.quote-entry-form .selected-supplier,.quote-entry-form .supplier-result-list button{padding:14px 16px}.quote-entry-form .supplier-result-list{gap:10px}form.panel,.form-grid,.permission-form,.request-form,.trial-form{gap:18px;display:grid}form.panel>label,form.panel>.supplier-search,.form-grid>label,.permission-form>label,.permission-form>.supplier-search,.request-form label,.trial-form input,.trial-form textarea{margin-bottom:2px}form.panel label,form.panel .field-label,.form-grid label,.permission-form label,.permission-form .field-label,.request-form label,.trial-form label{color:var(--text-soft);gap:8px;font-size:13px;font-weight:700}form.panel input:not([type=checkbox]):not([type=file]),form.panel select,form.panel textarea,.form-grid input:not([type=checkbox]):not([type=file]),.form-grid select,.form-grid textarea,.permission-form input:not([type=checkbox]):not([type=file]),.permission-form select,.permission-form textarea,.request-form input:not([type=checkbox]):not([type=file]),.request-form select,.request-form textarea,.trial-form input:not([type=checkbox]):not([type=file]),.trial-form textarea{min-height:44px;padding:10px 12px;font-size:14px;line-height:1.4}form.panel textarea,.form-grid textarea,.permission-form textarea,.request-form textarea,.trial-form textarea{min-height:104px}form.panel>.primary,.form-grid .primary,.permission-form .primary,.request-form .primary,.trial-form .primary{min-height:42px;padding:9px 16px;font-size:14px}form.panel .search-control,.permission-form .search-control{gap:10px;margin-top:2px}.logistics-items-editor{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;gap:12px;margin-top:6px;padding:16px;display:grid}.logistics-item-editor{background:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:12px;padding:14px;display:grid}.item-editor-heading{justify-content:space-between;align-items:center;display:flex}.compact-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.size-input{grid-template-columns:minmax(0,1fr) 86px;gap:8px;display:grid}.logistics-detail-items{grid-column:span 2}.detail-item-line{gap:3px;display:grid}.detail-item-line small{color:#667085;line-height:1.45}form.panel .selected-supplier,form.panel .supplier-result-list button,.permission-form .selected-supplier,.permission-form .supplier-result-list button{padding:14px 16px}@media (width<=980px){.shell{grid-template-columns:1fr}.topbar,.top-actions{align-items:flex-start}.quote-entry-form{grid-template-columns:1fr}}@media (width<=680px){.content{padding:12px}.compact-form-grid{grid-template-columns:minmax(0,1fr)}.topbar,.panel{padding:12px}.summary-grid strong{font-size:18px}}.login-shell{background:linear-gradient(90deg,#062a34b8 0%,#062a346b 46%,#062a3433 100%),url(/assets/login-campus-DroYgEWF.jpg) 50%/cover no-repeat;grid-template-columns:minmax(0,1fr) minmax(360px,420px);gap:clamp(24px,6vw,96px);max-width:none;min-height:100vh;padding:clamp(24px,5vw,72px);position:relative;overflow:hidden}.login-shell:before{content:"";pointer-events:none;background:linear-gradient(#0319211f,#0319214d);position:absolute;inset:0}.login-shell>*{z-index:1;position:relative}.login-visual{min-height:calc(100vh - clamp(48px,10vw,144px));box-shadow:none;background:0 0;border-radius:0;padding:8px 0;overflow:visible}.login-visual:before{display:none}.login-panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border:1px solid #ffffffbd;border-radius:16px;place-self:center stretch;width:100%;box-shadow:0 20px 50px #0319213d}.login-visual-board{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0727306b;width:min(100%,360px);margin-top:auto;padding:14px 16px}.login-visual .brand-mark,.login-panel .brand-mark{background:0 0;border:0;border-radius:0}.login-visual-brand{gap:14px;margin-top:0;margin-left:-5px;transform:translateY(-31px)}.login-visual .brand-mark{width:132px;height:78px;transform:translateY(-9px)}.login-visual .login-brand-copy h1{font-size:29px}.login-visual-copy{width:min(100%,700px);max-width:none;margin-top:auto;margin-bottom:clamp(16px,3.5vh,38px);margin-left:12px;transform:translateY(-8px)}.login-visual-copy h2{white-space:nowrap;margin:10px 0 8px;font-size:clamp(48px,4.35vw,54px);line-height:1.1}.login-visual-copy p{white-space:nowrap;max-width:none;margin:0;font-size:17px;line-height:1.5}@media (width<=680px){.login-visual-brand{gap:12px;margin-top:10px;margin-left:12px;transform:none}.login-visual .brand-mark{width:100px;height:58px;transform:none}.login-visual .login-brand-copy h1{font-size:22px}.login-visual-copy{width:min(100%,620px);margin-top:auto;margin-bottom:18px;margin-left:12px}.login-visual-copy h2{font-size:30px}.login-visual-copy p{font-size:12px}}@media (width<=980px){.login-shell{grid-template-columns:1fr;gap:22px;padding:28px}.login-visual{min-height:auto;padding:0}.login-visual-copy{margin-top:34px;margin-bottom:0;transform:none}.login-panel{justify-self:center;width:min(100%,420px)}}@media (width<=680px){.login-shell{gap:18px;padding:18px}.login-visual-copy h2{font-size:30px}.login-visual-copy p{white-space:normal}.login-visual-board{display:none}.login-panel{padding:24px 20px 22px}}.login-mode-switch{background:#f2f7f5;border-radius:7px;grid-template-columns:1fr 1fr;gap:4px;margin:22px 0 18px;padding:4px;display:grid}.login-mode-switch button{color:#607a7d;background:0 0;border:0;border-radius:5px;padding:9px 10px;font-size:13px;font-weight:700}.login-mode-switch button.active{color:#0f766e;background:#fff;box-shadow:0 1px 4px #183b3d14}.login-form-block{gap:16px;display:grid}.supplier-code-row{grid-template-columns:1fr auto;gap:8px;display:grid}.supplier-code-row input{min-width:0}.shell .brand>.brand-mark{flex:0 0 74px;width:74px;height:44px}.table-time,.table-status{white-space:nowrap}.table-time{font-variant-numeric:tabular-nums;min-width:148px}.table-status{min-width:86px}.table-actions,.row-actions{flex-wrap:wrap;align-items:center;gap:8px;min-width:max-content;display:flex}.table-actions>button,.row-actions>button{white-space:nowrap;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.2}.standard-form-actions{align-items:center;gap:8px}.standard-form-actions>.primary,.standard-form-actions>.secondary,.standard-form-actions>.danger{white-space:nowrap;min-height:34px;padding:7px 12px;font-size:12px;line-height:1.2}.spaced-table{margin-top:16px}.evaluation-form-actions>.muted{line-height:34px}.supplier-portal-host{color:#18323b;font-synthesis:none;background:#f4f7f6;font-family:Inter,Microsoft YaHei,sans-serif;line-height:1.5}.supplier-portal-host *{box-sizing:border-box}.supplier-portal-host{margin:0}.supplier-portal-host button,.supplier-portal-host input,.supplier-portal-host textarea{font:inherit}.supplier-portal-host button{cursor:pointer}.supplier-portal-host button:disabled{cursor:not-allowed;opacity:.55}.supplier-portal-host .login-shell{background:linear-gradient(135deg,#e5f4ef,#f7faf8 55%,#e9f0f3);place-items:center;min-height:100vh;padding:24px;display:grid}.supplier-portal-host .login-panel{background:#fff;border:1px solid #dbe8e4;width:min(430px,100%);padding:44px;box-shadow:0 22px 60px #164e3c14}.supplier-portal-host .brand-mark{color:#fff;background:#0f766e;border-radius:12px;place-items:center;width:48px;height:48px;font-size:25px;font-weight:800;display:grid}.supplier-portal-host .brand-mark.small{border-radius:9px;width:36px;height:36px;font-size:18px}.supplier-portal-host .eyebrow{letter-spacing:1.4px;color:#789096;margin:0 0 8px;font-size:11px;font-weight:700}.supplier-portal-host .login-panel h1{letter-spacing:0;margin:8px 0 12px;font-size:30px}.supplier-portal-host .login-copy{color:#668087;margin:0 0 30px}.supplier-portal-host .login-form{gap:18px;display:grid}.supplier-portal-host .login-form label,.supplier-portal-host .form-grid label,.supplier-portal-host .full-field{color:#36565d;gap:7px;font-size:13px;font-weight:700;display:grid}.supplier-portal-host .login-form input,.supplier-portal-host .form-grid input,.supplier-portal-host .form-grid textarea,.supplier-portal-host .full-field textarea,.supplier-portal-host .item-card input,.supplier-portal-host .quote-extra input{color:#18323b;background:#fbfdfc;border:1px solid #d4e1de;border-radius:7px;outline:0;width:100%;padding:12px 13px}.supplier-portal-host .login-form input:focus,.supplier-portal-host .form-grid input:focus,.supplier-portal-host .form-grid textarea:focus,.supplier-portal-host .item-card input:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e18}.supplier-portal-host .code-row{grid-template-columns:1fr auto;gap:8px;display:grid}.supplier-portal-host .primary,.supplier-portal-host .secondary{border:0;border-radius:7px;padding:11px 16px;font-weight:700}.supplier-portal-host .primary{color:#fff;background:#0f766e}.supplier-portal-host .primary:hover{background:#0b625c}.supplier-portal-host .secondary{color:#0f655e;background:#e5f2ef}.supplier-portal-host .login-button{height:46px;margin-top:5px}.supplier-portal-host .hint{color:#829499;margin:19px 0 0;font-size:12px}.supplier-portal-host .alert{border-radius:7px;margin:15px 0 0;padding:11px 13px;font-size:13px}.supplier-portal-host .alert.error{color:#b42318;background:#fff1f0}.supplier-portal-host .alert.success{color:#19734a;background:#eaf8f0}.supplier-portal-host .app-shell{grid-template-columns:246px 1fr;min-height:100vh;display:grid}.supplier-portal-host .sidebar{color:#c4d5d4;background:#0c2429;flex-direction:column;min-height:100vh;padding:22px 15px;display:flex}.supplier-portal-host .brand{color:#fff;align-items:center;gap:10px;padding:5px 9px 30px;display:flex}.supplier-portal-host .brand strong{font-size:15px;display:block}.supplier-portal-host .brand span{letter-spacing:1.1px;color:#83999a;margin-top:2px;font-size:9px;display:block}.supplier-portal-host .sidebar nav{gap:4px;display:grid}.supplier-portal-host .sidebar nav button{color:#9fb4b4;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;padding:12px 13px;display:flex}.supplier-portal-host .sidebar nav button:hover,.supplier-portal-host .sidebar nav button.active{color:#fff;background:#173f40}.supplier-portal-host .sidebar nav b{color:#fff;background:#db8b42;border-radius:10px;place-items:center;min-width:20px;height:20px;margin-left:auto;font-size:11px;display:grid}.supplier-portal-host .sidebar-foot{border-top:1px solid #274246;align-items:center;gap:7px;margin-top:auto;padding:17px 9px 3px;font-size:12px;display:flex}.supplier-portal-host .status-dot{background:#5fc68d;border-radius:50%;width:7px;height:7px}.supplier-portal-host .logout{color:#9fb4b4;background:0 0;border:0;margin-left:auto;font-size:18px}.supplier-portal-host .content{min-width:0}.supplier-portal-host .topbar{background:#fff;border-bottom:1px solid #e0eae7;justify-content:space-between;align-items:center;height:91px;padding:19px 42px;display:flex}.supplier-portal-host .topbar h2{letter-spacing:-.3px;margin:0;font-size:24px}.supplier-portal-host .user-chip{align-items:center;gap:10px;display:flex}.supplier-portal-host .user-chip strong,.supplier-portal-host .user-chip span{display:block}.supplier-portal-host .user-chip strong{font-size:13px}.supplier-portal-host .user-chip span{color:#809094;margin-top:2px;font-size:11px}.supplier-portal-host .avatar{color:#0f655e;background:#d5ece5;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.supplier-portal-host .page{max-width:1400px;margin:auto;padding:35px 42px}.supplier-portal-host .global-alert{margin:20px 42px 0}.supplier-portal-host .welcome{background:#dff1eb;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:22px;padding:30px 34px;display:flex}.supplier-portal-host .welcome h1,.supplier-portal-host .section-intro h1,.supplier-portal-host .detail-head h1{margin:0 0 8px;font-size:25px}.supplier-portal-host .welcome p,.supplier-portal-host .section-intro p,.supplier-portal-host .detail-head p{color:#617a7d;margin:0}.supplier-portal-host .stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px;display:grid}.supplier-portal-host .stats article{background:#fff;border:1px solid #e1ebe8;padding:18px 20px}.supplier-portal-host .stats span,.supplier-portal-host .stats small{color:#779095;font-size:12px;display:block}.supplier-portal-host .stats strong{color:#173f40;margin:5px 0;font-size:30px;display:block}.supplier-portal-host .two-col,.supplier-portal-host .detail-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.supplier-portal-host .panel{background:#fff;border:1px solid #e1ebe8;padding:20px}.supplier-portal-host .panel-head,.supplier-portal-host .section-intro,.supplier-portal-host .detail-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.supplier-portal-host .panel h3{margin:0;font-size:15px}.supplier-portal-host .text-button,.supplier-portal-host .back{color:#0f766e;background:0 0;border:0;font-size:12px;font-weight:700}.supplier-portal-host .list-row{text-align:left;background:#fff;border:0;border-top:1px solid #edf2f0;justify-content:space-between;align-items:center;gap:15px;width:100%;padding:14px 0;display:flex}.supplier-portal-host .list-row:first-of-type{margin-top:9px}.supplier-portal-host .list-row strong,.supplier-portal-host .list-row small{display:block}.supplier-portal-host .list-row strong{color:#26454b;font-size:13px}.supplier-portal-host .list-row small{color:#86989b;margin-top:3px;font-size:11px}.supplier-portal-host .list-row em{color:#789096;white-space:nowrap;font-size:11px;font-style:normal}.supplier-portal-host .list-row.unread strong,.supplier-portal-host .message-row.unread strong{color:#0f655e}.supplier-portal-host .section-intro{align-items:flex-end;margin-bottom:24px}.supplier-portal-host .table{padding:0;overflow:hidden}.supplier-portal-host .table-head,.supplier-portal-host .table-row{text-align:left;grid-template-columns:2.2fr 1fr 1.15fr 1fr .4fr;align-items:center;gap:18px;padding:14px 20px;display:grid}.supplier-portal-host .table-head{color:#85989b;background:#f6faf9;border-bottom:1px solid #e1ebe8;font-size:11px}.supplier-portal-host .table-row{color:#3a555a;background:#fff;border:0;border-bottom:1px solid #edf2f0;width:100%;font-size:12px}.supplier-portal-host .table-row:hover{background:#f9fcfb}.supplier-portal-host .table-row strong,.supplier-portal-host .table-row small{display:block}.supplier-portal-host .table-row strong{color:#26454b;font-size:13px}.supplier-portal-host .table-row small{color:#86989b;margin-top:3px;font-size:11px}.supplier-portal-host .arrow{color:#0f766e;text-align:right;font-size:18px}.supplier-portal-host .tag{color:#397269;white-space:nowrap;background:#edf5f3;border-radius:4px;padding:4px 8px;font-size:11px;font-style:normal;display:inline-block}.supplier-portal-host .tag.large{font-size:12px}.supplier-portal-host .tag.positive{color:#177245;background:#e8f7ee}.supplier-portal-host .detail-head{align-items:center;margin:15px 0 24px}.supplier-portal-host .detail-grid{grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr)}.supplier-portal-host .item-card{border-top:1px solid #edf2f0;justify-content:space-between;align-items:center;gap:18px;padding:16px 0;display:flex}.supplier-portal-host .item-card strong,.supplier-portal-host .item-card small{display:block}.supplier-portal-host .item-card small{color:#7d9094;margin-top:4px;font-size:12px}.supplier-portal-host .item-card label{color:#71878a;width:150px;font-size:11px}.supplier-portal-host .item-card input{margin-top:4px;padding:9px}.supplier-portal-host .quote-extra{grid-template-columns:1fr 1fr;gap:12px;margin:15px 0;display:grid}.supplier-portal-host .quote-extra label{color:#71878a;font-size:12px}.supplier-portal-host .quote-extra input{margin-top:5px}.supplier-portal-host .summary dl{grid-template-columns:90px 1fr;gap:13px 8px;font-size:13px;display:grid}.supplier-portal-host .summary dt{color:#819397}.supplier-portal-host .summary dd{color:#315257;margin:0}.supplier-portal-host .back{margin-bottom:20px;padding:0}.supplier-portal-host .result-grid{gap:12px;display:grid}.supplier-portal-host .result-card{background:#fff;border:1px solid #e1ebe8;align-items:flex-start;gap:15px;padding:19px 22px;display:flex}.supplier-portal-host .result-icon{color:#18825a;background:#e9f7f1;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.supplier-portal-host .result-card h3{margin:0 0 4px;font-size:14px}.supplier-portal-host .result-card p,.supplier-portal-host .result-card small{color:#748b8f;margin:0;font-size:12px;display:block}.supplier-portal-host .result-card small{margin-top:7px}.supplier-portal-host .result-card .tag{margin-left:auto}.supplier-portal-host .message-list{padding:0}.supplier-portal-host .message-row{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf2f0;align-items:flex-start;gap:12px;width:100%;padding:18px 20px;display:flex}.supplier-portal-host .message-row:hover{background:#f9fcfb}.supplier-portal-host .message-dot{background:#d0dcda;border-radius:50%;width:8px;height:8px;margin-top:7px}.supplier-portal-host .message-row.unread .message-dot{background:#db8b42}.supplier-portal-host .message-row strong,.supplier-portal-host .message-row small{display:block}.supplier-portal-host .message-row strong{color:#3e5c61;font-size:13px}.supplier-portal-host .message-row small{color:#84969a;margin-top:4px;font-size:11px}.supplier-portal-host .message-row em{color:#8b9b9d;white-space:nowrap;margin-left:auto;font-size:11px;font-style:normal}.supplier-portal-host .profile-panel{max-width:850px}.supplier-portal-host .profile-status{border-bottom:1px solid #edf2f0;align-items:center;gap:13px;margin-bottom:20px;padding-bottom:20px;display:flex}.supplier-portal-host .profile-status h3{margin:0;font-size:17px}.supplier-portal-host .profile-status p{color:#839397;margin:3px 0 0;font-size:12px}.supplier-portal-host .large-avatar{width:48px;height:48px;font-size:20px}.supplier-portal-host .form-grid{grid-template-columns:1fr 1fr;gap:17px;margin-bottom:20px;display:grid}.supplier-portal-host .form-grid .full-field{grid-column:1/-1}.supplier-portal-host .empty{text-align:center;color:#8a9a9c;padding:35px 10px;font-size:13px}.supplier-portal-host footer{text-align:center;color:#91a0a2;padding:16px 30px 30px;font-size:11px}@media (width<=800px){.supplier-portal-host .app-shell{display:block}.supplier-portal-host .sidebar{min-height:unset;padding:12px 14px}.supplier-portal-host .brand{padding:0 4px 12px}.supplier-portal-host .sidebar nav{display:flex;overflow:auto}.supplier-portal-host .sidebar nav button{white-space:nowrap;padding:9px 10px}.supplier-portal-host .sidebar-foot{display:none}.supplier-portal-host .topbar{height:auto;padding:18px 20px}.supplier-portal-host .page{padding:23px 20px}.supplier-portal-host .global-alert{margin:15px 20px 0}.supplier-portal-host .stats{grid-template-columns:1fr 1fr}.supplier-portal-host .two-col,.supplier-portal-host .detail-grid{grid-template-columns:1fr}.supplier-portal-host .welcome{padding:24px;display:block}.supplier-portal-host .welcome .primary{margin-top:18px}.supplier-portal-host .table{overflow-x:auto}.supplier-portal-host .table-head,.supplier-portal-host .table-row{min-width:720px}.supplier-portal-host .form-grid{grid-template-columns:1fr}.supplier-portal-host .form-grid .full-field{grid-column:auto}.supplier-portal-host .login-panel{padding:32px 25px}}.supplier-portal-host .tag.status-quoting,.supplier-portal-host .tag.status-waiting-quote{color:#a15c00;background:#fff4e5}.supplier-portal-host .tag.status-submitted{color:#245ea8;background:#eaf2ff}.supplier-portal-host .tag.status-published{color:#6741a5;background:#f1ecff}.supplier-portal-host .tag.status-evaluating,.supplier-portal-host .tag.status-in-transit{color:#245ea8;background:#eaf2ff}.supplier-portal-host .tag.status-awarded,.supplier-portal-host .tag.status-selected,.supplier-portal-host .tag.status-won,.supplier-portal-host .tag.status-approved{color:#177245;background:#e8f7ee}.supplier-portal-host .tag.status-completed,.supplier-portal-host .tag.status-delivered{color:#1b6470;background:#e8f4f5}.supplier-portal-host .tag.status-exception{color:#b42318;background:#fff0ef}.supplier-portal-host .tag.status-expired,.supplier-portal-host .status-text.status-expired{color:#68757a;background:#f1f3f4}.supplier-portal-host .tag.status-pending{color:#a15c00;background:#fff4e5}.supplier-portal-host .tag.status-withdrawn,.supplier-portal-host .tag.status-cancelled,.supplier-portal-host .tag.status-rejected,.supplier-portal-host .tag.status-lost,.supplier-portal-host .tag.status-no-quote{color:#68757a;background:#f1f3f4}.supplier-portal-host .status-text{border-radius:4px;padding:4px 8px;font-size:11px;line-height:1.2;display:inline-block}.supplier-portal-host .status-text.status-quoting,.supplier-portal-host .status-text.status-waiting-quote{color:#a15c00;background:#fff4e5}.supplier-portal-host .status-text.status-submitted{color:#245ea8;background:#eaf2ff}.supplier-portal-host .status-text.status-published{color:#6741a5;background:#f1ecff}.supplier-portal-host .status-text.status-awarded,.supplier-portal-host .status-text.status-selected,.supplier-portal-host .status-text.status-won,.supplier-portal-host .status-text.status-approved{color:#177245;background:#e8f7ee}.supplier-portal-host .status-text.status-completed,.supplier-portal-host .status-text.status-delivered{color:#1b6470;background:#e8f4f5}.supplier-portal-host .status-text.status-exception{color:#b42318;background:#fff0ef}.supplier-portal-host .status-text.status-pending{color:#a15c00;background:#fff4e5}.supplier-portal-host .status-text.status-withdrawn,.supplier-portal-host .status-text.status-cancelled,.supplier-portal-host .status-text.status-rejected,.supplier-portal-host .status-text.status-lost,.supplier-portal-host .status-text.status-no-quote{color:#68757a;background:#f1f3f4}.supplier-portal-host{letter-spacing:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}.supplier-portal-host .app-shell{background:#f5f8f7;grid-template-columns:248px minmax(0,1fr)}.supplier-portal-host .sidebar{background:#0c2429;padding:20px 16px}.supplier-portal-host .sidebar .brand{border-bottom-color:#274246;gap:12px;margin-bottom:24px;padding:0 4px 18px}.supplier-portal-host .sidebar nav{gap:7px}.supplier-portal-host .sidebar nav button{border-radius:8px;gap:11px;min-height:44px;padding:10px 12px;font-size:13px}.supplier-portal-host .sidebar nav button:hover,.supplier-portal-host .sidebar nav button.active{background:#173f40}.supplier-portal-host .content{background:#f5f8f7;min-width:0}.supplier-portal-host .topbar{background:#fff;border-bottom-color:#dce7e3;height:auto;min-height:78px;padding:14px 36px}.supplier-portal-host .topbar h2{font-size:24px;font-weight:750}.supplier-portal-host .page{max-width:1480px;padding:20px 36px 34px}.supplier-portal-host .section-intro{margin-bottom:16px}.supplier-portal-host .section-intro h1,.supplier-portal-host .detail-head h1,.supplier-portal-host .welcome h1{font-size:25px;font-weight:750;line-height:1.3}.supplier-portal-host .section-intro p,.supplier-portal-host .detail-head p,.supplier-portal-host .welcome p{font-size:13px;line-height:1.65}.supplier-portal-host .welcome{background:#dff1eb;border:1px solid #cfe4dd;border-radius:8px;padding:28px 32px}.supplier-portal-host .stats article,.supplier-portal-host .panel,.supplier-portal-host .result-card{border-radius:8px;box-shadow:0 4px 14px #113f3d09}.supplier-portal-host .stats article{min-height:126px;padding:18px 20px}.supplier-portal-host .panel{padding:20px}.supplier-portal-host .table.panel,.supplier-portal-host .message-list.panel{padding:0}.supplier-portal-host .panel h3{font-size:15px;line-height:1.35}.supplier-portal-host .list-row,.supplier-portal-host .message-row,.supplier-portal-host .table-row{font-size:13px}.supplier-portal-host .list-row{min-height:58px}.supplier-portal-host .filter-bar{margin:-4px 0 18px}.supplier-portal-host .list-search{width:min(100%,620px);margin:0 0 12px}.supplier-portal-host .list-search input{color:#18323b;background:#fff;border:1px solid #cbded8;border-radius:7px;outline:0;width:100%;min-height:40px;padding:9px 12px}.supplier-portal-host .list-search input:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1f}.supplier-portal-host .filter-bar button,.supplier-portal-host .primary,.supplier-portal-host .secondary{border-radius:7px;min-height:38px}.supplier-portal-host .login-shell{background:linear-gradient(135deg,#e5f4ef,#f7faf8 55%,#e9f0f3)}.supplier-portal-host .login-panel{border-radius:12px;padding:40px;box-shadow:0 18px 48px #164e3c1a}@media (width<=800px){.supplier-portal-host .topbar{min-height:72px;padding:12px 20px}.supplier-portal-host .page{padding:18px 20px 28px}.supplier-portal-host .section-intro{margin-bottom:14px}.supplier-portal-host .panel{padding:18px}.supplier-portal-host .table.panel,.supplier-portal-host .message-list.panel{padding:0}}.supplier-portal-host .list-pagination{color:#708487;justify-content:center;align-items:center;gap:12px;margin:16px 0 4px;font-size:12px;display:flex}.supplier-portal-host .list-pagination span{text-align:center;min-width:150px}.supplier-portal-host .clickable-row{cursor:pointer}.supplier-portal-host .clickable-row:focus-visible{outline-offset:-2px;background:#f4fbf8;outline:2px solid #0f766e}.supplier-portal-host .detail-link{color:#0f766e;text-align:right;white-space:nowrap;font-size:13px;font-weight:700}.supplier-portal-host .record-detail-layout{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr)}.supplier-portal-host .readonly-card h3{margin-bottom:14px}.supplier-portal-host .record-card-heading{border-bottom:1px solid #edf2f0;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:12px;display:flex}.supplier-portal-host .record-meta,.supplier-portal-host .record-empty{color:#7b8e91;font-size:12px}.supplier-portal-host .readonly-item{border-bottom:1px solid #edf2f0;padding:16px 0}.supplier-portal-host .readonly-item:last-child{border-bottom:0;padding-bottom:2px}.supplier-portal-host .readonly-item-summary strong,.supplier-portal-host .readonly-item-summary small{display:block}.supplier-portal-host .readonly-item-summary strong{color:#193d43;font-size:14px}.supplier-portal-host .readonly-item-summary small{color:#7d9094;margin-top:4px;font-size:12px;line-height:1.5}.supplier-portal-host .readonly-fields,.supplier-portal-host .readonly-summary{gap:10px 16px;margin:13px 0 0;display:grid}.supplier-portal-host .readonly-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.supplier-portal-host .readonly-summary{grid-template-columns:minmax(88px,.35fr) minmax(0,1fr)}.supplier-portal-host .readonly-fields div,.supplier-portal-host .readonly-summary div{min-width:0}.supplier-portal-host .readonly-fields dt,.supplier-portal-host .readonly-summary dt{color:#819397;font-size:12px}.supplier-portal-host .readonly-fields dd,.supplier-portal-host .readonly-summary dd{color:#315257;overflow-wrap:anywhere;margin:3px 0 0;font-size:13px}.supplier-portal-host .readonly-summary .amount{color:#0f766e;font-size:17px;font-weight:750}.supplier-portal-host .readonly-attachments{flex-wrap:wrap;gap:8px;display:flex}.supplier-portal-host .readonly-attachments span{color:#496b70;background:#f7fbfa;border:1px solid #d7e5e1;border-radius:6px;padding:7px 10px;font-size:12px}.supplier-portal-host .list-pagination button{min-width:72px;padding:7px 12px;font-size:12px}@media (width<=800px){.supplier-portal-host .list-pagination{gap:8px;margin-top:14px}.supplier-portal-host .list-pagination span{min-width:0}.supplier-portal-host .detail-link{text-align:left}.supplier-portal-host .record-card-heading{display:block}.supplier-portal-host .record-meta{margin-top:5px;display:block}.supplier-portal-host .readonly-fields,.supplier-portal-host .readonly-summary{grid-template-columns:1fr 1fr}}.supplier-portal-host .detail-head{margin-bottom:18px;padding:2px 2px 0}.supplier-portal-host .detail-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);align-items:start;gap:20px}.supplier-portal-host .detail-grid>.panel{min-width:0}.supplier-portal-host .detail-grid>.panel.summary{background:#fbfdfc;padding:22px 24px;position:sticky;top:20px}.supplier-portal-host .detail-grid>.panel.summary h3{border-bottom:1px solid #e4eeeb;align-items:center;gap:9px;margin-bottom:14px;padding-bottom:14px;display:flex}.supplier-portal-host .detail-grid>.panel.summary h3:before{content:"";background:#0f766e;border-radius:3px;width:4px;height:17px}.supplier-portal-host .summary dl{grid-template-columns:86px minmax(0,1fr);gap:12px;margin:0;line-height:1.45}.supplier-portal-host .summary dd{overflow-wrap:anywhere}.supplier-portal-host .item-card{grid-template-columns:minmax(180px,1fr) minmax(300px,1.2fr);align-items:start;gap:24px;padding:18px 0;display:grid}.supplier-portal-host .item-card>div{padding-top:5px}.supplier-portal-host .item-card>div strong{color:#193d43;font-size:14px}.supplier-portal-host .item-card>div small{font-size:12px;line-height:1.6}.supplier-portal-host .item-card>label{color:#587277;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px 12px;width:auto;font-size:12px;font-weight:700;display:grid}.supplier-portal-host .item-card>label>input{grid-column:1/-1;margin-top:-6px}.supplier-portal-host .item-card>label>small{color:#6f8588;gap:5px;margin:0;font-size:11px;font-weight:600;display:grid}.supplier-portal-host .item-card>label>small input{width:100%;min-width:0;margin:0;padding:8px 9px}.supplier-portal-host .existing-quote{border-radius:7px;margin:14px 0 18px}.supplier-portal-host .quote-extra{border-top:1px solid #edf2f0;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:15px 0 2px}.supplier-portal-host .quote-extra label:last-child{grid-column:1/-1;max-width:50%}.supplier-portal-host .upload-field{background:#fbfdfc;border:1px dashed #c9dcd7;border-radius:7px;margin:18px 0;padding:14px}.supplier-portal-host .upload-field input[type=file]{background:#fff;border:1px solid #d7e5e1;border-radius:6px;width:100%;padding:9px}.supplier-portal-host .upload-field .upload-hint{color:#7a8783;margin:5px 0 9px;font-weight:400;display:block}.supplier-portal-host .item-fields .item-text-field{grid-column:1/-1}.supplier-portal-host .detail-grid>.panel:first-child>.primary{min-width:120px}@media (width<=980px){.supplier-portal-host .detail-grid{grid-template-columns:minmax(0,1.4fr) minmax(250px,.9fr)}.supplier-portal-host .item-card{grid-template-columns:1fr;gap:13px}}@media (width<=800px){.supplier-portal-host .detail-grid{grid-template-columns:1fr}.supplier-portal-host .detail-grid>.panel.summary{position:static}.supplier-portal-host .quote-extra,.supplier-portal-host .item-card>label{grid-template-columns:1fr}.supplier-portal-host .quote-extra label:last-child{grid-column:auto;max-width:none}}.supplier-portal-host .page:has(.profile-panel){max-width:1480px}:is(.supplier-portal-host .page:has(.profile-panel)>.section-intro,.supplier-portal-host .page:has(.profile-panel)>.profile-panel){width:min(100%,1200px);margin-left:auto;margin-right:auto}.supplier-portal-host .page:has(.profile-panel)>.section-intro{align-items:center;margin-bottom:14px;padding:0 2px}.supplier-portal-host .page:has(.profile-panel)>.section-intro>div{min-width:0}.supplier-portal-host .profile-panel{max-width:none;padding:26px 28px 24px}.supplier-portal-host .profile-status{margin-bottom:22px;padding-bottom:18px}.supplier-portal-host .profile-status h3{font-size:18px}.supplier-portal-host .profile-review-notice{gap:5px;margin:0 0 20px;display:grid}.supplier-portal-host .profile-review-notice strong{font-size:14px}.supplier-portal-host .form-grid{gap:19px 22px}.supplier-portal-host .page:has(.profile-panel) .qualification{background:#fbfdfc;align-items:center;gap:10px 22px;padding:15px 18px 14px}.supplier-portal-host .page:has(.profile-panel) .qualification label{white-space:nowrap;min-height:26px}.supplier-portal-host .page:has(.profile-panel) .qualification input[type=checkbox]{accent-color:#0f766e}.supplier-portal-host .profile-panel>.upload-field{margin-top:4px}.supplier-portal-host .profile-panel>.primary{min-width:136px}.supplier-portal-host .qualification label span{align-items:center;gap:7px;display:inline-flex}.supplier-portal-host .qualification label em{color:#0f766e;background:#e8f6f1;border-radius:4px;padding:2px 6px;font-size:11px;font-style:normal}.supplier-portal-host .qualification-upload-section{border-top:1px solid #e3ece9;margin:2px 0 20px;padding-top:18px}.supplier-portal-host .qualification-section-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}.supplier-portal-host .qualification-section-head h3,.supplier-portal-host .qualification-history h3{color:#173d40;margin:0;font-size:15px}.supplier-portal-host .qualification-section-head span,.supplier-portal-host .qualification-history p{color:#819397;margin:0;font-size:12px}.supplier-portal-host .qualification-section-notes{text-align:right;flex-direction:column;align-items:flex-end;gap:3px;display:flex}.supplier-portal-host .qualification-section-notes span{white-space:nowrap}.supplier-portal-host .qualification-upload-list{gap:10px;display:grid}.supplier-portal-host .qualification-upload-row{background:#fbfdfc;border:1px solid #dce8e4;border-radius:8px;grid-template-columns:minmax(190px,.9fr) minmax(240px,1.6fr) auto;align-items:center;gap:14px;padding:13px 14px;display:grid}.supplier-portal-host .qualification-upload-name,.supplier-portal-host .qualification-file-info{min-width:0}.supplier-portal-host .qualification-upload-name strong,.supplier-portal-host .qualification-file-info strong{color:#315257;text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.supplier-portal-host .qualification-upload-name small,.supplier-portal-host .qualification-file-info small,.supplier-portal-host .qualification-file-info>span{color:#819397;margin-top:3px;font-size:12px;display:block}.supplier-portal-host .qualification-upload-actions{gap:8px;display:flex}.supplier-portal-host .file-select{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.supplier-portal-host .file-select input{display:none}.supplier-portal-host .danger-text{color:#b42318}.supplier-portal-host .qualification-upload-status{color:#0f766e;grid-column:2/-1;margin:-5px 0 0;font-size:12px}.supplier-portal-host .error-text{color:#b42318}.supplier-portal-host .qualification-history{background:#f8faf9;border:1px solid #e1e7e5;border-radius:8px;margin-bottom:18px;padding:14px}.supplier-portal-host .qualification-history>div{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.supplier-portal-host .qualification-history span{color:#496b70;background:#fff;border-radius:6px;padding:6px 9px;font-size:12px}.supplier-portal-host .qualification-summary{gap:8px;margin-bottom:18px;display:grid}@media (width<=800px){:is(.supplier-portal-host .page:has(.profile-panel)>.section-intro,.supplier-portal-host .page:has(.profile-panel)>.profile-panel){width:100%}.supplier-portal-host .page:has(.profile-panel)>.section-intro{align-items:flex-start}.supplier-portal-host .profile-panel{padding:20px 18px}.supplier-portal-host .page:has(.profile-panel) .qualification{gap:8px 16px}.supplier-portal-host .page:has(.profile-panel) .qualification label{white-space:normal}.supplier-portal-host .qualification-upload-row{grid-template-columns:1fr}.supplier-portal-host .qualification-upload-status{grid-column:auto}.supplier-portal-host .qualification-section-head{flex-direction:column;align-items:flex-start;gap:4px}.supplier-portal-host .qualification-section-notes{text-align:left;align-items:flex-start}}.supplier-portal-host .stats .stat-card{appearance:none;color:#18323b;text-align:left;background:#fff;border:1px solid #e1ebe8;border-radius:8px;width:100%;min-height:126px;padding:18px 20px;transition:border-color .2s,background-color .2s,box-shadow .2s,transform .2s;display:block;box-shadow:0 4px 14px #113f3d09}.supplier-portal-host .stats .stat-card:hover{background:#fbfffe;border-color:#9bcfc3;transform:translateY(-2px);box-shadow:0 8px 20px #113f3d14}.supplier-portal-host .stats .stat-card:focus-visible{outline-offset:2px;outline:3px solid #9dd4c8}.supplier-portal-host .detail-back{color:#0f655e;background:#f4fbf8;border:1px solid #b9d6cf;border-radius:7px;align-items:center;gap:6px;margin:0 0 12px;padding:8px 12px;font-size:15px;font-weight:700;line-height:1.35;display:inline-flex}.supplier-portal-host .detail-back:hover{background:#e8f6f1;border-color:#86bdb1}.supplier-portal-host .detail-head{margin:2px 0 14px}.supplier-portal-host .detail-grid{grid-template-columns:minmax(0,1.7fr) minmax(250px,.8fr);gap:16px}.supplier-portal-host .detail-grid>.panel:first-child{padding:18px 20px 20px}.supplier-portal-host .detail-grid>.panel.summary{padding:18px 20px}.supplier-portal-host .item-card{grid-template-columns:minmax(170px,.85fr) minmax(0,1.35fr);gap:18px;padding:14px 0}.supplier-portal-host .item-card>label{gap:8px 10px}.supplier-portal-host .item-card>label>input{padding:9px 10px}.supplier-portal-host .item-card>label>small input{padding:7px 8px}.supplier-portal-host .full-field{margin-top:14px}.supplier-portal-host .quote-extra{gap:12px;padding:12px 0 0}.supplier-portal-host .upload-field{margin:14px 0;padding:12px}@media (width<=800px){.supplier-portal-host .detail-back{padding:7px 10px;font-size:14px}.supplier-portal-host .detail-grid>.panel:first-child,.supplier-portal-host .detail-grid>.panel.summary{padding:16px}.supplier-portal-host .item-card{gap:10px;padding:12px 0}}.supplier-portal-host .request-detail-layout{grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);align-items:start;gap:18px}.supplier-portal-host .detail-main{gap:14px;min-width:0;display:grid}.supplier-portal-host .detail-card{background:#fff;border:1px solid #dfeae6;border-radius:10px;min-width:0;padding:18px 20px 20px;box-shadow:0 4px 14px #113f3d0a}.supplier-portal-host .detail-card>h3{color:#183b42;border-bottom:1px solid #e8efed;margin:0;padding-bottom:12px;font-size:16px;font-weight:750;line-height:1.35}.supplier-portal-host .item-panel .item-card{border-top:1px solid #edf2f0;grid-template-columns:1fr;gap:14px;padding:16px 0 18px}.supplier-portal-host .item-panel .item-card:first-of-type{border-top:0}.supplier-portal-host .item-summary{min-width:0}.supplier-portal-host .item-summary strong,.supplier-portal-host .item-summary small{display:block}.supplier-portal-host .item-summary strong{color:#193d43;font-size:14px;line-height:1.4}.supplier-portal-host .item-summary small{color:#7d9094;margin-top:4px;font-size:12px;line-height:1.55}.supplier-portal-host .item-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;display:grid}.supplier-portal-host .item-fields label,.supplier-portal-host .total-field{color:#587277;text-align:right;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:500;display:grid}.supplier-portal-host .item-fields input,.supplier-portal-host .total-field input{width:100%;min-width:0;margin:0}.supplier-portal-host .payment-panel .full-field{gap:8px;margin:14px 0 0}.supplier-portal-host .payment-panel .full-field>span{color:#587277;font-size:12px;font-weight:500}.supplier-portal-host .payment-panel textarea{resize:vertical;min-height:88px}.supplier-portal-host .quote-panel .existing-quote{margin:14px 0 16px}.supplier-portal-host .quote-panel .quote-extra{border-top:1px solid #edf2f0;margin:14px 0 16px;padding:14px 0 0}.supplier-portal-host .quote-panel .quote-extra label{color:#587277;text-align:right;grid-template-columns:82px minmax(0,1fr);align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:500;display:grid}.supplier-portal-host .quote-panel .quote-extra input,.supplier-portal-host .quote-panel .quote-extra select{width:100%;min-width:0;margin:0}.supplier-portal-host .quote-panel .quote-extra label:last-child{grid-column:auto;max-width:none}.supplier-portal-host .quote-panel .total-field{max-width:none;margin-top:2px}.supplier-portal-host .quote-panel .upload-field{margin:16px 0 12px}.supplier-portal-host .quote-actions{justify-content:flex-end;padding-top:2px;display:flex}.supplier-portal-host .quote-actions .primary{min-width:126px}@media (width<=980px){.supplier-portal-host .request-detail-layout{grid-template-columns:1fr}.supplier-portal-host .request-detail-layout .summary{position:static}}@media (width<=640px){.supplier-portal-host .detail-card{padding:16px}.supplier-portal-host .item-fields{grid-template-columns:1fr;gap:10px}.supplier-portal-host .item-fields label,.supplier-portal-host .total-field{grid-template-columns:76px minmax(0,1fr)}}.supplier-portal-host .request-detail-layout .detail-main{gap:16px}.supplier-portal-host .request-detail-layout .detail-card{border-color:#d5e5df;box-shadow:0 8px 22px #113f3d0e}.supplier-portal-host .request-detail-layout .detail-card>h3{align-items:center;gap:9px;padding-bottom:13px;font-size:17px;display:flex}.supplier-portal-host .request-detail-layout .detail-card>h3:before{content:"";background:#0f766e;border-radius:3px;width:4px;height:18px}.supplier-portal-host .item-panel .item-card{background:#f7fbfa;border:1px solid #e0ece8;border-radius:8px;width:100%;margin-top:12px;padding:15px 16px 16px}.supplier-portal-host .item-panel .item-card:first-of-type{margin-top:14px}.supplier-portal-host .item-summary{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.supplier-portal-host .item-summary strong{font-size:15px;font-weight:750}.supplier-portal-host .item-summary small{margin-top:3px}.supplier-portal-host .item-fields{gap:11px 20px;width:100%;padding-top:2px}.supplier-portal-host .item-fields label,.supplier-portal-host .total-field{grid-template-columns:76px minmax(0,1fr);width:100%;min-height:40px;font-size:12px;font-weight:600}.supplier-portal-host .item-fields input,.supplier-portal-host .total-field input,.supplier-portal-host .quote-panel .quote-extra input,.supplier-portal-host .quote-panel .quote-extra select{background:#fff;border-color:#cbded8;min-height:40px;padding:9px 11px}.supplier-portal-host .item-fields input:focus,.supplier-portal-host .total-field input:focus,.supplier-portal-host .quote-panel .quote-extra input:focus,.supplier-portal-host .quote-panel .quote-extra select:focus{border-color:#0f766e;box-shadow:0 0 0 3px #0f766e1f}.supplier-portal-host .item-fields label:nth-child(3),.supplier-portal-host .item-fields label:nth-child(4){grid-column:1/-1}.supplier-portal-host .payment-panel .full-field{margin-top:15px}.supplier-portal-host .payment-panel textarea{background:#fbfdfc;border-color:#cbded8;min-height:96px;padding:12px 13px}.supplier-portal-host .quote-panel .quote-extra{gap:12px 20px}.supplier-portal-host .quote-panel .total-field{margin-top:5px}.supplier-portal-host .quote-panel .total-field output{color:#0f5d54;background:#f7fbfa;border:1px solid #cbded8;border-radius:6px;align-items:center;min-height:40px;padding:9px 11px;font-size:16px;font-weight:700;display:flex}.supplier-portal-host .quote-panel .upload-field{background:#f7fbfa;border-color:#bcd8d0;margin-top:18px}.supplier-portal-host .quote-actions .primary{border-radius:8px;min-height:42px;padding:10px 22px;box-shadow:0 5px 12px #0f766e29}@media (width<=640px){.supplier-portal-host .item-summary{display:block}.supplier-portal-host .item-panel .item-card{padding:14px}}.supplier-portal-host .table-head{font-size:12px}.supplier-portal-host .table-row{font-size:13px}.supplier-portal-host .table-row strong{font-size:14px}.supplier-portal-host .table-row small,.supplier-portal-host .tag,.supplier-portal-host .status-text{font-size:12px}.supplier-portal-host .result-card h3{font-size:15px}.supplier-portal-host .result-card p,.supplier-portal-host .result-card small,.supplier-portal-host .text-button,.supplier-portal-host .back{font-size:13px}.supplier-portal-host .message-row em.message-status{color:#0f655e;background:#e5f2ef;border:1px solid #c8e3db;border-radius:6px;justify-content:center;align-items:center;min-width:42px;padding:4px 9px;font-size:11px;line-height:1.2;display:inline-flex}.supplier-portal-host .message-row em.message-status.unread{color:#a15c00;background:#fff4e5;border-color:#f1d2a8}.supplier-portal-host .filter-bar{flex-wrap:wrap;gap:8px;margin:-8px 0 16px;display:flex}.supplier-portal-host .filter-bar button{color:#597276;background:#fff;border:1px solid #d7e5e1;border-radius:5px;padding:7px 13px;font-size:12px}.supplier-portal-host .filter-bar button.selected{color:#fff;background:#0f766e;border-color:#0f766e}.supplier-portal-host .mini-action{color:#0f766e;background:#eaf5f1;border:0;border-radius:4px;margin-left:7px;padding:3px 7px;font-size:11px}.supplier-portal-host .upload-field{color:#71878a;gap:7px;margin:15px 0;font-size:12px;display:grid}.supplier-portal-host .upload-field input[type=file]{font-size:12px}.supplier-portal-host .upload-field small{color:#4f7770}.supplier-portal-host .qualification{color:#547074;border:1px solid #dbe8e4;border-radius:7px;flex-wrap:wrap;grid-column:1/-1;gap:12px;padding:12px;font-size:12px;display:flex}.supplier-portal-host .qualification legend{color:#36565d;padding:0 5px;font-weight:700}.supplier-portal-host .qualification label{align-items:center;gap:4px;display:flex}.supplier-portal-host .existing-quote{color:#76511c;background:#fff8ec;border:1px solid #f3dfba;justify-content:space-between;align-items:center;gap:12px;margin:16px 0;padding:12px;font-size:12px;display:flex}.supplier-portal-host .existing-quote .secondary{padding:6px 10px;font-size:11px}.supplier-portal-host .message-detail{max-width:760px}.supplier-portal-host .message-detail h1{margin:6px 0 12px;font-size:24px}.supplier-portal-host .message-detail>p{color:#607a7d}.supplier-portal-host .message-detail dl{border-top:1px solid #edf2f0;grid-template-columns:100px 1fr;gap:12px;margin:24px 0;padding-top:18px;font-size:13px;display:grid}.supplier-portal-host .message-detail dt{color:#829396}.supplier-portal-host .message-detail dd{color:#31565b;margin:0}.supplier-portal-host .quotation-table .table-head,.supplier-portal-host .quotation-table .table-row{grid-template-columns:minmax(0,2.2fr) minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr) minmax(128px,.75fr)}.supplier-portal-host .quotation-status-actions{white-space:nowrap;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:10px;display:inline-flex}.supplier-portal-host .quotation-status-actions .tag{text-align:center;border-radius:6px;justify-content:center;align-items:center;min-width:58px;min-height:28px;padding:5px 10px;line-height:1.2;display:inline-flex}.supplier-portal-host .quotation-status-actions .mini-action{color:#0f766e;white-space:nowrap;background:#f4fbf8;border:1px solid #c8e3db;border-radius:6px;justify-content:center;align-items:center;min-width:44px;min-height:28px;margin-left:0;padding:4px 10px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.supplier-portal-host .quotation-status-actions .mini-action:hover{background:#e5f2ef}.supplier-portal-host .user-area{position:relative}.supplier-portal-host .user-chip{color:#1f4148;text-align:left;background:#fff;border:1px solid #e0eae7;border-radius:8px;align-items:center;gap:10px;min-width:210px;padding:7px 10px;display:flex}.supplier-portal-host .user-chip:hover{background:#f7fbfa;border-color:#c8ddd8}.supplier-portal-host .user-chip .avatar{flex:0 0 34px;display:grid}.supplier-portal-host .user-copy{flex:1;min-width:0}.supplier-portal-host .user-copy strong,.supplier-portal-host .user-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.supplier-portal-host .user-copy strong{max-width:145px;font-size:13px}.supplier-portal-host .user-copy small{color:#809094;margin-top:2px;font-size:11px}.supplier-portal-host .user-chevron{color:#6f8588;font-size:16px;line-height:1}.supplier-portal-host .user-menu{z-index:10;background:#fff;border:1px solid #dce9e5;border-radius:8px;width:230px;padding:15px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 14px 30px #183b3d1c}.supplier-portal-host .user-menu-heading{color:#899a9c;margin-bottom:8px;font-size:11px}.supplier-portal-host .user-menu>strong,.supplier-portal-host .user-menu>span{display:block}.supplier-portal-host .user-menu>strong{color:#21464d;font-size:13px}.supplier-portal-host .user-menu>span{color:#809094;margin-top:3px;font-size:12px}.supplier-portal-host .user-menu-logout{color:#b42318;text-align:left;background:#fff1f0;border:0;border-radius:6px;width:100%;margin-top:14px;padding:9px;font-size:12px;font-weight:700}.supplier-portal-host .user-menu-logout:hover{background:#ffe4e1}@media (width<=800px){.supplier-portal-host .user-chip{min-width:170px}.supplier-portal-host .user-copy strong{max-width:110px}.supplier-portal-host .user-menu{right:0}}.supplier-portal-host .brand-mark.logo-mark{background:0 0;border:0;border-radius:0;width:132px;height:62px}.supplier-portal-host .brand-mark.logo-mark img{object-fit:contain;width:100%;height:100%;display:block}.supplier-portal-host .brand-mark.small.logo-mark{flex:0 0 74px;width:74px;height:44px}.supplier-portal-host .login-brand{color:#18323b;border-bottom:1px solid #dbe8e4;align-items:center;gap:12px;margin:0 0 22px;padding:0 0 20px}.supplier-portal-host .login-brand .brand-mark.logo-mark{flex:0 0 102px;width:102px;height:52px}.supplier-portal-host .login-brand h1{color:#18323b;letter-spacing:0;margin:0;font-size:23px;line-height:1.2}.supplier-portal-host .login-brand p{color:#789096;margin:5px 0 0;font-size:12px;line-height:1.2}.supplier-portal-host .sidebar .brand strong{font-size:15px;line-height:1.2}.supplier-portal-host .sidebar .brand span{color:#83999a;letter-spacing:.4px;font-size:11px;line-height:1.2}.supplier-portal-host .sidebar nav button{position:relative}.supplier-portal-host .nav-icon{color:#9fcac5;background:#112f34;border:1px solid #3a5d60;border-radius:6px;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:12px;line-height:1;display:grid}.supplier-portal-host .sidebar nav button:hover .nav-icon,.supplier-portal-host .sidebar nav button.active .nav-icon{color:#fff;background:#205653;border-color:#4d8c86}.supplier-portal-host .nav-chevron{opacity:.85;border-top:2px solid;border-right:2px solid;flex:0 0 8px;width:8px;height:8px;margin-left:auto;transform:rotate(45deg)}.supplier-portal-host .sidebar nav b+.nav-chevron{margin-left:10px}@media (width<=800px){.supplier-portal-host .login-brand .brand-mark.logo-mark{flex-basis:88px;width:88px}.supplier-portal-host .login-brand h1{font-size:21px}}
