:root{
  --bg:#f7f9fb;
  --panel:#ffffff;
  --panel-soft:#f4f7f9;
  --text:#101828;
  --muted:#7d8797;
  --line:#e6ebf0;
  --line-strong:#d8dee7;
  --lime:#9be64d;
  --lime-dark:#79ca2e;
  --green:#138a4b;
  --green-soft:#e9f8ef;
  --blue:#1888e8;
  --blue-soft:#eaf4ff;
  --amber:#f1a600;
  --amber-soft:#fff5d9;
  --red:#eb3c47;
  --red-soft:#fff0f2;
  --shadow:0 8px 24px rgba(16,24,40,.05);
  --radius:12px;
  --font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:var(--font);color:var(--text);background:linear-gradient(180deg,#fff 0,#f7f9fb 32%,#f5f7fa 100%);font-size:14px}
button,input,select,textarea{font:inherit}
button{cursor:pointer;color:inherit}
svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hidden{display:none!important}

.topbar{height:86px;background:#fff;border-bottom:1px solid #eef1f4;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:0 42px;gap:34px;position:sticky;top:0;z-index:40}
.brand-zone{display:flex;align-items:center;gap:28px;min-width:max-content}
.brand-logo{position:relative;display:flex;align-items:baseline;line-height:1;letter-spacing:-1px;font-weight:900;font-size:25px;padding-top:8px}
.brand-logo .brand-a{font-size:36px;color:#e1252b;font-style:italic;margin-right:-2px;text-shadow:1px 1px 0 #111}
.brand-logo .brand-word{color:#e1252b}
.brand-logo .brand-sls{color:#111827;margin-left:2px}
.brand-logo .brand-ai{position:absolute;top:-3px;right:3px;font-size:8px;letter-spacing:2.5px;color:#4c5563;font-weight:800}
.section-name{font-size:19px;font-weight:800;letter-spacing:.2px}
.topnav{display:flex;align-items:center;justify-content:center;gap:23px;min-width:0}
.topnav-btn{appearance:none;background:none;border:0;padding:30px 0 11px;color:#111827;font-size:14px;position:relative;white-space:nowrap}
.topnav-btn.active{font-weight:700}
.topnav-btn.active:after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;background:var(--lime-dark);border-radius:2px}
.topnav-btn:hover{color:#000}
.nav-dot{position:absolute;width:8px;height:8px;background:#f35b62;border-radius:50%;right:-7px;top:22px}
.mini-icon-btn{width:38px;height:38px;border:1px solid var(--line);border-radius:9px;background:#fff;display:grid;place-items:center;margin-left:2px}
.account-zone{display:flex;align-items:center;gap:16px;position:relative;min-width:max-content}
.header-action,.header-text-action{border:0;background:none;padding:7px 4px;display:flex;align-items:center;gap:7px;color:#111827;position:relative}
.header-action{width:34px;height:34px;justify-content:center}
.header-text-action{font-size:14px}
.header-text-action .glyph{font-size:19px;line-height:1}
.notif-dot{position:absolute;right:4px;top:3px;width:8px;height:8px;border-radius:50%;background:#ef4d57;border:2px solid #fff;box-sizing:content-box}
.profile{display:flex;align-items:center;gap:11px;padding-left:6px;cursor:pointer}
.profile-text{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:125px}
.profile-text strong{font-size:14px}.profile-text span{color:#8a94a3;font-size:12px}
.profile-avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(145deg,#e8edf4,#cbd4df);display:grid;place-items:center;font-weight:800;color:#344054;border:2px solid #fff;box-shadow:0 0 0 1px #e9edf2}
.profile-chevron{font-size:17px;color:#667085}
.account-menu{position:absolute;right:0;top:61px;width:330px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 55px rgba(16,24,40,.16);padding:16px;z-index:70}
.account-menu-title{font-weight:800;margin-bottom:9px}.account-menu select{width:100%;height:42px;border:1px solid var(--line-strong);border-radius:8px;padding:0 10px;background:#fff}.account-menu-hint{font-size:12px;color:var(--muted);line-height:1.45;margin-top:9px}

.page-shell{padding:22px 38px 34px;max-width:1920px;margin:0 auto}
.page-view{display:none}.page-view.active{display:block}
.list-toolbar{display:grid;grid-template-columns:250px minmax(520px,1fr) auto;gap:18px;align-items:center;margin:0 0 28px}
.create-btn{height:58px;border:0;border-radius:6px;background:var(--lime);font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;gap:13px;box-shadow:inset 0 -1px 0 rgba(0,0,0,.08)}
.create-btn:hover{background:#91db44}.circle-plus{font-size:24px;font-weight:500;line-height:1}
.search-panel{height:58px;border:1px solid #aeb5bf;border-radius:5px;background:#fff;display:grid;grid-template-columns:50px 1fr 112px;align-items:center;overflow:hidden}.search-panel svg{justify-self:center;width:27px;height:27px;stroke:#101010;stroke-width:2}.search-panel input{height:100%;border:0;outline:0;font-size:15px;min-width:0}.search-panel button{height:100%;border:0;background:#767676;color:#fff;font-weight:700;font-size:15px;padding:0 28px}
.toolbar-actions{display:flex;align-items:flex-start;gap:12px}.square-action{width:66px;height:66px;border:0;border-radius:8px;background:#f5f5f6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:11px;color:#3f4650}.square-action svg{width:24px;height:24px;color:#111}.square-action.accent{background:var(--lime);color:#111}.square-action:hover{filter:brightness(.98)}
.filters-panel{display:flex;align-items:end;gap:14px;padding:14px 16px;margin:-12px 0 20px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.filters-panel label{display:flex;flex-direction:column;gap:6px;color:#7b8492;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.4px}.filters-panel select{height:40px;min-width:190px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;padding:0 10px;color:#1d2939;text-transform:none;font-weight:500;letter-spacing:0}.text-btn{border:0;background:none;color:#5e6876;padding:10px 4px;text-decoration:underline}

.request-grid{display:grid;grid-template-columns:110px 105px 170px 140px 90px 140px 145px 125px 150px minmax(220px,1fr) 28px;gap:14px;align-items:center}
.list-header{padding:0 18px 10px;color:#7a8493;font-size:12px;white-space:nowrap}.list-header>div{overflow:hidden;text-overflow:ellipsis}.request-list{display:flex;flex-direction:column;gap:11px}
.request-row{min-height:68px;background:#fff;border-radius:8px;padding:11px 18px;box-shadow:0 4px 15px rgba(16,24,40,.035);border:1px solid #f0f2f5;transition:.15s ease;cursor:pointer}.request-row:hover{transform:translateY(-1px);box-shadow:0 10px 25px rgba(16,24,40,.07);border-color:#e1e6eb}.request-row>div{min-width:0;overflow:hidden;text-overflow:ellipsis}.req-no{font-size:16px;font-weight:800;white-space:nowrap}.request-funnel,.request-assignee,.request-branch,.request-date{white-space:nowrap}.request-type{display:flex;align-items:center;gap:10px;font-weight:500;line-height:1.25}.request-type .type-icon{font-size:21px;line-height:1}.request-applicant{display:flex;flex-direction:column;gap:3px}.request-applicant span{color:#8c96a5;font-size:12px}.request-comment{line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.row-menu{border:0;background:transparent;font-size:22px;padding:4px;color:#111}
.status-chip{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:7px;padding:8px 11px;font-size:13px;line-height:1.05;white-space:normal;text-align:center;font-weight:600}.status-chip .dot{width:9px;height:9px;border-radius:50%;background:currentColor}.status-chip.work{background:var(--blue-soft);color:var(--blue)}.status-chip.wait{background:var(--amber-soft);color:#e79b00}.status-chip.done{background:var(--green-soft);color:var(--green)}.status-chip.reject{background:var(--red-soft);color:var(--red)}.status-chip.closed{background:#eef1f4;color:#596273}.priority-mark{display:inline-flex;align-items:center;gap:8px}.priority-mark:before{content:"";width:8px;height:8px;border-radius:50%;background:#35ad5a}.priority-mark.p1:before{background:#f1343d}.priority-mark.p2:before{background:#ffb900}.priority-mark.p3:before{background:#31b55e}
.empty-state{padding:55px;text-align:center;background:#fff;border:1px dashed #dfe4e9;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:8px;color:#7b8492}.empty-icon{font-size:32px}.empty-state b{color:#344054;font-size:16px}.list-footer{display:flex;align-items:center;justify-content:space-between;padding:18px 2px 0;color:#8b94a2;font-size:12px}.pagination{display:flex;align-items:center;gap:8px}.pagination button{width:34px;height:34px;border:1px solid var(--line);background:#fff;border-radius:6px}.pagination .page-current{border-color:var(--lime-dark);box-shadow:inset 0 0 0 1px var(--lime-dark)}.pagination label{margin-left:30px;display:flex;align-items:center;gap:9px}.pagination select{height:34px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:0 26px 0 10px}

.back-link{border:0;background:none;padding:6px 0 18px;font-size:13px;display:flex;gap:8px;align-items:center}.request-top-strip{height:60px;background:#fff;border:1px solid #edf0f3;border-radius:7px;box-shadow:var(--shadow);display:flex;align-items:center;padding:0 22px;margin-bottom:18px;gap:20px}.detail-number{font-size:21px;font-weight:900}.strip-divider{width:1px;height:28px;background:#dfe4ea}.strip-meta{display:flex;align-items:center;gap:10px;min-width:max-content}.strip-meta .strip-icon{font-size:20px}.strip-meta>div{display:flex;align-items:center;gap:6px}.strip-meta small{color:#737f8e;font-size:11px}.strip-meta b{font-size:12px}.request-top-strip .status-chip{padding:7px 16px}.strip-dates{margin-left:auto;display:flex;align-items:center;gap:14px;color:#7d8795;font-size:11px;white-space:nowrap}.strip-dates b{font-weight:500;color:#586273}.strip-dates i{width:1px;height:16px;background:#dbe0e6}
.detail-layout{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(340px,.92fr);gap:24px;align-items:start}.detail-main-col,.detail-side-col{display:flex;flex-direction:column;gap:13px}.detail-card,.side-card{background:#fff;border:1px solid #e3e8ee;border-radius:11px;box-shadow:0 3px 12px rgba(16,24,40,.025)}.detail-card{padding:15px 19px}.side-card{padding:15px 16px}.detail-card-title,.detail-card-title-row,.side-title{display:flex;align-items:center;gap:9px}.detail-card-title{margin-bottom:13px}.detail-card-title b,.side-title b{font-size:15px}.detail-card-title-row{justify-content:space-between;margin-bottom:10px}.detail-card-title-row .detail-card-title{margin:0}.title-icon{width:22px;height:22px;display:grid;place-items:center;font-size:17px;font-weight:700;color:#101828}.success-icon{background:var(--green);color:#fff;border-radius:50%;font-size:12px;width:19px;height:19px}.detail-meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.meta-cell{display:flex;flex-direction:column;gap:5px}.meta-cell span,.field-view span{font-size:10px;color:#8a94a3}.meta-cell b{font-size:13px}.detail-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.field-view{padding:10px 12px;background:#f5f7f9;border-radius:7px;min-height:47px;display:flex;flex-direction:column;gap:4px}.field-view.full{grid-column:1/-1}.field-view b{font-size:13px;font-weight:650;white-space:pre-wrap}.original-data{margin-top:10px;border-top:1px solid var(--line);padding-top:10px}.original-data summary{cursor:pointer;color:#667085;font-size:12px}.original-data pre{white-space:pre-wrap;font-size:11px;background:#f7f8fa;padding:10px;border-radius:7px;max-height:180px;overflow:auto}.items-mini{width:100%;border-collapse:collapse;font-size:12px}.items-mini th{background:#f8fafb;color:#718096;text-align:left;font-weight:600;padding:8px 10px;border-bottom:1px solid #e2e7ec}.items-mini td{padding:8px 10px;border-bottom:1px solid #e7ebef}.items-mini tr:last-child td{border-bottom:0}.result-box{background:#f5faf7;color:#486253;border-radius:7px;padding:12px;min-height:40px;font-size:12px}.comments-list{display:flex;flex-direction:column;gap:10px}.comment{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:start;padding:9px 10px;border-radius:8px;background:#f7f9fb}.comment-avatar{width:34px;height:34px;border-radius:50%;background:#eef2f6;display:grid;place-items:center;font-weight:800;color:#6b7280}.comment-body b{font-size:12px}.comment-body p{margin:4px 0 0;font-size:12px;line-height:1.4}.comment-time{font-size:10px;color:#8b95a4}.comment.mine{background:#f2f7fc}.comment.deleted{opacity:.55;text-decoration:line-through}.comment-editor{margin-top:11px;border:1px solid #dce3ea;border-radius:8px;background:#fff;position:relative;display:grid;grid-template-columns:1fr auto;align-items:end}.comment-editor textarea{border:0;outline:0;resize:vertical;min-height:52px;padding:12px 13px;background:transparent}.comment-editor-actions{display:flex;align-items:center;gap:8px;padding:7px}.attach-btn{width:34px;height:34px;border-radius:7px;border:1px solid #dfe5eb;display:grid;place-items:center;cursor:pointer}.attach-btn input{display:none}.send-btn{width:42px;height:34px;border:0;border-radius:7px;background:var(--green);color:#fff;font-size:18px}.selected-file{font-size:10px;color:#667085;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachments-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.attachment{font-size:11px;padding:6px 9px;background:#f3f6f8;border-radius:6px;color:#344054;text-decoration:none}
.side-title{margin-bottom:10px}.side-title>span{font-size:18px}.side-control-row{display:grid;grid-template-columns:1fr 42%;gap:10px}.side-card select{height:42px;border:1px solid #dbe2e9;border-radius:8px;background:#fff;padding:0 10px}.outline-btn,.primary-btn,.wide-neutral-btn,.wide-success-btn,.wide-danger-btn{height:38px;border-radius:8px;font-weight:600;border:1px solid #dce3ea;background:#fff}.outline-btn{padding:0 14px}.outline-btn:hover{background:#f8fafb}.primary-btn{background:var(--green);color:#fff;border-color:var(--green);padding:0 22px}.wide-neutral-btn,.wide-success-btn,.wide-danger-btn{width:100%;height:42px}.wide-neutral-btn{background:#fff}.wide-success-btn{background:var(--green);border-color:var(--green);color:#fff}.wide-danger-btn{border-color:#ff8b92;color:#ef3340;background:#fff}.action-stack{display:flex;flex-direction:column;gap:8px}.green-play{color:var(--green)}.history-heading{display:grid;grid-template-columns:auto 1fr auto}.history-heading button{border:0;background:none;color:#667085;font-size:10px}.history-timeline{padding:3px 2px 1px 12px}.history-event{position:relative;padding:0 0 15px 22px}.history-event:last-child{padding-bottom:2px}.history-event:before{content:"";position:absolute;left:2px;top:4px;width:8px;height:8px;border-radius:50%;background:#a7b0bd}.history-event:first-child:before{background:var(--green)}.history-event:after{content:"";position:absolute;left:5px;top:15px;bottom:-2px;width:1px;background:#dfe4ea}.history-event:last-child:after{display:none}.history-event b{font-size:11px;display:block;padding-right:100px}.history-event span{font-size:10px;color:#8a94a3}.history-event time{position:absolute;right:0;top:0;font-size:10px;color:#8a94a3}.history-event p{margin:4px 0 0;font-size:10px;color:#667085;line-height:1.35}.applicant-action-note{font-size:11px;color:#667085;line-height:1.45}.applicant-action-title{font-weight:800;margin-bottom:9px}.applicant-actions-stack{display:flex;flex-direction:column;gap:8px}

.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-heading small{color:#8a94a3;font-weight:700;letter-spacing:.7px}.page-heading h1{margin:5px 0 0;font-size:24px}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:16px}.stat-card{padding:18px;background:#fff;border:1px solid var(--line);border-radius:10px}.stat-card span{color:#7b8492;font-size:11px}.stat-card b{display:block;font-size:26px;margin-top:7px}.stats-panels{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bar-list{display:flex;flex-direction:column;gap:12px}.bar-row{display:grid;grid-template-columns:150px 1fr 35px;gap:10px;align-items:center}.bar-row label{font-size:12px;color:#586273}.bar-track{height:8px;background:#eef2f5;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:var(--lime-dark);border-radius:999px}.bar-row b{text-align:right}.info-banner{margin-top:16px;padding:12px 14px;background:#fff8df;border:1px solid #f4e5a9;border-radius:8px;color:#746325;font-size:12px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-list{display:flex;flex-direction:column}.admin-row{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #edf0f2}.admin-row:last-child{border-bottom:0}.admin-row>div{display:flex;flex-direction:column;gap:3px}.admin-row span{font-size:11px;color:#7c8796}.danger-card{border-color:#f4d2d5}

.backdrop{position:fixed;inset:0;background:rgba(42,51,64,.46);backdrop-filter:blur(2px);z-index:80}.modal{position:fixed;z-index:90;left:50%;top:50%;transform:translate(-50%,-50%);width:min(920px,calc(100vw - 48px));max-height:88vh;background:#fff;border-radius:14px;box-shadow:0 25px 90px rgba(16,24,40,.25);display:flex;flex-direction:column;overflow:hidden}.mini-modal{width:min(560px,calc(100vw - 48px))}.modal-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-head small{color:#8c96a4;font-weight:700;letter-spacing:.5px}.modal-head h2{margin:4px 0 0;font-size:20px}.modal-close{width:34px;height:34px;border:0;background:#f2f5f7;border-radius:8px;font-size:21px;color:#6f7a88}.modal-body{padding:20px;overflow:auto}.modal-foot{padding:14px 20px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px}.step-grid,.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.step-grid label,.form-grid label,.action-field{display:flex;flex-direction:column;gap:6px;color:#647083;font-size:11px;font-weight:700}.step-grid input,.step-grid select,.form-grid input,.form-grid select,.form-grid textarea,.action-field textarea,.action-field select{width:100%;border:1px solid #dce3ea;border-radius:8px;background:#fff;padding:10px 11px;color:#101828;font-weight:500}.form-grid textarea,.action-field textarea{min-height:92px;resize:vertical}.form-grid .full{grid-column:1/-1}.form-description{margin:14px 0;padding:11px 12px;border-radius:8px;background:#f7f9fb;color:#667085;font-size:12px}.items-block{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-title>div:first-child{display:flex;flex-direction:column;gap:3px}.section-title span{font-size:11px;color:#7d8795}.link-btn{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 10px;border:1px solid #dce3ea;border-radius:7px;background:#fff;color:#344054;text-decoration:none;font-size:11px;cursor:pointer}.file-label input{display:none}.item-row{display:grid;grid-template-columns:1.5fr 1.1fr .55fr 1fr 34px;gap:8px;margin-bottom:8px}.item-row input{height:38px;border:1px solid #dce3ea;border-radius:7px;padding:0 9px}.remove-item{border:0;border-radius:7px;background:#fff0f1;color:#e23c46;font-size:18px}.notif{padding:11px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px}.notif b{font-size:12px}.notif span{font-size:10px;color:#8a94a3}.muted{color:#8a94a3}.toast-host{position:fixed;top:96px;right:28px;z-index:120;display:flex;flex-direction:column;gap:8px}.toast{min-width:280px;max-width:420px;background:#101828;color:#fff;padding:12px 14px;border-radius:9px;box-shadow:0 12px 40px rgba(16,24,40,.25);font-size:12px}.toast.success{background:#147d46}.toast.error{background:#b4232d}

body.dark{--bg:#10151d;--panel:#161d27;--panel-soft:#1d2632;--text:#edf2f7;--muted:#9aa5b4;--line:#2b3542;--line-strong:#3b4655;background:#111821;color:var(--text)}body.dark .topbar,body.dark .request-row,body.dark .detail-card,body.dark .side-card,body.dark .request-top-strip,body.dark .modal,body.dark .filters-panel,body.dark .search-panel,body.dark .account-menu,body.dark .stat-card{background:#161d27;border-color:#27313d}body.dark .topnav-btn,body.dark .header-action,body.dark .header-text-action{color:#e9eef5}body.dark input,body.dark select,body.dark textarea,body.dark .outline-btn,body.dark .wide-neutral-btn{background:#111821;color:#e9eef5;border-color:#364150}body.dark .field-view,body.dark .comment,body.dark .result-box{background:#1d2632}body.dark .list-header{color:#a8b1bd}

@media(max-width:1400px){.topbar{padding:0 22px;gap:18px}.topnav{gap:14px}.topnav-btn{font-size:12px}.header-text-action{display:none}.profile-text{display:none}.list-toolbar{grid-template-columns:210px minmax(420px,1fr) auto}.toolbar-actions{gap:7px}.square-action{width:58px}.request-grid{grid-template-columns:95px 95px 150px 125px 78px 125px 125px 100px 125px minmax(180px,1fr) 22px;gap:10px;font-size:12px}.detail-layout{grid-template-columns:minmax(0,1.8fr) 340px}}
@media(max-width:1100px){.topnav .soft-disabled,.topnav .admin-link{display:none}.list-toolbar{grid-template-columns:1fr}.toolbar-actions{justify-content:flex-start}.request-grid{grid-template-columns:95px 110px 1fr 125px 80px 120px}.list-header>div:nth-child(7),.list-header>div:nth-child(8),.list-header>div:nth-child(9),.list-header>div:nth-child(10),.list-header>div:nth-child(11),.request-row>div:nth-child(7),.request-row>div:nth-child(8),.request-row>div:nth-child(9),.request-row>div:nth-child(10),.request-row>div:nth-child(11){display:none}.detail-layout{grid-template-columns:1fr}.detail-side-col{display:grid;grid-template-columns:1fr 1fr}.history-card{grid-column:1/-1}.detail-meta-grid{grid-template-columns:1fr 1fr}.stats-grid{grid-template-columns:repeat(3,1fr)}}

/* v6 — procurement workflow */
.search-glyph{font-size:31px;line-height:1;text-align:center;color:#111}.big-glyph{font-size:24px;line-height:1}.priority-pill{display:inline-block;max-width:100%;padding:7px 9px;border-radius:7px;background:#fff4d7;color:#9a6500;font-size:11px;line-height:1.15;font-weight:700}.stage-chip{display:inline-flex;align-items:center;padding:7px 9px;border-radius:7px;background:#f1f5f8;color:#435166;font-size:11px;font-weight:650}.status-chip.cancel{background:#eef1f4;color:#596273}.full-span{grid-column:1/-1}.wide-btn{width:100%;margin-top:9px}.priority-extra{margin-top:9px}.priority-extra label{display:flex;flex-direction:column;gap:5px;color:#667085;font-size:11px}.priority-extra input{height:38px;border:1px solid #dbe2e9;border-radius:8px;padding:0 10px}.priority-extra-create{margin:14px 0 0}.supplier-toolbar{display:flex;gap:8px}.table-scroll{overflow:auto;border:1px solid #e8edf1;border-radius:9px}.offers-table{border-collapse:collapse;width:100%;min-width:980px;font-size:12px;background:#fff}.offers-table th,.offers-table td{border-bottom:1px solid #edf0f3;border-right:1px solid #edf0f3;padding:11px 12px;text-align:left;vertical-align:middle}.offers-table th:last-child,.offers-table td:last-child{border-right:0}.offers-table thead th{background:#f8fafb;color:#667085;font-size:11px;font-weight:700;white-space:nowrap}.offers-table tbody tr:last-child td{border-bottom:1px solid #e5e9ee}.offers-table tfoot td{background:#fbfcfd;border-bottom:0}.supplier-head{min-width:390px;text-align:center!important;background:#f4f7f9!important}.supplier-head span{display:inline-block;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;font-weight:800;color:#263241}.supplier-subhead th{min-width:120px;text-align:center!important;background:#fafbfc!important;color:#667085!important}.supplier-subhead th:nth-child(3n){min-width:160px}.edit-supplier{float:right;border:0;background:#eef2f5;border-radius:6px;padding:4px 7px}.price-cell,.amount-cell{text-align:center!important}.amount-cell{white-space:nowrap}.term-cell{min-width:160px;max-width:220px;white-space:normal;line-height:1.35;color:#475467}.offer-choice{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dfe5ea;border-radius:7px;padding:7px 8px;cursor:pointer;white-space:nowrap}.offer-choice.selected{border-color:var(--green);background:#eef9f3}.offer-choice input{accent-color:var(--green)}.selected-offer-area{background:#eaf8ef!important;box-shadow:inset 0 1px 0 #bde6cb,inset 0 -1px 0 #bde6cb}.price-cell.selected-offer-area{box-shadow:inset 3px 0 0 var(--green),inset 0 1px 0 #bde6cb,inset 0 -1px 0 #bde6cb}.term-cell.selected-offer-area{box-shadow:inset -3px 0 0 var(--green),inset 0 1px 0 #bde6cb,inset 0 -1px 0 #bde6cb}.choose-all{display:block;border:0;background:none;color:var(--green);font-size:10px;font-weight:700;margin-top:4px;padding:0}.supplier-export-row td{background:#f7faf8!important;border-top:1px solid #dce9e0;text-align:center!important}.supplier-export-row>td:first-child{text-align:left!important;color:#6f7c75;font-size:10px;font-weight:700}.supplier-export-btn{display:inline-flex;align-items:center;justify-content:center;min-width:110px;border:1px solid #b9d8c4;background:#f2faf5;color:#16743f;border-radius:6px;padding:5px 9px;font-size:10px;font-weight:800;cursor:pointer}.supplier-export-btn:hover{background:#e7f6ec}.supplier-export-btn:disabled{opacity:.4;cursor:not-allowed}.selection-summary{margin-top:12px;padding:12px 14px;border:1px solid #dfe7e2;border-radius:9px;background:#f7fbf8;display:flex;align-items:center;justify-content:space-between;gap:14px}.selection-summary>div{display:flex;flex-direction:column;gap:3px}.selection-summary span{font-size:10px;color:#6f7c75;text-transform:uppercase;letter-spacing:.4px}.selection-summary b{font-size:15px}.selection-summary .primary-btn:disabled{opacity:.45;cursor:not-allowed}.supplier-price-list{display:flex;flex-direction:column;gap:8px;margin:14px 0}.supplier-price-head{display:grid;grid-template-columns:minmax(220px,1fr) 150px 150px 190px;gap:10px;padding:0 0 7px;color:#7b8797;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.35px}.supplier-price-row{display:grid;grid-template-columns:minmax(220px,1fr) 150px 150px 190px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #eef1f3}.supplier-price-row>span{display:flex;flex-direction:column;font-weight:700;font-size:12px}.supplier-price-row small{display:block;color:#8a94a3;font-weight:400;margin:0 0 4px}.supplier-price-row>span small{margin-top:3px}.supplier-price-row label{display:flex;flex-direction:column}.supplier-price-row input{height:38px;border:1px solid #dce3ea;border-radius:8px;padding:0 10px}.supplier-auto-amount{height:38px;border:1px solid #e4e9ee;border-radius:8px;background:#f8fafb;padding:5px 10px;display:flex;flex-direction:column;justify-content:center}.supplier-auto-amount small{margin:0;font-size:9px}.supplier-auto-amount b{font-size:12px;white-space:nowrap}.procurement-flow{display:flex;flex-direction:column;gap:14px}.flow-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.flow-step{display:flex;gap:8px;align-items:center;padding:10px;border-radius:8px;background:#f6f8fa;border:1px solid #edf0f2}.flow-step>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#e6ebef;color:#667085;font-weight:800}.flow-step.ready{background:#f1faf5;border-color:#d9eee2}.flow-step.ready>span{background:var(--green);color:#fff}.flow-step div{display:flex;flex-direction:column;gap:2px}.flow-step b{font-size:11px}.flow-step small{font-size:9px;color:#87919e}.invoice-files{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:11px 12px;border-radius:8px;background:#f7f9fb}.invoice-files b{margin-right:5px}.invoice-files a{color:#344054;text-decoration:none;background:#fff;border:1px solid #dfe5ea;border-radius:6px;padding:6px 8px;font-size:11px}.order-box{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid #dbe8df;background:#f7fbf8;border-radius:9px}.order-box label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:#667085;font-weight:700}.order-box input{height:40px;border:1px solid #d7e0db;border-radius:8px;padding:0 10px}.order-box p{grid-column:1/-1;margin:0;color:#78827c;font-size:10px}.order-done{padding:12px 14px;border-radius:8px;background:var(--green-soft);color:#17633a}.invoice-upload{display:flex;align-items:center;justify-content:center;cursor:pointer}.invoice-upload input{display:none}.side-note{margin-top:8px;color:#8a94a3;font-size:10px;line-height:1.4}.stats-grid{grid-template-columns:repeat(4,1fr)}
body.dark .offers-table,body.dark .offers-table th,body.dark .offers-table td{background:#161d27;border-color:#2a3541;color:#e9eef5}body.dark .offers-table thead th,body.dark .flow-step,body.dark .selection-summary,body.dark .invoice-files,body.dark .order-box{background:#1d2632;border-color:#33404e}body.dark .stage-chip,body.dark .priority-pill{background:#25303c;color:#dbe5ef}
@media(max-width:1400px){.priority-pill{font-size:10px;padding:6px}.flow-steps{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1100px){.flow-steps{grid-template-columns:1fr 1fr}.order-box{grid-template-columns:1fr}.order-box p{grid-column:auto}.supplier-toolbar{flex-wrap:wrap}.stats-grid{grid-template-columns:repeat(2,1fr)}}

@media(max-width:1100px){.supplier-price-head,.supplier-price-row{grid-template-columns:minmax(190px,1fr) 130px 130px 160px}.supplier-head{min-width:360px}}

body.dark .selected-offer-area{background:#173524!important;color:#eaf8ef;box-shadow:inset 0 1px 0 #2a6a43,inset 0 -1px 0 #2a6a43}body.dark .price-cell.selected-offer-area{box-shadow:inset 3px 0 0 #42b36c,inset 0 1px 0 #2a6a43,inset 0 -1px 0 #2a6a43}body.dark .term-cell.selected-offer-area{box-shadow:inset -3px 0 0 #42b36c,inset 0 1px 0 #2a6a43,inset 0 -1px 0 #2a6a43}

/* Session login screen */
body.auth-locked > :not(#loginScreen):not(script){display:none!important}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-card{width:100%;max-width:380px;background:#fff;border:1px solid #e3e8ee;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:16px}
.login-card h1{margin:0 0 8px;font-size:22px}.login-card label{display:flex;flex-direction:column;gap:6px}
.login-card input{height:42px;border:1px solid #dce3ea;border-radius:8px;padding:0 10px}
.login-error{color:#b4232d;font-size:13px;margin:0;min-height:18px}
