:root{--primary:#30D5C8;--primary-hover:#42E2D5;--background:#0F1115;--sidebar:#11151B;--card:#1A1F26;--card-soft:#161B21;--border:#2B3138;--text:#F3F4F6;--muted:#A8B0BC;--danger:#FF6B6B;--warning:#F5B942;--success:#5DE19A;--shadow:0 18px 54px rgba(0,0,0,.28);--sidebar-width:258px}
*{box-sizing:border-box}html{min-height:100%;background:var(--background)}body{min-height:100vh;margin:0;color:var(--text);background:var(--background);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}svg{display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}h1,h2,p{margin-top:0}
/* Authorization */
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:28px 18px;background:radial-gradient(circle at 20% 0%,rgba(48,213,200,.12),transparent 33rem),var(--background)}.auth-card{width:min(100%,440px);padding:38px;border:1px solid var(--border);border-radius:24px;background:rgba(26,31,38,.94);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.brand-mark{display:grid;place-items:center;width:56px;height:56px;margin-bottom:28px;border-radius:16px;color:#071211;background:var(--primary);font-size:27px;font-weight:900;box-shadow:0 0 30px rgba(48,213,200,.2)}.auth-heading{margin-bottom:28px}.eyebrow{display:inline-block;margin-bottom:8px;color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.auth-heading h1{margin-bottom:8px;font-size:clamp(29px,7vw,38px);line-height:1.08}.auth-heading p{margin-bottom:0;color:var(--muted);line-height:1.6}.alert{margin-bottom:20px;padding:13px 14px;border-radius:12px;font-size:14px}.alert-error{color:#ffd6d6;border:1px solid rgba(255,107,107,.4);background:rgba(255,107,107,.1)}.login-form{display:grid;gap:18px}.field{display:grid;gap:8px;color:#d7dbe0;font-size:14px;font-weight:700}.field input{width:100%;height:50px;padding:0 14px;color:var(--text);border:1px solid var(--border);border-radius:12px;outline:none;background:#11161c;transition:border-color .18s ease,box-shadow .18s ease}.field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(48,213,200,.13)}.password-wrap{position:relative;display:block}.password-wrap input{padding-right:94px}.password-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%);padding:7px 9px;color:var(--primary);border:0;background:transparent;font-size:12px;font-weight:800}.primary-button{min-height:48px;margin-top:4px;border:1px solid var(--primary);border-radius:12px;color:#071211;background:var(--primary);font-weight:850;transition:transform .18s ease,background .18s ease,border-color .18s ease}.primary-button:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px)}
/* ERP shell */
.erp-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);background:var(--background)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--sidebar-width);display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--sidebar);transition:transform .18s ease}.sidebar-brand{min-height:84px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.06)}.sidebar-brand__mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:#071211;background:var(--primary);font-size:21px;font-weight:950;box-shadow:0 0 24px rgba(48,213,200,.14)}.sidebar-brand__text strong,.sidebar-brand__text small{display:block}.sidebar-brand__text strong{font-size:18px;letter-spacing:.01em}.sidebar-brand__text small{margin-top:2px;color:var(--muted);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.sidebar-close{display:none;margin-left:auto;padding:7px;border:0;color:var(--muted);background:transparent}.sidebar-close svg{width:22px;height:22px}.sidebar-nav{flex:1;overflow-y:auto;padding:17px 12px}.nav-group{margin-bottom:8px}.nav-group__title{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 11px;color:#7f8996;border:0;background:transparent;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;text-align:left}.nav-group__title svg{width:16px;height:16px;transition:transform .18s ease}.nav-group.is-open .nav-group__title svg{transform:rotate(90deg)}.nav-group__items{display:grid;grid-template-rows:0fr;transition:grid-template-rows .18s ease}.nav-group__items>*{overflow:hidden}.nav-group.is-open .nav-group__items{grid-template-rows:1fr}.nav-link{position:relative;display:flex;align-items:center;gap:11px;min-height:44px;margin:3px 0;padding:0 12px;border-radius:11px;color:#b7bec8;font-size:13px;font-weight:650;transition:color .18s ease,background .18s ease,transform .18s ease}.nav-link svg{width:18px;height:18px;flex:0 0 auto}.nav-link:hover{color:var(--text);background:rgba(48,213,200,.08);transform:translateX(2px)}.nav-link.is-active{color:#071211;background:var(--primary);font-weight:800;box-shadow:0 8px 22px rgba(48,213,200,.12)}.nav-link--single{margin:5px 0}.nav-badge{margin-left:auto;display:grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;color:#071211;background:var(--primary);font-size:10px;font-weight:900}.sidebar-user{display:flex;align-items:center;gap:11px;padding:16px 18px;border-top:1px solid rgba(255,255,255,.06)}.user-avatar{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border:1px solid rgba(48,213,200,.3);border-radius:12px;color:var(--primary);background:rgba(48,213,200,.09);font-size:12px;font-weight:900}.sidebar-user__meta{min-width:0}.sidebar-user__meta strong,.sidebar-user__meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user__meta strong{font-size:13px}.sidebar-user__meta small{margin-top:3px;color:var(--muted);font-size:10px}.workspace{grid-column:2;min-width:0}.workspace-topbar{position:sticky;top:0;z-index:25;min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 28px;border-bottom:1px solid var(--border);background:rgba(15,17,21,.9);backdrop-filter:blur(18px)}.workspace-title{display:flex;align-items:center;gap:12px}.workspace-kicker{display:block;margin-bottom:3px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.workspace-title h1{margin:0;font-size:22px;line-height:1.2}.menu-toggle{display:none;padding:8px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--card)}.menu-toggle svg{width:21px;height:21px}.topbar-actions{display:flex;align-items:center;gap:10px}.icon-button{position:relative;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border);border-radius:11px;color:var(--muted);background:var(--card);transition:border-color .18s ease,color .18s ease,background .18s ease}.icon-button:hover{color:var(--primary);border-color:rgba(48,213,200,.45);background:rgba(48,213,200,.06)}.icon-button svg{width:19px;height:19px}.notification-dot{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;width:18px;height:18px;border:2px solid var(--background);border-radius:50%;color:#071211;background:var(--primary);font-size:9px;font-weight:950}.profile-summary{display:flex;align-items:center;gap:10px;padding:0 8px}.user-avatar--small{width:36px;height:36px;border-radius:10px}.profile-summary strong,.profile-summary small{display:block}.profile-summary strong{max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.profile-summary small{margin-top:2px;color:var(--muted);font-size:10px}.logout-button{min-height:40px;display:flex;align-items:center;gap:8px;padding:0 13px;border:1px solid var(--border);border-radius:11px;color:var(--text);background:var(--card);font-size:12px;font-weight:800;transition:border-color .18s ease,color .18s ease}.logout-button:hover{color:var(--primary);border-color:rgba(48,213,200,.55)}.logout-button svg{width:17px;height:17px}.workspace-content{padding:26px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.kpi-card{min-width:0;display:flex;align-items:center;gap:15px;padding:19px;border:1px solid var(--border);border-radius:15px;background:linear-gradient(145deg,rgba(48,213,200,.035),transparent 55%),var(--card);box-shadow:0 10px 28px rgba(0,0,0,.12);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.kpi-card:hover{transform:translateY(-2px);border-color:rgba(48,213,200,.45);box-shadow:0 16px 36px rgba(0,0,0,.2),0 0 0 1px rgba(48,213,200,.04)}.kpi-card__icon{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border:1px solid rgba(48,213,200,.22);border-radius:13px;color:var(--primary);background:rgba(48,213,200,.08)}.kpi-card__icon svg{width:22px;height:22px}.kpi-card span,.kpi-card strong,.kpi-card small{display:block}.kpi-card span{color:var(--muted);font-size:11px;font-weight:750}.kpi-card strong{margin:3px 0 2px;font-size:27px;line-height:1.05}.kpi-card small{color:#7f8996;font-size:10px}.kpi-card small b{color:var(--primary)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,.8fr);gap:15px;margin-top:15px}.panel{min-width:0;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 12px 36px rgba(0,0,0,.14);overflow:hidden}.panel-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--border)}.panel-kicker{display:block;margin-bottom:4px;color:var(--primary);font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.panel-header h2{margin:0;font-size:16px}.text-link{color:var(--muted);font-size:11px;font-weight:800;transition:color .18s ease}.text-link:hover{color:var(--primary)}.text-link span{margin-left:4px}.table-toolbar{display:flex;justify-content:space-between;gap:10px;padding:12px 18px;border-bottom:1px solid var(--border);background:rgba(15,17,21,.23)}.search-field{min-width:220px;max-width:320px;flex:1;display:flex;align-items:center;gap:9px;height:38px;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:#12171d}.search-field svg{width:16px;height:16px;color:#77818e}.search-field input{min-width:0;flex:1;color:var(--text);border:0;outline:0;background:transparent;font-size:11px}.search-field input::placeholder{color:#697381}.filter-button{display:flex;align-items:center;gap:7px;height:38px;padding:0 12px;border:1px solid var(--border);border-radius:10px;color:var(--muted);background:var(--card-soft);font-size:11px;font-weight:800;transition:border-color .18s ease,color .18s ease}.filter-button:hover{color:var(--primary);border-color:rgba(48,213,200,.45)}.filter-button svg{width:15px;height:15px}.table-scroll{overflow-x:auto}.requests-table{width:100%;border-collapse:collapse;min-width:940px}.requests-table th{padding:12px 14px;color:#727c89;background:#151A20;font-size:9px;font-weight:850;letter-spacing:.08em;text-align:left;text-transform:uppercase}.requests-table td{padding:14px;border-top:1px solid rgba(43,49,56,.85);color:#cbd0d7;font-size:11px;vertical-align:middle}.requests-table tbody tr{transition:background .18s ease}.requests-table tbody tr:hover{background:rgba(48,213,200,.035)}.requests-table td strong{color:var(--text);font-size:11px}.requests-table td small{display:block;margin-top:4px;color:#78828f;font-size:9px}.status{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border:1px solid transparent;border-radius:999px;font-size:9px;font-weight:850;white-space:nowrap}.status--work{color:#55ded2;border-color:rgba(48,213,200,.25);background:rgba(48,213,200,.09)}.status--approve{color:#ffd477;border-color:rgba(245,185,66,.25);background:rgba(245,185,66,.09)}.status--done{color:#72e6a6;border-color:rgba(93,225,154,.25);background:rgba(93,225,154,.09)}.status--new{color:#b3bbff;border-color:rgba(152,164,255,.25);background:rgba(152,164,255,.09)}.row-action{padding:5px 8px;border:0;border-radius:8px;color:#89929e;background:transparent;font-weight:900}.row-action:hover{color:var(--primary);background:rgba(48,213,200,.08)}.icon-button--plain{border-color:transparent;background:transparent}.activity-list{padding:4px 18px}.activity-item{position:relative;display:grid;grid-template-columns:34px 1fr;gap:11px;padding:16px 0}.activity-item:not(:last-child){border-bottom:1px solid var(--border)}.activity-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(48,213,200,.2);border-radius:10px;color:var(--primary);background:rgba(48,213,200,.07)}.activity-icon svg{width:16px;height:16px}.activity-item strong{display:block;margin-bottom:4px;font-size:11px}.activity-item p{margin-bottom:7px;color:var(--muted);font-size:10px;line-height:1.45}.activity-item time{color:#68727f;font-size:9px}.sidebar-overlay{display:none}
@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.panel--activity{min-height:auto}}
@media(max-width:860px){.erp-shell{display:block}.sidebar{transform:translateX(-100%);box-shadow:30px 0 60px rgba(0,0,0,.4)}.erp-shell.sidebar-open .sidebar{transform:translateX(0)}.sidebar-close,.menu-toggle{display:grid}.workspace{grid-column:auto}.sidebar-overlay{position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.55);backdrop-filter:blur(2px)}.erp-shell.sidebar-open .sidebar-overlay{display:block}.workspace-topbar{padding:0 16px}.profile-summary{display:none}.workspace-content{padding:18px}}
@media(max-width:620px){.auth-card{padding:28px 22px;border-radius:20px}.workspace-topbar{min-height:72px}.workspace-title h1{font-size:19px}.logout-button span{display:none}.logout-button{width:40px;justify-content:center;padding:0}.kpi-grid{grid-template-columns:1fr}.kpi-card{padding:17px}.table-toolbar{align-items:stretch;flex-direction:column}.search-field{min-width:0;max-width:none}.panel-header{min-height:68px;padding:14px}.workspace-content{padding:12px}.dashboard-grid,.kpi-grid{gap:12px}.dashboard-grid{margin-top:12px}}

/* Stage 1.3 — All requests */
.requests-workspace{min-width:0}.requests-content{padding:22px}.filter-stack{border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:0 14px 38px rgba(0,0,0,.16);overflow:hidden}.filter-row{display:flex;align-items:center;gap:18px;padding:16px 18px;border-bottom:1px solid var(--border)}.filter-label{flex:0 0 170px}.filter-label span,.filter-label small{display:block}.filter-label span{font-size:12px;font-weight:850}.filter-label small{margin-top:4px;color:var(--muted);font-size:9px}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.filter-chip,.quick-chip{min-height:36px;padding:0 14px;border:1px solid var(--border);border-radius:11px;color:#b8c0ca;background:#13181e;font-size:11px;font-weight:800;transition:.18s ease}.filter-chip:hover,.quick-chip:hover{color:var(--primary);border-color:rgba(48,213,200,.48);transform:translateY(-1px)}.filter-chip.is-active,.quick-chip.is-active{color:#071211;border-color:var(--primary);background:var(--primary);box-shadow:0 0 22px rgba(48,213,200,.18)}.quick-filters{padding:16px 18px}.quick-filters__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}.quick-filters__head strong,.quick-filters__head small{display:block}.quick-filters__head strong{font-size:12px}.quick-filters__head small{margin-top:4px;color:var(--muted);font-size:9px}.quick-filters__chips{display:flex;flex-wrap:wrap;gap:8px}.quick-chip{min-height:32px;padding:0 12px;border-radius:999px;font-size:10px}.advanced-filter-button{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid rgba(48,213,200,.25);border-radius:11px;color:var(--primary);background:rgba(48,213,200,.07);font-size:10px;font-weight:850;transition:.18s ease}.advanced-filter-button:hover{border-color:rgba(48,213,200,.55);background:rgba(48,213,200,.12)}.advanced-filter-button svg{width:16px;height:16px}.requests-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 12px 30px rgba(0,0,0,.13)}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:9px}.toolbar-right{min-width:0;justify-content:flex-end}.segmented-control{display:flex;padding:3px;border:1px solid var(--border);border-radius:11px;background:#11161b}.segmented-control button{display:flex;align-items:center;gap:6px;min-height:32px;padding:0 11px;border:0;border-radius:8px;color:#88929e;background:transparent;font-size:10px;font-weight:850;transition:.18s ease;white-space:nowrap}.segmented-control button:hover{color:var(--text)}.segmented-control button.is-active{color:#071211;background:var(--primary)}.segmented-control svg{width:14px;height:14px}.segmented-control--sort button.is-active{color:var(--primary);background:rgba(48,213,200,.09)}.requests-search{min-width:190px;display:flex;align-items:center;gap:8px;height:38px;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:#11161b}.requests-search:focus-within{border-color:rgba(48,213,200,.5)}.requests-search svg{width:15px;height:15px;color:#71808b}.requests-search input{min-width:0;width:100%;border:0;outline:0;color:var(--text);background:transparent;font-size:10px}.requests-search input::placeholder{color:#6c7682}.toolbar-select{height:38px;max-width:150px;padding:0 30px 0 10px;border:1px solid var(--border);border-radius:10px;color:#adb6c0;background:#11161b;font-size:10px;outline:none}.toolbar-select:focus{border-color:rgba(48,213,200,.5)}.create-request-button{display:flex;align-items:center;gap:7px;height:38px;padding:0 14px;border:1px solid var(--primary);border-radius:10px;color:#071211;background:var(--primary);font-size:10px;font-weight:900;white-space:nowrap;transition:.18s ease}.create-request-button:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 10px 24px rgba(48,213,200,.16)}.create-request-button svg{width:15px;height:15px}.cards-view,.table-view{display:none}.cards-view.is-visible,.table-view.is-visible{display:block}.request-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.request-card{position:relative;min-width:0;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,rgba(48,213,200,.025),transparent 46%),var(--card);box-shadow:0 12px 30px rgba(0,0,0,.14);overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.request-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--primary);opacity:.75}.request-card--danger:before{background:#ff5c6c}.request-card--warning:before{background:#f2bf58}.request-card--success:before{background:#59dc98}.request-card--blue:before{background:#6d8cff}.request-card:hover{transform:translateY(-2px);border-color:rgba(48,213,200,.43);box-shadow:0 18px 40px rgba(0,0,0,.22),0 0 0 1px rgba(48,213,200,.03)}.request-card__click{position:absolute;inset:0;z-index:1;width:100%;height:100%;border:0;background:transparent;cursor:pointer}.request-card__header,.request-card__body,.request-card__footer{position:relative;z-index:2;pointer-events:none}.request-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid var(--border)}.request-card__identity strong,.request-card__identity time{display:block}.request-card__identity strong{font-size:17px}.request-card__identity time{margin-top:4px;color:var(--muted);font-size:9px}.request-card__badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.mini-tag{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border:1px solid var(--border);border-radius:999px;color:#8f99a5;background:#13181e;font-size:8px;font-weight:850}.mini-tag--primary{color:var(--primary);border-color:rgba(48,213,200,.24);background:rgba(48,213,200,.07)}.request-card__body{padding:16px}.request-card__body h2{margin:0;font-size:15px;line-height:1.35}.request-card__body>p{min-height:40px;margin:7px 0 14px;color:#8f99a5;font-size:10px;line-height:1.5}.request-card__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.request-card__meta>div{min-width:0;padding:10px;border:1px solid rgba(43,49,56,.8);border-radius:11px;background:#151a20}.request-card__meta span,.request-card__meta strong{display:block}.request-card__meta span{margin-bottom:5px;color:#697480;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.request-card__meta strong{overflow:hidden;color:#dce1e6;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.request-card__footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid var(--border);background:#151a20}.request-card__docs{display:flex;align-items:center;gap:11px}.request-card__docs span,.open-hint{display:flex;align-items:center;gap:5px;color:#7f8994;font-size:9px;font-weight:800}.request-card__docs svg,.open-hint svg{width:13px;height:13px}.open-hint{color:var(--primary)}.requests-datagrid-wrap{margin-top:14px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 14px 34px rgba(0,0,0,.15);overflow:auto}.requests-datagrid{width:100%;min-width:1120px;border-collapse:collapse}.requests-datagrid th{padding:13px 14px;border-bottom:1px solid var(--border);color:#6f7a87;background:#151a20;font-size:8px;font-weight:900;text-align:left;text-transform:uppercase;letter-spacing:.08em}.requests-datagrid td{padding:15px 14px;border-bottom:1px solid rgba(43,49,56,.82);color:#b9c1ca;font-size:10px}.requests-datagrid tbody tr{cursor:pointer;transition:.18s ease}.requests-datagrid tbody tr:hover{background:rgba(48,213,200,.035)}.requests-datagrid td strong{color:var(--text)}.requests-datagrid td small{display:block;margin-top:4px;color:#707b87;font-size:8px}.grid-open-button{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--border);border-radius:9px;color:var(--primary);background:rgba(48,213,200,.05)}.grid-open-button svg{width:14px;height:14px}.status--overdue{color:#ff7d89;border-color:rgba(255,92,108,.24);background:rgba(255,92,108,.09)}.request-drawer-overlay{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.6);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .18s ease}.request-drawer{position:fixed;top:0;right:0;z-index:70;width:min(560px,94vw);height:100vh;display:flex;flex-direction:column;border-left:1px solid var(--border);background:#11161b;box-shadow:-30px 0 70px rgba(0,0,0,.45);transform:translateX(105%);transition:transform .2s ease}.requests-shell.drawer-open .request-drawer{transform:translateX(0)}.requests-shell.drawer-open .request-drawer-overlay{opacity:1;pointer-events:auto}.request-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--border)}.drawer-kicker{display:block;margin-bottom:4px;color:var(--primary);font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.request-drawer__header h2{margin:0;font-size:21px}.drawer-close,.advanced-drawer header button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);border-radius:10px;color:#8b95a0;background:var(--card)}.drawer-close:hover,.advanced-drawer header button:hover{color:var(--primary);border-color:rgba(48,213,200,.45)}.drawer-close svg,.advanced-drawer header button svg{width:17px;height:17px}.request-drawer__summary{padding:18px 22px 16px;border-bottom:1px solid var(--border)}.request-drawer__summary h3{margin:10px 0 6px;font-size:19px}.request-drawer__summary p{margin:0;color:#8b95a0;font-size:11px;line-height:1.55}.drawer-tabs{display:flex;gap:4px;padding:10px 14px;border-bottom:1px solid var(--border);overflow-x:auto}.drawer-tabs button{min-height:34px;padding:0 10px;border:0;border-radius:8px;color:#7f8994;background:transparent;font-size:9px;font-weight:850;white-space:nowrap}.drawer-tabs button:hover{color:var(--text)}.drawer-tabs button.is-active{color:var(--primary);background:rgba(48,213,200,.08)}.drawer-tab-content{flex:1;overflow:auto;padding:18px 22px}.drawer-pane{display:none}.drawer-pane.is-active{display:block}.drawer-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.drawer-info-grid>div,.drawer-block{padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--card)}.drawer-info-grid span,.drawer-info-grid strong,.drawer-block span,.drawer-block strong{display:block}.drawer-info-grid span,.drawer-block span{margin-bottom:6px;color:#6f7a87;font-size:8px;font-weight:850;text-transform:uppercase}.drawer-info-grid strong,.drawer-block strong{font-size:11px}.drawer-block{margin-top:9px}.drawer-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:330px;padding:30px;text-align:center;border:1px dashed var(--border);border-radius:14px}.drawer-empty svg{width:42px;height:42px;color:var(--primary)}.drawer-empty strong{margin-top:15px;font-size:14px}.drawer-empty p{max-width:340px;color:var(--muted);font-size:10px;line-height:1.55}.drawer-empty button,.comment-box button{min-height:36px;padding:0 13px;border:1px solid var(--primary);border-radius:9px;color:#071211;background:var(--primary);font-size:10px;font-weight:900}.timeline{padding-left:8px}.timeline>div{position:relative;padding:0 0 22px 24px;border-left:1px solid var(--border)}.timeline>div:before{content:"";position:absolute;left:-5px;top:2px;width:9px;height:9px;border:2px solid #11161b;border-radius:50%;background:var(--primary)}.timeline time,.timeline strong,.timeline p{display:block}.timeline time{margin-bottom:5px;color:#6f7a87;font-size:8px}.timeline strong{font-size:11px}.timeline p{margin:4px 0 0;color:var(--muted);font-size:10px}.comment-box{display:flex;gap:8px}.comment-box textarea{min-height:90px;flex:1;padding:12px;border:1px solid var(--border);border-radius:11px;color:var(--text);background:var(--card);resize:vertical;outline:none}.comment-item{display:flex;gap:10px;margin-top:18px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--card)}.comment-item strong,.comment-item time{display:block}.comment-item time{margin-top:3px;color:#6f7a87;font-size:8px}.comment-item p{margin:7px 0 0;color:#aab3bd;font-size:10px;line-height:1.5}.payment-progress{height:7px;margin:14px 0;border-radius:999px;background:#20262d;overflow:hidden}.payment-progress span{display:block;height:100%;border-radius:inherit;background:var(--primary)}.drawer-note{color:var(--muted);font-size:10px;line-height:1.55}.delivery-route>div{display:flex;gap:12px;min-height:64px;position:relative}.delivery-route>div:not(:last-child):after{content:"";position:absolute;left:7px;top:18px;bottom:-2px;width:1px;background:var(--border)}.delivery-route i{position:relative;z-index:1;width:15px;height:15px;margin-top:2px;border:3px solid #11161b;border-radius:50%;background:#38414b}.delivery-route .is-done i,.delivery-route .is-current i{background:var(--primary)}.delivery-route strong,.delivery-route small{display:block}.delivery-route strong{font-size:11px}.delivery-route small{margin-top:4px;color:var(--muted);font-size:9px}.request-drawer__footer,.advanced-drawer footer{display:flex;gap:9px;padding:14px 22px;border-top:1px solid var(--border)}.drawer-primary,.drawer-secondary{min-height:40px;flex:1;border-radius:10px;font-size:10px;font-weight:900}.drawer-primary{border:1px solid var(--primary);color:#071211;background:var(--primary)}.drawer-secondary{border:1px solid var(--border);color:var(--text);background:var(--card)}.advanced-drawer{position:fixed;top:0;right:0;z-index:80;width:min(420px,94vw);height:100vh;display:flex;flex-direction:column;border-left:1px solid var(--border);background:#11161b;box-shadow:-30px 0 70px rgba(0,0,0,.45);transform:translateX(105%);transition:transform .2s ease}.requests-shell.advanced-open .advanced-drawer{transform:translateX(0)}.requests-shell.advanced-open .request-drawer-overlay{opacity:1;pointer-events:auto}.advanced-drawer header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--border)}.advanced-drawer header span{display:block;color:var(--primary);font-size:8px;font-weight:850;text-transform:uppercase}.advanced-drawer header h2{margin:5px 0 0;font-size:18px}.advanced-drawer__body{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:20px 22px;overflow:auto;align-content:start}.advanced-drawer__body label{display:flex;flex-direction:column;gap:7px;color:#8b95a0;font-size:9px;font-weight:800}.advanced-drawer__body input,.advanced-drawer__body select{height:40px;padding:0 10px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--card);outline:none}.advanced-drawer__body label:nth-child(n+5){grid-column:1/-1}
@media(max-width:1500px){.request-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.requests-toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right{justify-content:space-between}.toolbar-right{flex-wrap:wrap}.requests-search{flex:1}.toolbar-select{flex:1;max-width:none}}
@media(max-width:980px){.filter-row{align-items:flex-start;flex-direction:column}.filter-label{flex-basis:auto}.request-card-grid{grid-template-columns:1fr}.toolbar-left{align-items:stretch;flex-direction:column}.segmented-control{width:max-content}.toolbar-right{justify-content:stretch}.requests-search,.toolbar-select,.create-request-button{flex:1;min-width:180px}.quick-filters__head{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.requests-content{padding:12px}.filter-row,.quick-filters{padding:14px}.requests-toolbar{padding:10px}.toolbar-right{flex-direction:column}.requests-search,.toolbar-select,.create-request-button{width:100%;max-width:none}.request-card__header{align-items:flex-start;flex-direction:column}.request-card__badges{justify-content:flex-start}.request-card__meta,.drawer-info-grid,.advanced-drawer__body{grid-template-columns:1fr}.advanced-drawer__body label:nth-child(n+5){grid-column:auto}.drawer-tab-content{padding:16px}.request-drawer__header,.request-drawer__summary{padding-left:16px;padding-right:16px}}

/* Stage 1.4 — Create request */
.request-create-page{background:var(--bg)}.create-workspace{min-width:0}.draft-state{display:flex;align-items:center;gap:8px;color:#7e8994;font-size:10px;font-weight:750}.draft-state i{width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px rgba(48,213,200,.09)}.create-request-form{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;padding:18px 22px 40px}.create-main{display:flex;min-width:0;flex-direction:column;gap:16px}.form-card{border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 15px 36px rgba(0,0,0,.14);overflow:hidden}.form-card__heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--border);background:#161b21}.form-card__heading>div{display:flex;align-items:flex-start;gap:12px}.form-card__heading h2{margin:0;color:var(--text);font-size:15px}.form-card__heading p{margin:5px 0 0;color:#7f8994;font-size:10px;line-height:1.5}.section-number{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border:1px solid rgba(48,213,200,.3);border-radius:10px;color:var(--primary);background:rgba(48,213,200,.06);font-size:10px;font-weight:900}.required-note{color:#6f7984;font-size:9px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px}.field{display:flex;min-width:0;flex-direction:column;gap:7px}.field--wide{grid-column:1/-1}.field>span{color:#9da6b0;font-size:9px;font-weight:850}.field input,.field select,.field textarea,.items-table input,.items-table select{width:100%;border:1px solid var(--border);border-radius:10px;color:var(--text);background:#11161b;outline:none;transition:border-color .18s ease,box-shadow .18s ease}.field input,.field select{height:42px;padding:0 12px}.field textarea{padding:11px 12px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.items-table input:focus,.items-table select:focus{border-color:rgba(48,213,200,.62);box-shadow:0 0 0 3px rgba(48,213,200,.07)}.field input::placeholder,.field textarea::placeholder,.items-table input::placeholder{color:#505a65}.add-item-button{display:flex;align-items:center;gap:7px;min-height:36px;padding:0 13px;border:1px solid rgba(48,213,200,.36);border-radius:9px;color:var(--primary);background:rgba(48,213,200,.06);font-size:9px;font-weight:900}.add-item-button svg{width:14px;height:14px}.items-table-wrap{overflow:auto}.items-table{width:100%;min-width:880px;border-collapse:collapse}.items-table th{padding:11px 10px;border-bottom:1px solid var(--border);color:#707b86;background:#13181e;font-size:8px;text-align:left;text-transform:uppercase;letter-spacing:.06em}.items-table td{padding:8px 6px;border-bottom:1px solid rgba(43,49,56,.7)}.items-table td:first-child{width:42px;color:#77818c;font-size:10px;font-weight:900;text-align:center}.items-table th:nth-child(3){width:120px}.items-table th:nth-child(4){width:120px}.items-table th:last-child{width:50px}.items-table input,.items-table select{height:38px;padding:0 9px;border-radius:8px}.remove-item-button{display:grid;place-items:center;width:32px;height:32px;margin:auto;border:1px solid rgba(255,92,108,.18);border-radius:8px;color:#ff7c87;background:rgba(255,92,108,.05)}.remove-item-button svg{width:14px;height:14px}.items-mobile{display:none}.document-flow{display:flex;align-items:center;padding:20px}.flow-step{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.flow-step>span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border:1px solid var(--border);border-radius:50%;color:#6e7883;background:#11161b;font-size:10px;font-weight:900}.flow-step strong,.flow-step small{display:block}.flow-step strong{font-size:10px}.flow-step small{margin-top:4px;color:#6f7984;font-size:8px;line-height:1.4}.flow-step.is-current>span{border-color:var(--primary);color:#071211;background:var(--primary)}.flow-line{width:34px;height:1px;margin:0 8px;background:var(--border)}.upload-zone{display:flex;align-items:center;justify-content:center;min-height:120px;margin:0 20px 20px;padding:22px;border:1px dashed rgba(48,213,200,.38);border-radius:13px;cursor:pointer;text-align:center;background:rgba(48,213,200,.025);flex-direction:column;transition:.18s ease}.upload-zone:hover{border-color:var(--primary);background:rgba(48,213,200,.05)}.upload-zone.is-disabled{cursor:not-allowed;opacity:.5;border-color:var(--border);background:#14191f}.upload-zone.has-file{border-style:solid;background:rgba(48,213,200,.07)}.upload-zone input{display:none}.upload-zone svg{width:25px;height:25px;margin-bottom:9px;color:var(--primary)}.upload-zone strong{font-size:11px}.upload-zone span{margin-top:5px;color:#76808b;font-size:9px}.create-summary{min-width:0}.summary-card{border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:0 15px 36px rgba(0,0,0,.16)}.summary-card--sticky{position:sticky;top:18px;padding:17px}.summary-card__head{display:flex;align-items:center;justify-content:space-between}.summary-card__head span{color:#9ba4ae;font-size:10px;font-weight:850}.summary-card__head strong{color:var(--primary);font-size:14px}.completion-track{height:7px;margin:12px 0 16px;border-radius:999px;background:#11161b;overflow:hidden}.completion-track i{display:block;width:0;height:100%;border-radius:inherit;background:var(--primary);transition:width .2s ease}.checklist{display:flex;flex-direction:column;gap:11px;margin:0;padding:0;list-style:none}.checklist li{display:flex;align-items:center;gap:9px;color:#77828d;font-size:9px;font-weight:800}.checklist i{width:15px;height:15px;border:1px solid var(--border);border-radius:50%;background:#11161b}.checklist li.is-done{color:#d9dfe4}.checklist li.is-done i{position:relative;border-color:var(--primary);background:var(--primary)}.checklist li.is-done i:after{content:"";position:absolute;left:4px;top:2px;width:4px;height:7px;border-right:2px solid #071211;border-bottom:2px solid #071211;transform:rotate(45deg)}.summary-divider{height:1px;margin:17px 0;background:var(--border)}.request-preview-mini{display:grid;grid-template-columns:90px minmax(0,1fr);gap:9px 10px}.request-preview-mini span{color:#66717c;font-size:8px;text-transform:uppercase}.request-preview-mini strong{overflow:hidden;color:#dce1e6;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.download-request-button,.send-request-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:42px;margin-top:14px;border-radius:10px;font-size:9px;font-weight:900;transition:.18s ease}.download-request-button svg,.send-request-button svg{width:15px;height:15px}.download-request-button{border:1px solid var(--primary);color:#071211;background:var(--primary)}.send-request-button{margin-top:8px;border:1px solid rgba(48,213,200,.3);color:var(--primary);background:rgba(48,213,200,.06)}.download-request-button:disabled,.send-request-button:disabled{cursor:not-allowed;opacity:.35;filter:saturate(.35)}.send-request-button.is-ready{color:#071211;background:var(--primary)}.summary-help{margin:12px 2px 0;color:#6f7984;font-size:8px;line-height:1.5;text-align:center}
@media(max-width:1180px){.create-request-form{grid-template-columns:1fr}.summary-card--sticky{position:static}.create-summary{order:-1}.summary-card{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.summary-card__head,.completion-track,.checklist,.summary-divider,.request-preview-mini,.summary-help{grid-column:1}.download-request-button,.send-request-button{grid-column:2}.download-request-button{grid-row:1/3;margin-top:0;align-self:end}.send-request-button{grid-row:3/5;align-self:start}.summary-help{grid-column:2;grid-row:5}}
@media(max-width:760px){.create-request-form{padding:12px}.form-grid{grid-template-columns:1fr;padding:14px}.field--wide{grid-column:auto}.form-card__heading{align-items:flex-start;padding:15px;flex-direction:column}.document-flow{align-items:flex-start;flex-direction:column;gap:10px;padding:16px}.flow-line{width:1px;height:18px;margin:0 0 0 15px}.summary-card{display:block}.download-request-button,.send-request-button{margin-top:10px}.items-table-wrap{display:block}.draft-state{display:none}}
.form-alert{grid-column:1/-1;padding:14px 16px;border-radius:12px;margin-bottom:16px;font-size:14px}.form-alert--error{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35);color:#fecaca}.system-flash{margin:0 0 18px;padding:14px 18px;border-radius:12px;border:1px solid rgba(48,213,200,.35);background:rgba(48,213,200,.10);color:#cffffa}
/* Stage 1.6 — карточка заявки и назначение закупщика */
.request-detail-shell{padding:28px;max-width:1500px;margin:0 auto}.request-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.request-detail-head h1{font-size:30px;margin:8px 0 6px}.request-detail-head p{margin:0;color:#8d98a6}.back-link{color:#28d7d0;text-decoration:none;font-weight:700}.request-status-pill{border:1px solid rgba(40,215,208,.45);background:rgba(40,215,208,.1);color:#4ce6df;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:800;white-space:nowrap}.request-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px}.request-detail-main{display:grid;gap:18px}.request-panel{background:#13171d;border:1px solid #252c35;border-radius:16px;padding:20px}.request-panel h2{font-size:17px;margin:0 0 18px}.request-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.request-facts div{display:flex;flex-direction:column;gap:6px}.request-facts span,.field-label{font-size:12px;color:#7f8a98;text-transform:uppercase;letter-spacing:.05em}.request-facts strong{font-size:14px;color:#edf4f5}.detail-table-wrap{overflow:auto}.detail-table{width:100%;border-collapse:collapse}.detail-table th,.detail-table td{padding:12px;border-bottom:1px solid #252c35;text-align:left;vertical-align:top}.detail-table th{font-size:11px;color:#7f8a98;text-transform:uppercase}.detail-table td{font-size:13px}.document-row{display:flex;justify-content:space-between;gap:15px;padding:14px;border:1px solid #252c35;border-radius:12px;text-decoration:none;color:#eef7f7;background:#101419}.document-row:hover{border-color:#2dd8d1}.document-row small{color:#7f8a98}.history-list{display:grid;gap:16px}.history-item{display:grid;grid-template-columns:12px 1fr;gap:12px}.history-item>span{width:10px;height:10px;border-radius:50%;background:#26d6cf;margin-top:4px;box-shadow:0 0 0 5px rgba(38,214,207,.1)}.history-item div{display:flex;flex-direction:column;gap:4px}.history-item small{color:#7f8a98}.sticky-action{position:sticky;top:20px}.action-hint{color:#9aa5b1;line-height:1.55;font-size:14px}.action-select{width:100%;margin:8px 0 14px;background:#0d1116;color:#f4f8f8;border:1px solid #303944;border-radius:10px;padding:12px}.primary-action-btn{width:100%;border:0;border-radius:10px;padding:13px 16px;background:#22d3cc;color:#071112;font-weight:900;cursor:pointer}.primary-action-btn:hover{filter:brightness(1.08)}.empty-action{padding:14px;border:1px dashed #3a444f;border-radius:10px;color:#87929e;font-size:13px}.form-alert{margin-bottom:18px;border-radius:10px;padding:13px 15px}.form-alert.success{background:rgba(38,190,120,.12);border:1px solid rgba(38,190,120,.35);color:#71e4ad}.form-alert.error{background:rgba(235,80,80,.1);border:1px solid rgba(235,80,80,.35);color:#ff9292}@media(max-width:980px){.request-detail-grid{grid-template-columns:1fr}.sticky-action{position:static}}@media(max-width:680px){.request-detail-shell{padding:16px}.request-detail-head{flex-direction:column}.request-facts{grid-template-columns:1fr}.request-status-pill{white-space:normal}}
/* Stage 1.5.5 — users */
.users-content{padding:28px}.users-toolbar{display:grid;grid-template-columns:1fr 220px 220px;gap:12px;margin-bottom:18px}.users-toolbar input,.users-toolbar select,.user-form input,.user-form select,.password-inline input{background:#12171b;border:1px solid #2b353b;color:#fff;border-radius:10px;padding:12px 14px;outline:none}.users-toolbar input:focus,.users-toolbar select:focus,.user-form input:focus,.user-form select:focus{border-color:#18c7c8}.users-table-wrap{overflow:auto;background:#11161a;border:1px solid #263137;border-radius:14px}.users-table{width:100%;border-collapse:collapse;min-width:1000px}.users-table th,.users-table td{padding:14px 16px;border-bottom:1px solid #222d32;text-align:left;vertical-align:top}.users-table th{font-size:12px;color:#83939b;text-transform:uppercase}.users-table td strong{display:block}.users-table td small{display:block;color:#89969c;margin-top:4px}.role-pill{display:inline-flex;padding:6px 9px;border:1px solid #2d4b4d;border-radius:999px;color:#68dddd;font-size:12px}.status--danger{background:rgba(255,77,77,.12);color:#ff8585}.user-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.user-actions a,.user-actions button{border:0;background:transparent;color:#55d5d6;cursor:pointer;font:inherit;padding:0}.user-actions .danger-link{color:#ff7777}.password-inline{display:flex;gap:6px}.password-inline input{padding:7px 9px;width:130px}.user-form-card{max-width:760px;background:#11161a;border:1px solid #273238;border-radius:16px;padding:24px}.user-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.user-form label{display:flex;flex-direction:column;gap:8px}.user-form label span{font-weight:700}.user-form label small{color:#83939b}.user-form__actions{grid-column:1/-1;display:flex;align-items:center;gap:18px;margin-top:8px}.system-flash--error{border-color:#7c3434;background:#2c1717;color:#ffb0b0}.logs-heading{margin-top:30px}@media(max-width:900px){.users-toolbar{grid-template-columns:1fr}.user-form{grid-template-columns:1fr}.user-form__actions{grid-column:1}.users-content{padding:16px}}

/* Stage 1.7 — supplier invitation without registration */
.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-title-row>span{font-size:12px;color:#83919f}.supplier-code-box{border:1px solid rgba(21,211,183,.38);background:rgba(21,211,183,.08);padding:16px;border-radius:12px;margin:12px 0 18px}.supplier-code-box strong,.supplier-code-box code,.supplier-code-box p,.supplier-code-box small{display:block}.supplier-code-box code{font-size:20px;letter-spacing:1.3px;color:#37e7ca;margin:10px 0}.supplier-code-box p{font-size:12px;word-break:break-all;color:#c8d1d8}.supplier-code-box small{color:#85919a;margin-top:8px}.supplier-invite-list{display:grid;gap:10px}.supplier-invite-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px;border:1px solid #26313a;border-radius:10px;background:#14191f}.supplier-invite-row strong,.supplier-invite-row span{display:block}.supplier-invite-row>div>span{font-size:12px;color:#8e9aa4;margin-top:4px}.supplier-invite-meta{text-align:right}.supplier-invite-meta small{display:block;color:#7f8a93;margin-top:5px}.compact-form{display:grid;gap:8px}.action-input{width:100%;box-sizing:border-box;background:#11161b;color:#f4f7f8;border:1px solid #2c3740;border-radius:9px;padding:11px 12px;outline:none}.action-input:focus{border-color:#20cdb1}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.supplier-invite-panel{margin-top:16px}
.supplier-public-shell{min-height:100vh;padding:32px 18px;box-sizing:border-box;background:radial-gradient(circle at top right,rgba(21,211,183,.12),transparent 32%),#0c1014;color:#eef3f5;display:flex;justify-content:center;align-items:flex-start}.supplier-public-card{width:min(1120px,100%);background:#11171c;border:1px solid #26313a;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.35);padding:28px;box-sizing:border-box}.supplier-login-card{max-width:500px;margin-top:8vh}.supplier-brand{font-weight:800;letter-spacing:.5px;font-size:18px}.supplier-brand span{color:#2ad8bc}.supplier-public-card h1{margin:14px 0 8px}.supplier-public-card p{color:#98a4ad}.supplier-code-form{display:grid;gap:10px;margin:24px 0}.supplier-code-input{font-size:18px;letter-spacing:1px;text-transform:uppercase;background:#0d1216;color:#fff;border:1px solid #34414b;border-radius:10px;padding:14px}.supplier-security-note{display:block;color:#72808a;line-height:1.5}.supplier-direct-invite{display:grid;gap:10px;padding:18px;border:1px solid rgba(21,211,183,.28);background:rgba(21,211,183,.06);border-radius:12px;margin:22px 0}.supplier-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.supplier-card-header h1{font-size:26px}.supplier-section{margin-top:20px;padding:20px;border:1px solid #26313a;border-radius:14px;background:#0f1419}.supplier-section h2{margin:0 0 16px;font-size:17px}.supplier-response-form{display:grid;gap:16px}.supplier-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.supplier-response-form label span{display:block;font-size:12px;color:#99a5ae;margin-bottom:7px}.supplier-response-form input,.supplier-response-form textarea{width:100%;box-sizing:border-box;background:#0b1014;color:#fff;border:1px solid #2d3942;border-radius:9px;padding:11px}.supplier-comment{display:block}.supplier-confirm-section{text-align:center;padding:32px}.supplier-confirm-section .primary-action-btn{max-width:280px;margin:14px auto 0}@media(max-width:700px){.supplier-public-card{padding:18px}.supplier-card-header{display:block}.supplier-form-grid,.two-fields{grid-template-columns:1fr}.supplier-invite-row{align-items:flex-start;flex-direction:column}.supplier-invite-meta{text-align:left}}

/* Stage 1.7.1 request edit */
.edit-request-form{max-width:1180px;margin:0 auto}.edit-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:30px}.edit-form-grid label{display:flex;flex-direction:column;gap:8px}.edit-form-grid label.wide{grid-column:1/-1}.edit-form-grid span{font-size:12px;font-weight:800;text-transform:uppercase;color:#8995a5}.edit-form-grid input,.edit-items-table input{width:100%;box-sizing:border-box;border:1px solid #2c3540;background:#13191f;color:#f4f7fa;border-radius:12px;padding:13px 14px;font:inherit}.edit-form-grid input:focus,.edit-items-table input:focus{outline:none;border-color:#2fd3c7;box-shadow:0 0 0 3px rgba(47,211,199,.12)}.edit-form-grid small{color:#778392}.edit-items-title{margin:8px 0 14px}.edit-items-table td{vertical-align:middle}.edit-items-table td:first-child{width:46px}.edit-items-table td:last-child{width:54px}.remove-edit-row{width:36px;height:36px;border:1px solid #3a424d;background:#171d23;color:#e7edf3;border-radius:10px;font-size:24px;line-height:1;cursor:pointer}.remove-edit-row:hover{border-color:#e06c75;color:#ff8b94}.edit-form-actions{display:flex;justify-content:flex-end;gap:14px;margin-top:24px}.action-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-width:140px}.request-drawer__footer button{cursor:pointer}@media(max-width:760px){.edit-form-grid{grid-template-columns:1fr}.edit-form-grid label.wide{grid-column:auto}.edit-items-table{min-width:850px}.edit-form-actions{flex-direction:column}.edit-form-actions>*{width:100%}}

/* Stage 2.0.1: светлая центральная рабочая зона */
.stage-2-light-center .workspace,
.stage-2-light-center .workspace-content,
.workspace-content--light {
    background: #f4f0e8 !important;
    color: #1d232b;
}
.stage-2-light-center .workspace-topbar {
    background: rgba(255,255,255,.96) !important;
    border-bottom: 1px solid #ddd6c8 !important;
    color: #171c22;
}
.stage-2-light-center .workspace-title h1,
.stage-2-light-center .profile-summary strong { color: #151a20 !important; }
.stage-2-light-center .workspace-kicker,
.stage-2-light-center .profile-summary small { color: #707780 !important; }
.stage-2-light-center .panel,
.stage-2-light-center .kpi-card {
    background: #fff !important;
    border: 1px solid #ddd6c8 !important;
    box-shadow: 0 10px 28px rgba(32, 29, 23, .07) !important;
    color: #1d232b !important;
}
.stage-2-light-center .panel h2,
.stage-2-light-center .kpi-card strong,
.stage-2-light-center .requests-table strong,
.stage-2-light-center .activity-item strong { color: #151a20 !important; }
.stage-2-light-center .kpi-card span,
.stage-2-light-center .kpi-card small,
.stage-2-light-center .activity-item p,
.stage-2-light-center .activity-item time { color: #69717a !important; }
.stage-2-light-center .requests-table th { color: #59616a !important; background: #f8f5ef !important; }
.stage-2-light-center .requests-table td { color: #252b32 !important; border-color: #ebe5da !important; }
.stage-2-light-center .requests-table tbody tr:hover { background: #faf7f1 !important; }
.empty-state { padding: 64px 24px; text-align: center; color: #69717a; }
.empty-state__icon { width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 18px; display:grid; place-items:center; font-size:32px; background:#e8fbff; color:#0797b6; }
.empty-state h3 { margin:0 0 8px; color:#171c22; font-size:22px; }
.empty-state p { max-width:520px; margin:0 auto 22px; line-height:1.6; }
.empty-state--compact { padding:44px 24px; }
.primary-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 20px; border-radius:12px; background:#079fc0; color:#fff !important; text-decoration:none; font-weight:700; }
.row-open-link { color:#087f9a; font-weight:700; text-decoration:none; }
/* MSAG Закупки v2 — рабочая светлая центральная область */
.v2-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px;align-items:start}.v2-center{min-width:0}.v2-right-rail{display:grid;gap:14px}.v2-side-card{background:#11161a;color:#eef3f5;border:1px solid #273238;border-radius:16px;padding:18px;display:grid;gap:7px}.v2-side-card span{color:#45d9df;font-weight:800}.v2-side-card p{color:#99a5ad;line-height:1.5;margin:0}.v2-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.v2-page-head h2{margin:0 0 7px;color:#171c22;font-size:28px}.v2-page-head p{margin:0;color:#69717a}.v2-panel{padding:22px;border-radius:16px}.v2-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.v2-form label{display:flex;flex-direction:column;gap:8px}.v2-form label.wide{grid-column:1/-1}.v2-form label span{font-weight:800;color:#333b43}.v2-form input,.v2-form select,.v2-form textarea,.v2-items input{width:100%;box-sizing:border-box;background:#fff;color:#1d232b;border:1px solid #d8d0c3;border-radius:10px;padding:12px;font:inherit}.v2-form input:focus,.v2-form select:focus,.v2-form textarea:focus,.v2-items input:focus{outline:none;border-color:#079fc0;box-shadow:0 0 0 3px rgba(7,159,192,.12)}.v2-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:14px;margin-top:20px}.v2-tabs{display:flex;gap:8px;overflow:auto;padding:0 0 12px;margin-bottom:10px}.v2-tabs span{white-space:nowrap;background:#fff;border:1px solid #ddd6c8;color:#59616a;border-radius:999px;padding:9px 13px;font-size:13px}.v2-tabs span.is-active{background:#079fc0;border-color:#079fc0;color:#fff}.v2-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 18px}.v2-facts>div{background:#f8f5ef;border:1px solid #ebe5da;border-radius:12px;padding:14px}.v2-facts span,.v2-facts strong{display:block}.v2-facts span{font-size:12px;color:#707780;margin-bottom:6px}.v2-facts strong{color:#171c22}@media(max-width:1100px){.v2-workspace-grid{grid-template-columns:1fr}.v2-right-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.v2-form-grid,.v2-facts,.v2-right-rail{grid-template-columns:1fr}.v2-form label.wide{grid-column:auto}.v2-page-head{flex-direction:column}}

/* Stage 2.0.2 — единая карточка заявки */
.v2-tabs a{white-space:nowrap;background:#fff;border:1px solid #ddd6c8;color:#59616a;border-radius:999px;padding:9px 13px;font-size:13px;text-decoration:none;transition:.16s ease}.v2-tabs a:hover{border-color:#079fc0;color:#087f9a}.v2-tabs a.is-active{background:#079fc0;border-color:#079fc0;color:#fff}.v2-head-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#747b83;font-size:13px}.v2-status-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#e7f8fb;color:#087f9a;font-weight:800}.v2-panel-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.v2-panel-title h3{margin:2px 0 0;color:#171c22;font-size:20px}.v2-panel-kicker{display:block;color:#788089;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.v2-counter{display:grid;place-items:center;min-width:36px;height:36px;padding:0 10px;border-radius:12px;background:#eef9fb;color:#087f9a}.v2-facts--three{grid-template-columns:repeat(3,minmax(0,1fr))}.v2-description{padding:16px;background:#f8f5ef;border:1px solid #ebe5da;border-radius:12px}.v2-description>span{display:block;margin-bottom:7px;color:#707780;font-size:12px}.v2-description p{margin:0;color:#252b32;line-height:1.65}.v2-document-list{display:grid;gap:10px}.v2-document-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 16px;border:1px solid #e6dfd3;border-radius:12px;background:#fbf9f5;color:#252b32}.v2-document-row:hover{border-color:#079fc0;background:#fff}.v2-document-row strong,.v2-document-row span{display:block}.v2-document-row>div>span{margin-top:5px;color:#747b83;font-size:12px}.v2-document-row>span{color:#087f9a;font-weight:800}.v2-timeline{display:grid;gap:0}.v2-timeline-row{position:relative;display:grid;grid-template-columns:20px 1fr;gap:12px;padding-bottom:22px}.v2-timeline-row:not(:last-child):before{content:"";position:absolute;left:6px;top:14px;bottom:0;width:2px;background:#dfe8ea}.v2-timeline-dot{position:relative;z-index:1;width:14px;height:14px;margin-top:3px;border:3px solid #d8f4f7;border-radius:50%;background:#079fc0}.v2-timeline-row strong{color:#171c22}.v2-timeline-row p{margin:5px 0;color:#59616a}.v2-timeline-row small{color:#858c93}.v2-side-card--summary dl{display:grid;gap:0;margin:5px 0 0}.v2-side-card--summary dl>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid #263138}.v2-side-card--summary dt{color:#8f9aa3}.v2-side-card--summary dd{margin:0;color:#eef3f5;text-align:right;font-weight:700}@media(max-width:880px){.v2-facts--three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.v2-facts--three{grid-template-columns:1fr}.v2-document-row{align-items:flex-start;flex-direction:column}.v2-document-row>span{align-self:flex-end}}

/* Stage 2.0.2.1 — встроенный просмотр файлов */
.v2-document-row{width:100%;font:inherit;text-align:left;color:inherit;border:0;cursor:pointer}.v2-document-row:focus-visible{outline:3px solid rgba(48,213,200,.35);outline-offset:2px}.app-modal-open{overflow:hidden}.app-file-modal[hidden]{display:none}.app-file-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px}.app-file-modal__backdrop{position:absolute;inset:0;background:rgba(4,7,10,.78);backdrop-filter:blur(8px)}.app-file-modal__dialog{position:relative;display:flex;flex-direction:column;width:min(1180px,96vw);height:min(860px,92vh);overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:#f6f2e9;box-shadow:0 30px 100px rgba(0,0,0,.52)}.app-file-modal__header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;padding:14px 18px 14px 22px;color:#f4f7f8;background:#151a20;border-bottom:1px solid #2b323a}.app-file-modal__header>div:first-child{min-width:0;display:flex;flex-direction:column;gap:3px}.app-file-modal__header span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8f9aa5}.app-file-modal__header strong{max-width:720px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.app-file-modal__actions{display:flex;align-items:center;gap:10px}.app-file-modal__download{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border:1px solid rgba(48,213,200,.5);border-radius:10px;color:#82eee5;background:rgba(48,213,200,.08);font-size:13px;font-weight:700}.app-file-modal__download:hover{background:rgba(48,213,200,.16)}.app-file-modal__close{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #343c45;border-radius:10px;color:#fff;background:#20262d;font-size:27px;line-height:1}.app-file-modal__body{flex:1;min-height:0;display:grid;place-items:center;overflow:auto;background:#e8e2d7}.app-file-modal__frame{width:100%;height:100%;border:0;background:#fff}.app-file-modal__image{display:block;max-width:100%;max-height:100%;object-fit:contain;padding:20px}.app-file-modal__media{max-width:100%;max-height:100%}.app-file-modal__unsupported{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:520px;padding:40px;text-align:center;color:#283038}.app-file-modal__unsupported audio{width:min(520px,75vw)}.app-file-modal__unsupported h3{margin:16px 0 8px}.app-file-modal__unsupported p{margin:0;color:#69727b;line-height:1.55}.app-file-modal__file-icon{display:grid;place-items:center;width:72px;height:82px;border:2px solid #5c6872;border-radius:12px;color:#26313a;background:#fff;font-size:15px;font-weight:800;letter-spacing:.08em}
@media(max-width:720px){.app-file-modal{padding:0}.app-file-modal__dialog{width:100vw;height:100vh;border:0;border-radius:0}.app-file-modal__header{min-height:64px;padding:10px 12px}.app-file-modal__header strong{max-width:48vw}.app-file-modal__download{padding:0 11px}.app-file-modal__image{padding:10px}}

/* Stage 2.0.3 — маршрут согласования и исполнители */
.workflow-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.workflow-route{display:grid}.workflow-step{position:relative;display:grid;grid-template-columns:44px 1fr;gap:14px;min-height:78px}.workflow-step:not(:last-child):after{content:"";position:absolute;left:21px;top:38px;bottom:-4px;width:2px;background:#dde3e4}.workflow-step__marker{position:relative;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;border:2px solid #d8dfe1;background:#fff;color:#8b949a;font-weight:900}.workflow-step__body{padding:2px 0 18px}.workflow-step__body strong,.workflow-step__body span,.workflow-step__body small{display:block}.workflow-step__body strong{color:#1b2228;font-size:15px}.workflow-step__body span{margin-top:4px;color:#778087;font-size:12px}.workflow-step__body small{margin-top:7px;color:#087f9a;font-weight:700}.workflow-step--done .workflow-step__marker{border-color:#0da982;background:#0da982;color:#fff}.workflow-step--done:not(:last-child):after{background:#8ad9c5}.workflow-step--current .workflow-step__marker{border-color:#079fc0;background:#e8f9fc;color:#087f9a;box-shadow:0 0 0 5px rgba(7,159,192,.10)}.workflow-step--current .workflow-step__body strong{color:#087f9a}.workflow-actions{position:sticky;top:105px}.workflow-action-card{display:grid;gap:13px;padding:18px;border:1px solid #d8d0c3;border-radius:15px;background:#faf7f1}.workflow-action-card>span{color:#087f9a;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.workflow-action-card h4{margin:0;color:#171c22;font-size:18px}.workflow-action-card p{margin:0;color:#687178;line-height:1.55}.workflow-action-card label{display:grid;gap:7px}.workflow-action-card label>span{color:#454d54;font-size:12px;font-weight:800}.workflow-action-card select,.workflow-action-card textarea{width:100%;padding:11px 12px;border:1px solid #d8d0c3;border-radius:10px;background:#fff;color:#1d232b;font:inherit}.workflow-action-card select:focus,.workflow-action-card textarea:focus{outline:none;border-color:#079fc0;box-shadow:0 0 0 3px rgba(7,159,192,.12)}.workflow-action-card .primary-button{width:100%;border:0}.workflow-action-card--passive{background:#f5f2eb}.workflow-side-dl{display:grid;margin:8px 0 0}.workflow-side-dl>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #273238}.workflow-side-dl dt{color:#8f9aa3}.workflow-side-dl dd{margin:0;color:#eef3f5;text-align:right;font-weight:700}.workflow-side-link{display:flex;align-items:center;justify-content:center;min-height:40px;margin-top:8px;border:1px solid rgba(48,213,200,.45);border-radius:10px;color:#69e6dc;font-size:13px;font-weight:800}.workflow-side-link:hover{background:rgba(48,213,200,.08)}
@media(max-width:980px){.workflow-layout{grid-template-columns:1fr}.workflow-actions{position:static}}@media(max-width:620px){.workflow-step{grid-template-columns:38px 1fr}.workflow-step__marker{width:38px;height:38px;border-radius:12px}.workflow-step:not(:last-child):after{left:18px;top:34px}}

/* Stage 2.0.4 — supplier access */
.supplier-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:22px;align-items:start}.supplier-list{display:grid;gap:14px}.supplier-card{padding:18px;border:1px solid #ddd6c8;border-radius:16px;background:#fff}.supplier-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.supplier-card__head>div{display:flex;flex-direction:column;gap:5px}.supplier-card__head strong{font-size:16px;color:#20262c}.supplier-card__head span{font-size:12px;color:#717981}.supplier-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0}.supplier-card dl div{display:flex;flex-direction:column;gap:4px}.supplier-card dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#899198}.supplier-card dd{margin:0;color:#283038;font-weight:650}.supplier-status{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#ece9e2;color:#59626a;font-size:11px;font-weight:800;white-space:nowrap}.supplier-status--opened{background:#e7f4f2;color:#16766d}.supplier-status--confirmed{background:#dff4e5;color:#20713b}.supplier-status--declined,.supplier-status--revoked{background:#f8e3e0;color:#9b3b31}.supplier-invite-form input{width:100%;min-height:44px;padding:0 12px;border:1px solid #cfc8bc;border-radius:10px;background:#fff;color:#20262c}.supplier-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-hint{font-size:12px!important;color:#7a838a!important}.link-danger-button{margin-top:14px;padding:0;border:0;background:none;color:#a6463d;font:inherit;font-size:12px;font-weight:750;cursor:pointer}.supplier-access-result{margin-bottom:18px;padding:16px;border:1px solid rgba(20,154,142,.35);border-radius:14px;background:#eefaf8}.supplier-access-result strong{display:block;margin-bottom:8px;color:#146d65}.supplier-access-result pre{white-space:pre-wrap;word-break:break-all;margin:0 0 12px;color:#26313a;font:13px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.supplier-public-page{min-height:100vh;background:#ece7de;color:#20262c}.supplier-public-shell{min-height:100vh}.supplier-public-header{height:76px;display:flex;align-items:center;padding:0 5vw;background:#12171c;color:#fff}.supplier-public-brand{display:flex;align-items:center;gap:12px}.supplier-public-brand>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#28c8ba;color:#07100f;font-weight:900}.supplier-public-brand div{display:flex;flex-direction:column}.supplier-public-brand small{color:#95a0a8}.supplier-public-main{width:min(1180px,92vw);margin:0 auto;padding:48px 0}.supplier-access-card{width:min(560px,100%);margin:5vh auto;padding:30px;border:1px solid #d8d0c3;border-radius:20px;background:#fff;box-shadow:0 18px 50px rgba(38,42,45,.10)}.supplier-access-card--wide{width:100%;margin:0}.supplier-access-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#16887e;font-weight:800}.supplier-access-card h1{margin:7px 0 8px;font-size:28px}.supplier-access-card>p{color:#6d767d}.supplier-code-form{display:grid;gap:16px;margin-top:26px}.supplier-code-form label{display:grid;gap:7px}.supplier-code-form input{height:54px;padding:0 16px;border:1px solid #cfc8bc;border-radius:12px;background:#faf9f6;color:#20262c;font-size:22px;letter-spacing:.25em;text-align:center}.supplier-public-title{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.supplier-state-pill{padding:9px 13px;border-radius:999px;background:#e5f5f2;color:#17776e;font-size:12px;font-weight:800;white-space:nowrap}.supplier-public-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.supplier-public-facts div{padding:14px;border-radius:12px;background:#f5f2ec}.supplier-public-facts span{display:block;margin-bottom:5px;font-size:11px;text-transform:uppercase;color:#7d858b}.supplier-decision-form{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid #bcc3c7;border-radius:10px;background:#fff;color:#30383e;font:inherit;font-weight:750;cursor:pointer}
@media(max-width:900px){.supplier-grid{grid-template-columns:1fr}.supplier-card dl,.supplier-public-facts{grid-template-columns:1fr}.supplier-public-title{flex-direction:column}.supplier-form-row{grid-template-columns:1fr}}

/* Stage 2.0.4.1 — supplier cabinet readability fix */
.supplier-public-page .supplier-public-shell{
  display:block;
  min-height:100vh;
  padding:0;
  background:radial-gradient(circle at top right,rgba(40,200,186,.10),transparent 34%),#0c1014;
  color:#20262c;
}
.supplier-public-page .supplier-public-header{
  width:100%;
  height:80px;
  box-sizing:border-box;
  padding:0 5vw;
  background:#12171c;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.supplier-public-page .supplier-public-main{
  width:min(1180px,92vw);
  margin:0 auto;
  padding:40px 0 56px;
  box-sizing:border-box;
}
.supplier-public-page .supplier-access-card{
  color:#20262c;
  background:#fff;
}
.supplier-public-page .supplier-access-card h1{
  color:#1c252d;
  font-weight:850;
  line-height:1.2;
}
.supplier-public-page .supplier-access-card p,
.supplier-public-page .supplier-public-title p{
  color:#5d6871;
  font-weight:550;
}
.supplier-public-page .supplier-public-facts div{
  background:#f4f0e8;
  border:1px solid #e7dfd2;
}
.supplier-public-page .supplier-public-facts span{
  color:#69737c;
  font-weight:750;
}
.supplier-public-page .supplier-public-facts strong{
  color:#162028;
  font-weight:800;
}
.supplier-public-page .table-scroll{
  border:1px solid #d7dce0;
  border-radius:12px;
  overflow:auto;
  background:#fff;
}
.supplier-public-page .requests-table{
  min-width:760px;
  background:#fff;
}
.supplier-public-page .requests-table th{
  padding:14px 16px;
  color:#dfe7ec !important;
  background:#151a20 !important;
  border:0;
  font-size:10px;
}
.supplier-public-page .requests-table td{
  padding:15px 16px;
  color:#26313a !important;
  background:#fff;
  border-top:1px solid #dce1e5 !important;
  font-size:12px;
  line-height:1.45;
}
.supplier-public-page .requests-table td strong{
  color:#111a21 !important;
  font-size:12px;
  font-weight:800;
}
.supplier-public-page .requests-table tbody tr:nth-child(even) td{
  background:#faf9f6;
}
.supplier-public-page .requests-table tbody tr:hover td{
  background:#eaf8f6 !important;
}
.supplier-public-page .supplier-state-pill{
  background:#e4f5f2;
  color:#116c64;
  border:1px solid #cde9e4;
}
.supplier-public-page .secondary-button{
  color:#222b32;
  border-color:#b9c1c7;
}
@media(max-width:700px){
  .supplier-public-page .supplier-public-header{height:72px;padding:0 18px}
  .supplier-public-page .supplier-public-main{width:100%;padding:18px 12px 28px}
  .supplier-public-page .supplier-access-card{padding:20px 16px;border-radius:16px}
  .supplier-public-page .supplier-access-card h1{font-size:23px}
  .supplier-public-page .supplier-decision-form{flex-direction:column-reverse}
  .supplier-public-page .supplier-decision-form .primary-button,
  .supplier-public-page .supplier-decision-form .secondary-button{width:100%}
}

/* Stage 2.0.5 — supplier commercial offers */
.supplier-portal{overflow:hidden;border:1px solid #283137;border-radius:22px;background:#f3f0e9;box-shadow:0 24px 70px rgba(0,0,0,.25)}.supplier-portal-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px 30px;background:#fff;border-bottom:1px solid #ddd7cc}.supplier-portal-hero h1{margin:6px 0 7px;color:#172129;font-size:28px}.supplier-portal-hero p{margin:0;color:#5f6971}.supplier-portal-tabs{display:flex;gap:4px;padding:0 24px;overflow:auto;background:#151a20}.supplier-portal-tabs a{padding:16px 14px;border-bottom:3px solid transparent;color:#aab5bd;font-size:13px;font-weight:750;white-space:nowrap}.supplier-portal-tabs a.active{border-bottom-color:#30d5c8;color:#fff}.supplier-portal-body{padding:24px}.supplier-content-card{padding:22px;border:1px solid #ddd6c9;border-radius:16px;background:#fff;color:#202930}.supplier-content-card h2{margin:0 0 18px;color:#172129}.supplier-overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.supplier-progress-card{padding:22px;border-radius:16px;background:#151a20;color:#fff}.supplier-progress-card>span{display:block;color:#9eabb4;font-size:12px}.supplier-progress-card>strong{display:block;margin:6px 0 12px;font-size:34px}.supplier-progress{height:8px;overflow:hidden;border-radius:99px;background:#293138}.supplier-progress i{display:block;height:100%;border-radius:inherit;background:#30d5c8}.supplier-progress-card ul{display:grid;gap:9px;margin:18px 0 0;padding:0;list-style:none;color:#aab4bc;font-size:12px}.supplier-progress-card li:before{content:'○';margin-right:8px}.supplier-progress-card li.done{color:#dffcf8}.supplier-progress-card li.done:before{content:'✓';color:#30d5c8}.supplier-description{margin:18px 0 0;color:#4d5860;line-height:1.65}.supplier-decision-inline{padding-top:18px}.supplier-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.supplier-section-head span{display:block;color:#16887e;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.supplier-section-head h2{margin:4px 0 0}.supplier-section-head>strong{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:#edf4f3;color:#176e67}.supplier-offer-status{display:inline-flex;padding:7px 10px;border-radius:99px;background:#edf0f1;color:#657079;font-size:11px;font-style:normal;font-weight:850}.supplier-offer-status--submitted{background:#dcf3e4;color:#226f3c}.supplier-offer-status--revision{background:#fff0d8;color:#946216}.supplier-offer-status--draft{background:#e9eef1;color:#53616b}.supplier-revision-note,.buyer-revision-note{margin-bottom:16px;padding:14px;border:1px solid #efc77a;border-radius:12px;background:#fff7e8;color:#634719}.supplier-revision-note p{margin:6px 0 0}.supplier-lock-note{padding:16px;border-radius:12px;background:#f5f2ec;color:#5f6970}.supplier-offer-table-wrap{overflow:auto;border:1px solid #d7dde0;border-radius:12px}.supplier-offer-table{width:100%;min-width:1050px;border-collapse:collapse}.supplier-offer-table th{padding:12px;background:#151a20;color:#dce4e8;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.supplier-offer-table td{padding:12px;border-top:1px solid #e1e5e7;color:#222c33;vertical-align:top}.supplier-offer-table td:first-child{min-width:220px}.supplier-offer-table td strong,.supplier-offer-table td small{display:block}.supplier-offer-table td small{margin-top:4px;color:#758089}.supplier-offer-table input:not([type=checkbox]),.supplier-offer-terms input,.supplier-offer-terms select,.supplier-offer-terms textarea,.supplier-upload-form input,.supplier-upload-form select,.supplier-chat-form textarea,.buyer-revision-form textarea{width:100%;padding:10px;border:1px solid #cfd6da;border-radius:9px;background:#fff;color:#202930;font:inherit}.supplier-offer-extra td{padding-top:0;background:#faf9f6}.supplier-offer-extra td>div{display:grid;grid-template-columns:1fr 1fr 2fr;gap:10px}.supplier-offer-terms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.supplier-offer-terms label,.supplier-upload-form label{display:grid;gap:7px}.supplier-offer-terms label>span,.supplier-upload-form label>span{color:#56616a;font-size:12px;font-weight:750}.supplier-offer-terms .wide{grid-column:span 2}.supplier-offer-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.supplier-doc-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:20px}.supplier-document-list{display:grid;gap:10px}.supplier-document-list button{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:14px;border:1px solid #d9dfe2;border-radius:12px;background:#fafafa;color:#253039;text-align:left}.supplier-document-list button div{display:flex;flex-direction:column;gap:4px}.supplier-document-list button span{color:#707b83;font-size:12px}.supplier-document-list button em{color:#16887e;font-size:12px;font-style:normal;font-weight:800}.supplier-upload-form{display:grid;gap:14px}.supplier-empty{padding:26px;border:1px dashed #ccd3d6;border-radius:12px;color:#707b83;text-align:center}.supplier-chat-card{max-width:900px;margin:auto}.supplier-chat-feed{display:flex;flex-direction:column;gap:10px;max-height:460px;overflow:auto;padding:8px 0 18px}.supplier-chat-message{align-self:flex-start;max-width:78%;padding:12px 14px;border-radius:14px;background:#eef1f2}.supplier-chat-message--supplier{align-self:flex-end;background:#e0f6f3}.supplier-chat-message strong,.supplier-chat-message small{display:block}.supplier-chat-message p{margin:5px 0;color:#303b43;line-height:1.5}.supplier-chat-message small{color:#7a858d;font-size:10px}.supplier-chat-form{display:grid;grid-template-columns:1fr auto;gap:12px;border-top:1px solid #e0e4e6;padding-top:16px}.supplier-history{display:grid}.supplier-history article{position:relative;display:grid;grid-template-columns:22px 1fr;gap:12px;padding-bottom:18px}.supplier-history article:after{content:'';position:absolute;left:5px;top:13px;bottom:0;width:2px;background:#dce3e4}.supplier-history article:last-child:after{display:none}.supplier-history i{position:relative;z-index:1;width:12px;height:12px;margin-top:4px;border-radius:50%;background:#30d5c8}.supplier-history strong,.supplier-history span{display:block}.supplier-history span{margin-top:4px;color:#77828a;font-size:11px}.buyer-offer-list{display:grid;gap:14px}.buyer-offer-card{padding:18px;border:1px solid #ddd6c8;border-radius:15px;background:#fff}.buyer-offer-card__head{display:flex;justify-content:space-between;gap:15px}.buyer-offer-card__head>div{display:flex;flex-direction:column;gap:4px}.buyer-offer-card__head strong{color:#1d262d}.buyer-offer-card__head span{color:#737d84;font-size:12px}.buyer-offer-card dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.buyer-offer-card dt{color:#899197;font-size:10px;text-transform:uppercase}.buyer-offer-card dd{margin:4px 0 0;color:#263139;font-weight:750}.buyer-revision-form{display:grid;grid-template-columns:1fr auto;gap:12px;padding-top:14px;border-top:1px solid #e3e0da}
@media(max-width:900px){.supplier-overview-grid,.supplier-doc-grid{grid-template-columns:1fr}.supplier-offer-terms{grid-template-columns:1fr 1fr}.buyer-offer-card dl{grid-template-columns:1fr 1fr}.supplier-chat-form{grid-template-columns:1fr}.supplier-portal-body{padding:14px}.supplier-portal-hero{padding:22px 18px;flex-direction:column}.supplier-offer-extra td>div{grid-template-columns:1fr}}
@media(max-width:600px){.supplier-offer-terms{grid-template-columns:1fr}.supplier-offer-terms .wide{grid-column:auto}.supplier-offer-actions,.supplier-decision-form{flex-direction:column}.buyer-offer-card dl{grid-template-columns:1fr}.buyer-revision-form{grid-template-columns:1fr}.supplier-portal-tabs{padding:0 10px}}

/* Stage 2.0.5.2 — supplier offer calculations and field hints */
.supplier-offer-table--calculation{min-width:1480px}
.supplier-offer-table--calculation th:nth-child(1){min-width:220px}
.supplier-offer-table--calculation th:nth-child(2),
.supplier-offer-table--calculation th:nth-child(3),
.supplier-offer-table--calculation th:nth-child(4),
.supplier-offer-table--calculation th:nth-child(5),
.supplier-offer-table--calculation th:nth-child(6),
.supplier-offer-table--calculation th:nth-child(7){min-width:160px}
.supplier-field{display:grid;gap:6px;align-content:start}
.supplier-field>span{color:#3d4850;font-size:12px;font-weight:800}
.supplier-field>small,.supplier-calc-hint{display:block;margin-top:0;color:#99a1a7;font-size:10px;font-weight:500;line-height:1.35}
.supplier-field>em{color:#a46714;font-size:10px;font-style:normal;font-weight:750}
.supplier-offer-table output{display:block;min-width:110px;padding:10px;border:1px solid #d8dee1;border-radius:9px;background:#f3f5f5;color:#1f2b32;font-weight:850;white-space:nowrap}
.supplier-total-cell{display:grid;gap:8px}
.supplier-manual-toggle{display:flex;align-items:flex-start;gap:6px;color:#59656d;font-size:10px;line-height:1.25;cursor:pointer}
.supplier-manual-toggle input{width:auto!important;margin-top:1px}
.supplier-manual-warning{color:#9c681b!important;font-size:10px!important;line-height:1.35}
.supplier-offer-details-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;padding-top:10px}
.supplier-field--comment{grid-column:span 2}
.supplier-field--checkbox>label{display:flex;align-items:center;gap:8px;min-height:40px;padding:10px;border:1px solid #cfd6da;border-radius:9px;background:#fff;color:#303a41;font-size:12px}
.supplier-field--checkbox input{width:auto!important}
.supplier-offer-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:20px;padding:18px;border:1px solid #cddbd8;border-radius:14px;background:#f4faf9}
.supplier-offer-summary>div{padding:12px;border-radius:10px;background:#fff}
.supplier-offer-summary span,.supplier-offer-summary strong{display:block}
.supplier-offer-summary span{color:#748087;font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.supplier-offer-summary strong{margin-top:6px;color:#1f2b32;font-size:17px}
.supplier-offer-summary__grand{background:#152025!important}
.supplier-offer-summary__grand span{color:#9eaaa9}
.supplier-offer-summary__grand strong{color:#37d6c9}
.supplier-offer-summary>small{grid-column:1/-1;color:#8a9499;font-size:10px;line-height:1.45}
@media(max-width:1100px){.supplier-offer-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-offer-summary__grand{grid-column:span 2}}
@media(max-width:900px){.supplier-offer-details-grid{grid-template-columns:1fr 1fr!important}.supplier-field--comment{grid-column:1/-1}}
@media(max-width:600px){.supplier-offer-summary{grid-template-columns:1fr}.supplier-offer-summary__grand{grid-column:auto}.supplier-offer-details-grid{grid-template-columns:1fr!important}.supplier-field--comment{grid-column:auto}}

/* Stage 2.0.5.3 — compact offer cards without horizontal scrolling */
.supplier-offer-cards{display:grid;gap:18px}
.supplier-offer-card{padding:18px;border:1px solid #d7dde0;border-radius:15px;background:#faf9f6}
.supplier-offer-card__head{display:flex;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid #e0e4e5}
.supplier-offer-card__head span{color:#16887e;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.supplier-offer-card__head h3{margin:5px 0 4px;color:#172129;font-size:18px}
.supplier-offer-card__head small{color:#758089}
.supplier-offer-card__price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.supplier-calculation-box,.supplier-total-cell--card{min-width:0;padding:12px;border:1px solid #d7dfe1;border-radius:11px;background:#fff}
.supplier-calculation-box>span,.supplier-total-cell--card>span{display:block;margin-bottom:7px;color:#56616a;font-size:12px;font-weight:750}
.supplier-calculation-box output,.supplier-total-cell--card>output{display:block;padding:0;border:0;background:transparent;color:#1f2b32;font-size:18px;font-weight:850;white-space:normal;overflow-wrap:anywhere}
.supplier-calculation-box small{display:block;margin-top:5px;color:#8c969c;font-size:10px;line-height:1.4}
.supplier-total-cell--card{background:#152025}
.supplier-total-cell--card>span{color:#a9b5b7}
.supplier-total-cell--card>output{color:#37d6c9}
.supplier-total-cell--card input:not([type=checkbox]){margin-top:9px}
.supplier-total-cell--card .supplier-manual-toggle{margin-top:10px;color:#d9e2e3}
.supplier-total-cell--card .supplier-manual-warning{color:#f0c778}
.supplier-offer-card .supplier-offer-details-grid{margin-top:16px;padding-top:16px!important;border-top:1px solid #e0e4e5}
@media(max-width:1050px){.supplier-offer-card__price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.supplier-offer-card{padding:14px}.supplier-offer-card__price-grid{grid-template-columns:1fr}.supplier-offer-card .supplier-offer-details-grid{grid-template-columns:1fr!important}.supplier-field--comment{grid-column:auto}}

/* Stage 2.0.5.5 — supplier activity modal and submitted-only offers */
.supplier-card__actions{display:flex;gap:10px;margin-top:16px}.supplier-activity-button{min-height:40px;padding:0 16px}.supplier-activity-modal[hidden]{display:none}.supplier-activity-modal{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:20px}.supplier-activity-modal__backdrop{position:absolute;inset:0;background:rgba(4,7,10,.72);backdrop-filter:blur(7px)}.supplier-activity-modal__dialog{position:relative;width:min(720px,96vw);max-height:min(760px,90vh);overflow:hidden;border:1px solid #d9d2c5;border-radius:20px;background:#f8f5ee;box-shadow:0 30px 100px rgba(0,0,0,.45)}.supplier-activity-modal__header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;color:#fff;background:#151a20}.supplier-activity-modal__header>div{display:flex;flex-direction:column;gap:3px}.supplier-activity-modal__header span{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#98a3ad}.supplier-activity-modal__header strong{font-size:18px}.supplier-activity-modal__close{display:grid;place-items:center;width:40px;height:40px;border:1px solid #343c45;border-radius:10px;color:#fff;background:#20262d;font-size:26px}.supplier-activity-modal__body{max-height:calc(min(760px,90vh) - 78px);overflow:auto;padding:22px}.supplier-activity-timeline{display:flex;flex-direction:column}.supplier-activity-row{position:relative;padding:0 0 22px 28px;border-left:2px solid #d7ddd9}.supplier-activity-row:last-child{padding-bottom:0;border-left-color:transparent}.supplier-activity-row::before{content:"";position:absolute;left:-7px;top:3px;width:12px;height:12px;border:3px solid #f8f5ee;border-radius:50%;background:#2cb9ad;box-shadow:0 0 0 1px #2cb9ad}.supplier-activity-row strong{display:block;color:#222b33;font-size:15px}.supplier-activity-row p{margin:5px 0 0;color:#606b74;line-height:1.45}.supplier-activity-row small{display:block;margin-top:7px;color:#929ba3}.supplier-activity-empty{padding:30px;text-align:center;color:#7c858d}.supplier-activity-status{display:inline-flex;margin-top:8px;padding:5px 9px;border-radius:999px;background:#e7ecef;color:#53616b;font-size:12px;font-weight:800}@media(max-width:720px){.supplier-activity-modal{padding:0}.supplier-activity-modal__dialog{width:100vw;max-height:100vh;height:100vh;border:0;border-radius:0}.supplier-activity-modal__body{max-height:calc(100vh - 76px);padding:18px}}

/* Stage 2.0.5.6 — full submitted-offer view */
.offer-panel-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.buyer-offer-card__actions{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:16px;align-items:stretch;margin-top:18px}
.buyer-revision-form--compact{margin:0;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:stretch}
.buyer-revision-form--compact textarea{min-height:52px}
.offer-detail-modal[hidden]{display:none!important}
.offer-detail-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px}
.offer-detail-modal__backdrop{position:absolute;inset:0;background:rgba(8,16,22,.68);backdrop-filter:blur(4px)}
.offer-detail-modal__dialog{position:relative;width:min(1180px,100%);max-height:calc(100vh - 48px);overflow:hidden;background:#f8faf9;border:1px solid rgba(25,53,61,.16);border-radius:24px;box-shadow:0 28px 80px rgba(0,0,0,.28);display:flex;flex-direction:column}
.offer-detail-modal__header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid rgba(25,53,61,.12);background:#fff}
.offer-detail-modal__header div{display:flex;flex-direction:column;gap:4px}.offer-detail-modal__header span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#8a969c}.offer-detail-modal__header strong{font-size:24px;color:#1d2931}
.offer-detail-modal__close{width:42px;height:42px;border:0;border-radius:50%;background:#edf2f3;color:#27343b;font-size:28px;cursor:pointer}
.offer-detail-modal__body{padding:24px 26px 32px;overflow:auto}
.offer-detail-modal__body h4{margin:26px 0 14px;font-size:18px;color:#1d2931}
.offer-detail-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.offer-detail-summary>div{padding:16px;border:1px solid rgba(25,53,61,.12);border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:6px}.offer-detail-summary span{font-size:12px;color:#8a969c;text-transform:uppercase}.offer-detail-summary strong{font-size:16px;color:#1d2931}.offer-detail-summary__total{background:#e8f7f3!important;border-color:#9bd8ca!important}
.offer-detail-items{display:grid;gap:16px}.offer-detail-item{padding:20px;border:1px solid rgba(25,53,61,.12);border-radius:18px;background:#fff}.offer-detail-item__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.offer-detail-item__head strong{font-size:17px;color:#1d2931}.offer-detail-item__head span,.offer-detail-item__spec{color:#7b878d;font-size:13px}.offer-detail-item__spec{margin:8px 0 0}.offer-detail-item dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px;margin:18px 0 0}.offer-detail-item dl div{min-width:0}.offer-detail-item dt{font-size:11px;text-transform:uppercase;color:#96a0a5;margin-bottom:4px}.offer-detail-item dd{margin:0;color:#26333a;font-weight:700;word-break:break-word}.offer-detail-comment{margin-top:16px;padding:14px 16px;border-radius:14px;background:#f2f5f5}.offer-detail-comment span{font-size:12px;color:#8a969c}.offer-detail-comment p{margin:6px 0 0;color:#334148}
.offer-detail-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}.offer-detail-terms>div{padding:16px;border:1px solid rgba(25,53,61,.12);border-radius:16px;background:#fff}.offer-detail-terms span{font-size:12px;text-transform:uppercase;color:#8a969c}.offer-detail-terms p{margin:7px 0 0;color:#26333a}.offer-detail-empty{padding:18px;border-radius:14px;background:#eef2f2;color:#738087}
.analysis-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.analysis-offer-card{padding:20px;border:1px solid rgba(25,53,61,.12);border-radius:18px;background:#fff}.analysis-offer-card>strong{font-size:19px;color:#1d2931}.analysis-offer-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.analysis-offer-card dt{font-size:11px;text-transform:uppercase;color:#96a0a5}.analysis-offer-card dd{margin:4px 0 0;font-weight:700;color:#26333a}
body.offer-detail-open{overflow:hidden}
@media(max-width:900px){.offer-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-detail-item dl{grid-template-columns:repeat(2,minmax(0,1fr))}.buyer-offer-card__actions{grid-template-columns:1fr}.analysis-offer-grid{grid-template-columns:1fr}}
@media(max-width:620px){.offer-detail-modal{padding:0}.offer-detail-modal__dialog{width:100%;height:100%;max-height:none;border-radius:0}.offer-detail-modal__header,.offer-detail-modal__body{padding-left:16px;padding-right:16px}.offer-detail-summary,.offer-detail-item dl,.offer-detail-terms{grid-template-columns:1fr}.buyer-revision-form--compact{grid-template-columns:1fr}.offer-panel-actions{justify-content:flex-start}.offer-detail-item__head{flex-direction:column}}

/* Stage 2.0.6.1 — конъюнктурный анализ */
.analysis-titlebar p{margin:6px 0 0;color:#7f8b91;font-size:13px}.analysis-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.analysis-overview>div{padding:15px 16px;border:1px solid rgba(25,53,61,.12);border-radius:15px;background:#fff}.analysis-overview span{display:block;color:#8a969c;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.analysis-overview strong{display:block;margin-top:7px;color:#1d2931;font-size:17px}.analysis-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:13px;border:1px solid rgba(25,53,61,.12);border-radius:16px;background:#f4f7f6;margin-bottom:18px}.analysis-view-switch{display:flex;padding:4px;border-radius:12px;background:#e4eae9}.analysis-view-switch button{min-height:38px;padding:0 16px;border:0;border-radius:9px;background:transparent;color:#59666c;font-weight:800;cursor:pointer}.analysis-view-switch button.is-active{background:#fff;color:#16887e;box-shadow:0 2px 8px rgba(20,42,47,.09)}.analysis-metric-switches{display:flex;gap:8px;flex-wrap:wrap}.analysis-metric-switches label{position:relative}.analysis-metric-switches input{position:absolute;opacity:0}.analysis-metric-switches span{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border:1px solid #d4dedd;border-radius:999px;background:#fff;color:#68757b;font-size:12px;font-weight:750;cursor:pointer}.analysis-metric-switches input:checked+span{border-color:#88cec5;background:#e9f7f4;color:#147d74}.analysis-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}.analysis-item-nav{position:sticky;top:18px;display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid rgba(25,53,61,.12);border-radius:17px;background:#fff}.analysis-item-nav>strong{padding:4px 6px 9px;color:#1d2931}.analysis-item-nav button{width:100%;padding:12px;border:1px solid transparent;border-radius:12px;background:#f5f7f7;text-align:left;cursor:pointer}.analysis-item-nav button span{display:block;color:#334148;font-weight:800;line-height:1.35}.analysis-item-nav button small{display:block;margin-top:5px;color:#879298}.analysis-item-nav button.is-active{border-color:#91d3cb;background:#eaf7f4}.analysis-item-nav button.is-active span{color:#147d74}.analysis-content{min-width:0}.analysis-item-panel[hidden]{display:none}.analysis-item-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:15px;padding:18px 20px;border:1px solid rgba(25,53,61,.12);border-radius:17px;background:#fff}.analysis-item-head>div:first-child>span,.analysis-demand span{color:#8a969c;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.analysis-item-head h4{margin:5px 0 0;color:#1d2931;font-size:21px}.analysis-item-head p{margin:7px 0 0;color:#748087}.analysis-demand{min-width:145px;padding:11px 13px;border-radius:12px;background:#eaf7f4}.analysis-demand strong{display:block;margin-top:5px;color:#147d74}.analysis-supplier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.analysis-supplier-card{min-width:0;padding:18px;border:1px solid rgba(25,53,61,.12);border-radius:17px;background:#fff}.analysis-supplier-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.analysis-supplier-card header>div span{display:block;color:#8d989e;font-size:10px;text-transform:uppercase}.analysis-supplier-card header>div strong{display:block;margin-top:4px;color:#1d2931;font-size:18px}.analysis-include{display:flex;align-items:center;gap:6px;color:#667278;font-size:12px;font-weight:700}.analysis-badges{display:flex;gap:7px;flex-wrap:wrap;min-height:24px;margin:13px 0}.analysis-badges span{padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800}.analysis-badges .is-best{background:#e2f6ee;color:#147956}.analysis-badges .is-fast{background:#e8f0fb;color:#3269a4}.analysis-badges .is-warning{background:#fff0d9;color:#9a6417}.analysis-supplier-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:0 0 16px}.analysis-supplier-card dl div{min-width:0;padding:10px;border-radius:11px;background:#f5f7f7}.analysis-supplier-card dt{font-size:10px;color:#8a969c;text-transform:uppercase}.analysis-supplier-card dd{margin:5px 0 0;color:#27343b;font-weight:800;overflow-wrap:anywhere}.analysis-supplier-card>[data-offer-detail-open]{width:100%}.analysis-table-view[hidden]{display:none}.analysis-comparison-table{display:flex;flex-direction:column;gap:8px}.analysis-comparison-row{display:grid;grid-template-columns:1.35fr repeat(6,minmax(90px,1fr));gap:8px;align-items:center;padding:12px 13px;border:1px solid rgba(25,53,61,.12);border-radius:12px;background:#fff}.analysis-comparison-row span,.analysis-comparison-row strong{min-width:0;overflow-wrap:anywhere}.analysis-comparison-row--head{background:#182329;color:#dfe7e8;font-size:11px;text-transform:uppercase}.analysis-comparison-row:not(.analysis-comparison-row--head) span{color:#536168;font-size:13px}.analysis-comparison-row:not(.analysis-comparison-row--head) strong{color:#1d2931}.analysis-note{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:13px 15px;border-radius:13px;background:#eef4f3;color:#5c696f;font-size:13px}.analysis-note strong{color:#147d74;white-space:nowrap}
@media(max-width:1120px){.analysis-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-layout{grid-template-columns:1fr}.analysis-item-nav{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-item-nav>strong{grid-column:1/-1}.analysis-comparison-row{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-comparison-row--head{display:none}.analysis-comparison-row span,.analysis-comparison-row strong{padding:5px 0}.analysis-comparison-row span::before{content:attr(data-label);display:block;color:#98a2a7;font-size:9px;text-transform:uppercase}}
@media(max-width:760px){.analysis-overview{grid-template-columns:1fr}.analysis-item-nav{grid-template-columns:1fr}.analysis-supplier-grid{grid-template-columns:1fr}.analysis-item-head{flex-direction:column}.analysis-demand{width:100%}.analysis-supplier-card dl{grid-template-columns:1fr}.analysis-note{flex-direction:column}.analysis-toolbar{align-items:stretch}.analysis-view-switch{width:100%}.analysis-view-switch button{flex:1}}

/* Stage 2.0.6.2 — access recovery and analysis decisions */
.supplier-card__actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.supplier-card__actions form{margin:0}.supplier-card__actions .secondary-button{white-space:nowrap}
.analysis-recommendation{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:16px 0;padding:18px 20px;border:1px solid rgba(15,168,167,.35);border-radius:16px;background:rgba(15,168,167,.08)}.analysis-recommendation span{display:block;color:#617078;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.analysis-recommendation strong{display:block;margin-top:4px;font-size:20px}.analysis-recommendation p{margin:6px 0 0;color:#617078;max-width:700px}
.analysis-supplier-card.is-excluded{opacity:.62;border-style:dashed}.analysis-inclusion-state{font-size:12px;font-weight:700;color:#0b8f8f}.analysis-supplier-card.is-excluded .analysis-inclusion-state{color:#8b949e}.analysis-badges .is-risk{background:#fff3e8;color:#a45100;border:1px solid #ffd4ad}
.analysis-card-actions{display:grid;gap:10px}.analysis-decision-form{display:grid;gap:9px;padding-top:10px;border-top:1px solid #e7ecef}.analysis-decision-form textarea{width:100%;resize:vertical;min-height:58px;border:1px solid #d8e0e4;border-radius:10px;padding:10px 12px;font:inherit;background:#fff}.analysis-decision-form .primary-button{justify-self:start}.analysis-include{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.analysis-include input{accent-color:#0fa8a7}
@media(max-width:720px){.analysis-recommendation{align-items:flex-start;flex-direction:column}.analysis-recommendation .secondary-button{width:100%}.supplier-card__actions{align-items:stretch}.supplier-card__actions>*{flex:1 1 100%}.supplier-card__actions button{width:100%}}

/* Stage 2.0.6.3 — ranking, winner and protocol */
.analysis-recommendation--strong{border:1px solid #19c6c0;background:linear-gradient(135deg,rgba(25,198,192,.13),rgba(255,255,255,.96));box-shadow:0 12px 30px rgba(16,83,87,.12)}
.analysis-recommendation--strong strong{font-size:1.25rem}
.analysis-ranking{margin:18px 0 22px;border:1px solid #dce7e8;border-radius:18px;background:#fff;overflow:hidden}
.analysis-ranking-head{display:flex;justify-content:space-between;gap:20px;align-items:end;padding:20px 22px;border-bottom:1px solid #e6eeee}
.analysis-ranking-head span,.analysis-result-card span{display:block;color:#6c7c80;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}
.analysis-ranking-head h4{margin:4px 0 0;font-size:1.15rem}.analysis-ranking-head small{max-width:440px;color:#667579}
.analysis-ranking-list{display:grid}.analysis-rank-row{display:grid;grid-template-columns:42px minmax(180px,1fr) auto 90px minmax(165px,auto);gap:14px;align-items:center;padding:16px 20px;border-bottom:1px solid #edf2f2}.analysis-rank-row:last-child{border-bottom:0}.analysis-rank-row.is-recommended{background:#f0fbfa}
.analysis-rank-position{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#111820;color:#fff;font-weight:800}.analysis-rank-row.is-recommended .analysis-rank-position{background:#12aaa5}
.analysis-rank-main{display:grid;gap:4px}.analysis-rank-main span{color:#68777b;font-size:.82rem}.analysis-rank-total{font-weight:700;white-space:nowrap}.analysis-rank-score{font-size:1.25rem;font-weight:900;text-align:right}.analysis-rank-score small{font-size:.7rem;color:#7a898c}
.analysis-winner-details summary{cursor:pointer;color:#087f7b;font-weight:800;list-style:none}.analysis-winner-details summary::-webkit-details-marker{display:none}.analysis-winner-details[open]{grid-column:1/-1;border-top:1px dashed #cad8d9;padding-top:14px}.analysis-winner-details form{display:grid;gap:10px;max-width:680px;margin-left:56px}.analysis-winner-details label{display:grid;gap:7px;font-weight:700}.analysis-winner-details textarea{width:100%;border:1px solid #cbd8da;border-radius:10px;padding:11px;resize:vertical;font:inherit}
.analysis-result-card{margin:18px 0 22px;padding:22px;border:1px solid #16aaa5;border-radius:18px;background:#f3fcfb}.analysis-result-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#0f8f8b;color:#fff;font-size:.78rem;font-weight:800;margin-bottom:16px}.analysis-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.analysis-result-grid>div{padding:14px;border-radius:12px;background:#fff;border:1px solid #dceaea}.analysis-result-grid strong{display:block;margin-top:5px}.analysis-result-reason{padding:14px;border-radius:12px;background:#fff;border:1px solid #dceaea;margin-bottom:14px}.analysis-result-reason p{margin:6px 0 0}
@media(max-width:1000px){.analysis-rank-row{grid-template-columns:36px 1fr auto}.analysis-rank-total{grid-column:2}.analysis-rank-score{grid-column:3;grid-row:1/3}.analysis-winner-details{grid-column:2/4}.analysis-result-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.analysis-ranking-head{display:block}.analysis-ranking-head small{display:block;margin-top:8px}.analysis-rank-row{grid-template-columns:34px 1fr}.analysis-rank-score{grid-column:2;grid-row:auto;text-align:left}.analysis-rank-total,.analysis-winner-details{grid-column:2}.analysis-winner-details form{margin-left:0}.analysis-result-grid{grid-template-columns:1fr}}
@media print{.sidebar,.workspace-topbar,.v2-tabs,.analysis-toolbar,.analysis-layout,.analysis-recommendation,.analysis-ranking,.analysis-note,.row-open-link,.v2-page-head .v2-head-meta,.logout-button{display:none!important}.analysis-result-card{border:0;background:#fff;padding:0}.workspace-content{padding:0}.v2-page-head h2{font-size:20px}}


/* Stage 2.0.6.4 — printable protocol and rebidding */
.rebidding-start-card,.rebidding-status-card{margin:18px 0;border:1px solid #b7d8d6;border-radius:16px;background:#f7ffff;padding:18px}.rebidding-start-card summary{cursor:pointer;font-weight:900;color:#087f7b;font-size:17px}.rebidding-start-card form{display:grid;gap:14px;margin-top:16px}.rebidding-start-card label{display:grid;gap:7px;font-weight:700}.rebidding-start-card input[type=datetime-local],.rebidding-start-card textarea{border:1px solid #c8d7d8;border-radius:10px;padding:11px;font:inherit}.rebidding-supplier-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.rebidding-supplier-list label{display:flex;align-items:center;gap:10px;border:1px solid #d4e2e2;border-radius:12px;padding:11px;background:#fff}.rebidding-supplier-list span{display:grid}.rebidding-supplier-list small{color:#647477}.rebidding-status-card{display:grid;grid-template-columns:1fr auto;gap:16px}.rebidding-status-card span{display:block;color:#65777a;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.rebidding-status-card strong{display:block;margin-top:4px}.rebidding-status-card p{margin:7px 0 0}.rebidding-participants{grid-column:1/-1;display:grid;gap:8px}.rebidding-participants>div{background:#fff;border:1px solid #d6e4e4;border-radius:10px;padding:10px}.rebidding-participants>div span{text-transform:none;letter-spacing:0;margin-top:4px}
.protocol-print-page{background:#edf1f2!important;color:#15191a}.protocol-sheet{width:min(1100px,calc(100% - 32px));margin:24px auto;background:#fff;box-shadow:0 12px 35px rgba(0,0,0,.12);padding:44px 54px;box-sizing:border-box}.protocol-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.protocol-actions a{color:#087f7b;font-weight:800}.protocol-header{text-align:center;border-bottom:2px solid #101718;padding-bottom:24px}.protocol-brand{font-weight:900;color:#078d87;letter-spacing:.08em;text-transform:uppercase}.protocol-number{margin-top:12px;font-weight:800}.protocol-header h1{font-size:28px;line-height:1.25;margin:20px 0 8px}.protocol-header p{margin:0;font-weight:700}.protocol-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.protocol-meta-grid>div{border:1px solid #d8dfe0;padding:12px}.protocol-meta-grid span{display:block;color:#687578;font-size:12px;text-transform:uppercase}.protocol-meta-grid strong{display:block;margin-top:5px}.protocol-section{margin-top:28px}.protocol-section h2{font-size:18px;border-bottom:1px solid #cfd8d9;padding-bottom:8px}.protocol-section table{width:100%;border-collapse:collapse;font-size:13px}.protocol-section th,.protocol-section td{border:1px solid #aeb9bb;padding:8px;text-align:left;vertical-align:top}.protocol-section th{background:#edf5f5}.protocol-winner{display:flex;justify-content:space-between;gap:20px;border:2px solid #078d87;padding:16px;font-size:18px}.protocol-signatures{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:60px}.protocol-signatures div{border-top:1px solid #222;padding-top:8px;display:grid;gap:8px}.protocol-signatures span,.protocol-signatures i{font-size:12px;color:#687578;font-style:normal}
@media(max-width:700px){.protocol-sheet{width:100%;margin:0;padding:24px 16px;box-shadow:none}.protocol-meta-grid,.protocol-signatures{grid-template-columns:1fr}.protocol-section{overflow-x:auto}.rebidding-status-card{grid-template-columns:1fr}}
@media print{body.protocol-print-page{background:#fff!important}.protocol-sheet{width:100%;margin:0;box-shadow:none;padding:0}.no-print,.app-file-modal{display:none!important}.protocol-section table{font-size:11px}.protocol-header h1{font-size:22px}@page{size:A4 portrait;margin:14mm}}
/* Stage 2.0.7 — rebidding lifecycle and testing rollback */
.rebidding-close-form{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;padding-top:12px;border-top:1px solid #d6e4e4}.rebidding-close-form label,.analysis-reset-winner label{display:grid;gap:7px;font-weight:700}.rebidding-close-form textarea,.analysis-reset-winner textarea{border:1px solid #c8d7d8;border-radius:10px;padding:11px;font:inherit}.analysis-selection-locked{display:grid;gap:6px;margin:18px 0;padding:17px;border:1px solid #efc179;border-radius:14px;background:#fff8e9}.analysis-selection-locked strong{color:#8c5b11}.analysis-selection-locked span{color:#6d6250}.analysis-result-actions{display:flex;gap:10px;flex-wrap:wrap}.analysis-reset-winner{margin-top:14px;padding-top:12px;border-top:1px solid #d8e3e3}.analysis-reset-winner summary{cursor:pointer;color:#738084;font-weight:700}.analysis-reset-winner form{display:grid;gap:10px;margin-top:12px}.analysis-reset-winner .secondary-button{justify-self:start}
@media(max-width:700px){.rebidding-close-form{grid-template-columns:1fr}.analysis-result-actions>*{width:100%}}

/* Stage 2.1.0 — contract workspace */
.contract-workspace{display:grid;gap:22px}.contract-status{display:inline-flex;align-items:center;padding:9px 14px;border-radius:999px;font-weight:800;background:#eef2f3;color:#4b5b61}.contract-status--legal_review{background:#e8f7fa;color:#087c8a}.contract-status--revision_requested{background:#fff1e6;color:#9a4b0d}.contract-status--approved{background:#e5f7ee;color:#187149}.contract-winner-card{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.8fr) auto;gap:18px;align-items:center;padding:22px;border:1px solid #c8e8eb;border-radius:22px;background:linear-gradient(135deg,#f0fcfd,#fff)}.contract-winner-card span,.contract-main-card label,.contract-card-head span{display:block;color:#85949a;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.contract-winner-card strong{display:block;font-size:22px;margin-top:5px}.contract-winner-card small{display:block;color:#6f7d83;margin-top:5px}.contract-winner-actions{display:flex;gap:10px;flex-wrap:wrap}.contract-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.75fr);gap:22px}.contract-main-card,.contract-files-card,.contract-history-card{border:1px solid #d9e1e3;border-radius:22px;background:#fff;padding:22px}.contract-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.contract-form label,.contract-submit-form label,.contract-legal-actions label{font-weight:700;color:#56656b}.contract-form input,.contract-form select,.contract-form textarea,.contract-submit-form textarea,.contract-legal-actions textarea,.contract-upload-form select,.contract-upload-form input{width:100%;margin-top:7px;border:1px solid #ccd7da;border-radius:13px;padding:12px 14px;background:#fff;color:#243138;font:inherit;box-sizing:border-box}.contract-form-wide{grid-column:1/-1}.contract-form-actions{margin-top:18px}.contract-submit-form{margin-top:20px;padding-top:20px;border-top:1px solid #e2e8ea;display:grid;gap:12px}.contract-legal-actions{margin-top:20px;padding-top:20px;border-top:1px solid #e2e8ea;display:grid;grid-template-columns:1fr 1fr;gap:18px}.contract-legal-actions form{display:grid;gap:12px}.contract-revision-alert{padding:18px 20px;border:1px solid #ffc895;background:#fff7ef;border-radius:18px}.contract-revision-alert strong{color:#954c12}.contract-revision-alert p{margin:7px 0 0;color:#6d4b34}.contract-approved-card{margin-top:20px;padding:20px;border-radius:18px;background:#eaf8f1;border:1px solid #b9e6d0}.contract-approved-card strong{font-size:20px;color:#176a47}.contract-approved-card p{color:#4e6d5e}.contract-side-column{display:grid;gap:18px;align-content:start}.contract-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.contract-card-head strong{display:block;font-size:19px;margin-top:3px}.contract-upload-form{display:grid;gap:10px;padding-bottom:17px;border-bottom:1px solid #e4e9eb}.contract-file-list{display:grid;gap:10px;margin-top:14px}.contract-file-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:1px solid #dce4e6;background:#fafcfc;border-radius:14px;padding:13px;text-align:left;cursor:pointer}.contract-file-row strong,.contract-file-row small{display:block}.contract-file-row small{color:#7a888e;margin-top:4px}.contract-file-row b{color:#0797a4}.contract-history-list{display:grid;gap:13px}.contract-history-list>div{display:grid;grid-template-columns:10px 1fr;gap:10px}.contract-history-list>div>span{width:9px;height:9px;margin-top:5px;border-radius:50%;background:#07a6b4}.contract-history-list p{margin:0}.contract-history-list strong,.contract-history-list small{display:block}.contract-history-list small{margin-top:4px;color:#7a888e}.contract-empty-text{color:#7b898f;margin:8px 0}.contract-form input:disabled,.contract-form select:disabled,.contract-form textarea:disabled{background:#f1f4f5;color:#526168}.contract-workspace .empty-state .secondary-button{display:inline-flex;margin-top:12px}
@media(max-width:1050px){.contract-grid{grid-template-columns:1fr}.contract-winner-card{grid-template-columns:1fr 1fr}.contract-winner-actions{grid-column:1/-1}.contract-side-column{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.contract-winner-card,.contract-form-grid,.contract-legal-actions,.contract-side-column{grid-template-columns:1fr}.contract-form-wide,.contract-winner-actions{grid-column:auto}.contract-main-card,.contract-files-card,.contract-history-card{padding:16px}}
/* Stage 2.1.1 — simplified legal request */
.contract-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.contract-info-grid>div{padding:16px;border:1px solid #dfe7e9;border-radius:16px;background:#f7f9f9}.contract-info-grid span,.contract-info-grid small{display:block;color:#819099}.contract-info-grid strong{display:block;margin:5px 0;color:#233039}.contract-lawyer-request-form{margin-top:22px;padding-top:20px;border-top:1px solid #e2e9ea;display:flex;gap:12px;align-items:end}.contract-lawyer-request-form label{flex:1}.contract-complete-form{margin-top:16px}.contract-lawyer-chat{margin-top:24px}.contract-lawyer-chat .supplier-chat-feed{max-height:390px;overflow:auto}@media(max-width:760px){.contract-info-grid{grid-template-columns:1fr}.contract-lawyer-request-form{display:block}.contract-lawyer-request-form button{margin-top:12px;width:100%}}

/* Stage 2.2 — request command center */
.request-command-center{display:grid;gap:20px}.request-alert-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#fff0ed;color:#aa321f;font-weight:900;font-size:12px}.request-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.request-kpi-grid>div{padding:16px;border:1px solid #dce7e8;border-radius:15px;background:#f8fbfb}.request-kpi-grid span,.request-kpi-grid small{display:block;color:#75858a}.request-kpi-grid strong{display:block;margin:5px 0;color:#172126;font-size:18px}.request-kpi-grid .is-overdue{border-color:#f0b7ae;background:#fff4f1}.request-kpi-grid .is-overdue strong,.request-kpi-grid .is-overdue small{color:#a53423}.request-next-action{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border:1px solid #afe2e4;border-radius:17px;background:linear-gradient(135deg,#edfafa,#fff)}.request-next-action span,.request-next-action small{display:block;color:#6e8185}.request-next-action strong{display:block;margin:5px 0;color:#116d72;font-size:18px}.request-next-action.is-overdue{border-color:#efb4aa;background:#fff4f1}.request-next-action.is-overdue strong{color:#a33423}.request-command-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px}.request-stage-metrics,.request-recent-actions{min-width:0;border:1px solid #e0e8e9;border-radius:17px;padding:17px;background:#fff}.request-section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px}.request-section-head>a{color:#07858d;font-weight:800;font-size:13px;text-decoration:none}.request-stage-list{display:grid}.request-stage-row{display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #edf1f2;color:#253136;text-decoration:none}.request-stage-row:first-child{border-top:0}.request-stage-mark{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#eef2f3;color:#89969a;font-size:11px;font-weight:900}.request-stage-row.is-completed .request-stage-mark{background:#dff5eb;color:#18704c}.request-stage-row.is-current .request-stage-mark{background:#dff6f7;color:#057f87}.request-stage-row.is-current{background:#f4fbfb;margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:10px}.request-stage-row.is-overdue{background:#fff3f0}.request-stage-row.is-overdue .request-stage-mark{background:#ffe0da;color:#ae3825}.request-stage-main strong,.request-stage-main small,.request-stage-time small{display:block}.request-stage-main small{margin-top:3px;color:#829095}.request-stage-time{text-align:right;color:#536268;font-weight:800;font-size:13px}.request-stage-time small{color:#b33b28;margin-top:3px}.request-stage-row.is-upcoming{opacity:.62}.request-activity-list{display:grid}.request-activity-row{position:relative;display:grid;grid-template-columns:14px minmax(0,1fr);gap:10px;padding:9px 0}.request-activity-row>span{width:9px;height:9px;margin-top:4px;border-radius:50%;background:#09a6ad;box-shadow:0 0 0 4px #e6f7f8}.request-activity-row:not(:last-child):before{content:"";position:absolute;left:4px;top:19px;bottom:-3px;width:1px;background:#dce7e8}.request-activity-row strong,.request-activity-row small{display:block}.request-activity-row p{margin:4px 0;color:#59686e;font-size:13px}.request-activity-row small{margin-top:4px;color:#849196}.v2-side-card--next span{line-height:1.4}.v2-side-card--next.is-overdue{border-color:#7a342e;background:#281917}.v2-side-card--next.is-overdue span{color:#ff9e8f}
@media(max-width:1000px){.request-command-grid{grid-template-columns:1fr}.request-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.request-kpi-grid>div:last-child{grid-column:1/-1}}
@media(max-width:650px){.request-kpi-grid{grid-template-columns:1fr}.request-kpi-grid>div:last-child{grid-column:auto}.request-next-action{align-items:flex-start;flex-direction:column}.request-next-action .primary-button{width:100%;box-sizing:border-box;text-align:center}.request-stage-row{grid-template-columns:25px minmax(0,1fr)}.request-stage-time{grid-column:2;text-align:left}}

/* Stage 2.2.2 — optional invoice metadata */
.invoice-optional-note{padding:14px 16px;border:1px dashed rgba(15,118,110,.35);border-radius:14px;background:rgba(15,118,110,.05);display:flex;flex-direction:column;gap:4px}.invoice-optional-note strong{font-size:14px}.invoice-optional-note span,.supplier-field small{font-size:12px;color:var(--muted,#6b7280);line-height:1.45}.supplier-field small{display:block;margin-top:7px}


/* Stage 2.3 — accounting payment and supplier delivery */
.payment-decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.supplier-confirm-check{display:flex;align-items:flex-start;gap:10px;margin:18px 0;padding:14px;border:1px solid var(--border,#dfe4ea);border-radius:12px}.supplier-confirm-check input{margin-top:3px}.delivery-info-grid{margin-top:8px}
@media(max-width:900px){.payment-decision-grid{grid-template-columns:1fr}}

/* Stage 3.1 — audit */
.audit-page{width:min(1180px,100%);margin:0 auto}.audit-filters{padding:20px;margin-bottom:18px}.audit-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.audit-filters label{display:flex;flex-direction:column;gap:7px}.audit-filters label span{font-size:12px;font-weight:700;color:#69727d}.audit-filters input,.audit-filters select{min-height:42px;border:1px solid #d7dde3;border-radius:10px;background:#fff;color:#111;padding:0 12px}.audit-search-row{display:flex;gap:10px;margin-top:16px}.audit-search-row input{flex:1}.audit-timeline{padding:22px}.audit-event{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid #e8ecef}.audit-event:last-child{border-bottom:0}.audit-event__icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e7fbf8;color:#008f83;font-weight:900}.audit-event__head{display:flex;justify-content:space-between;gap:16px}.audit-event__head strong{color:#101418}.audit-event__head time,.audit-event__body>small{font-size:12px;color:#7a838d}.audit-event__body p{margin:8px 0 0}.audit-change{margin-top:12px;padding:12px 14px;border-radius:12px;background:#f5f7f8}.audit-change>span{display:block;font-size:12px;color:#6d7680;margin-bottom:8px}.audit-change>div{display:flex;align-items:center;gap:12px}.audit-change b{font-weight:700}.audit-change i{font-style:normal;color:#009e91}.audit-comment{color:#4e5964}.v2-tabs{overflow-x:auto}
@media(max-width:800px){.audit-filter-grid{grid-template-columns:1fr}.audit-search-row{flex-direction:column}.audit-event__head{flex-direction:column;gap:4px}.audit-change>div{align-items:flex-start;flex-direction:column}}

/* Stage 3.2 — supplier registry */
.supplier-registry,.supplier-profile{width:min(1240px,100%);margin:0 auto}.supplier-registry-search{display:flex;gap:10px;padding:16px;margin-bottom:18px}.supplier-registry-search input{flex:1;min-height:44px;border:1px solid #d8e1e3;border-radius:12px;padding:0 14px;background:#fff;color:#152126}.supplier-registry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.supplier-registry-card{display:block;padding:20px;border:1px solid #dce7e8;border-radius:20px;background:#fff;color:#172126;text-decoration:none;box-shadow:0 8px 24px rgba(17,40,44,.05);transition:.18s ease}.supplier-registry-card:hover{transform:translateY(-2px);border-color:#8fd7dc;box-shadow:0 12px 28px rgba(17,40,44,.09)}.supplier-registry-card header,.supplier-registry-card footer{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.supplier-registry-card header strong{display:block;font-size:19px}.supplier-registry-card header span,.supplier-registry-card footer span{display:block;margin-top:5px;color:#76858a;font-size:13px}.supplier-registry-card header b{padding:7px 10px;border-radius:999px;background:#e8f9f8;color:#087d83;font-size:12px}.supplier-registry-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0}.supplier-registry-stats>div{padding:12px;border-radius:14px;background:#f5f9f9}.supplier-registry-stats span,.supplier-registry-stats strong{display:block}.supplier-registry-stats span{font-size:11px;color:#7c898e}.supplier-registry-stats strong{margin-top:5px;font-size:18px}.supplier-registry-card footer{padding-top:14px;border-top:1px solid #edf2f3;align-items:center}.supplier-registry-card footer strong{color:#087d83}.supplier-profile{display:grid;gap:18px}.supplier-profile-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px}.supplier-profile-head span,.supplier-profile-head p,.supplier-profile-contact span{color:#75858a}.supplier-profile-head h2{margin:6px 0;font-size:28px}.supplier-profile-contact{text-align:right}.supplier-profile-contact strong,.supplier-profile-contact span{display:block;margin-top:5px}.supplier-profile-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.supplier-profile-kpis>div{padding:18px;border:1px solid #dce7e8;border-radius:17px;background:#fff}.supplier-profile-kpis span,.supplier-profile-kpis strong{display:block}.supplier-profile-kpis span{font-size:12px;color:#7a898e}.supplier-profile-kpis strong{margin-top:7px;font-size:21px}.supplier-profile-table{padding:20px}.supplier-win-badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:#e3f6eb;color:#176d49;font-size:12px;font-weight:800}
@media(max-width:1000px){.supplier-profile-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.supplier-registry-grid{grid-template-columns:1fr}.supplier-registry-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-registry-search,.supplier-profile-head{flex-direction:column;align-items:stretch}.supplier-profile-contact{text-align:left}.supplier-profile-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Stage 3.3 — импорт поставщиков */
.supplier-registry-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.supplier-import-report{margin:16px 0;padding:18px 20px}.supplier-import-report>strong{display:block;margin-bottom:12px}.supplier-import-report>div{display:flex;flex-wrap:wrap;gap:12px 26px}.supplier-import-report span{color:#53606f}.supplier-import-report b{color:#0b877f}.supplier-import-report details{margin-top:12px}.supplier-import-report summary{cursor:pointer;color:#0b877f;font-weight:700}.supplier-import-report ul{margin:10px 0 0;padding-left:20px;color:#7a3030}.supplier-import-modal[hidden]{display:none}.supplier-import-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px}.supplier-import-modal__backdrop{position:absolute;inset:0;background:rgba(5,10,14,.7);backdrop-filter:blur(5px)}.supplier-import-modal__card{position:relative;width:min(620px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border:1px solid rgba(14,157,145,.3);border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.35);padding:28px}.supplier-import-modal__card h3{margin:5px 0 8px;font-size:26px}.supplier-import-modal__card>p{margin:0 0 18px;color:#65717f}.supplier-import-modal__close{position:absolute;top:16px;right:16px;width:36px;height:36px;border:0;border-radius:50%;background:#eef6f5;color:#172025;font-size:25px;cursor:pointer}.supplier-import-columns{display:flex;flex-wrap:wrap;gap:8px;padding:16px;border-radius:14px;background:#f4f8f8;margin-bottom:18px}.supplier-import-columns strong{width:100%;margin-bottom:4px}.supplier-import-columns span{padding:6px 9px;border-radius:8px;background:#fff;border:1px solid #dce8e7;font-size:13px}.supplier-import-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;padding:20px;border:2px dashed #70c7c0;border-radius:16px;background:#f8fcfb;text-align:center;cursor:pointer;transition:.2s}.supplier-import-drop:hover{border-color:#078d84;background:#f0fbf9}.supplier-import-drop input{position:absolute;opacity:0;pointer-events:none}.supplier-import-drop strong{color:#087f77;font-size:17px}.supplier-import-drop span{margin-top:7px;color:#687581;word-break:break-all}.supplier-import-form>small{display:block;margin-top:12px;color:#687581;line-height:1.5}.supplier-import-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.modal-open{overflow:hidden}@media(max-width:700px){.supplier-registry-head{align-items:flex-start;flex-direction:column}.supplier-registry-head .primary-button{width:100%}.supplier-import-modal{padding:10px}.supplier-import-modal__card{padding:22px 16px;border-radius:17px}.supplier-import-actions{flex-direction:column-reverse}.supplier-import-actions>*{width:100%}}

/* Stage 3.3.2 — supplier profile cleanup */
.supplier-profile-page .supplier-profile-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border:1px solid #ddd6c8;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(32,29,23,.07);color:#1d232b}
.supplier-profile-page .supplier-profile-head h2{color:#151a20}
.supplier-profile-page .supplier-profile-contact{padding-left:24px;border-left:1px solid #ebe5da}
.supplier-profile-page .supplier-profile-table{background:#fff!important}
.supplier-profile-page .supplier-profile-table .v2-panel-title{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px}
.supplier-history-count{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;background:#eef8f8;color:#087d83;font-size:12px;font-weight:800}
.supplier-history-empty{display:grid;gap:6px;padding:42px 20px;border-top:1px solid #ebe5da;text-align:center}
.supplier-history-empty strong{color:#1d232b;font-size:17px}
.supplier-history-empty span{color:#7a858c;font-size:13px}
@media(max-width:760px){.supplier-profile-page .supplier-profile-contact{padding-left:0;padding-top:16px;border-left:0;border-top:1px solid #ebe5da}}

/* Stage 3.4 — supplier registry picker */
.supplier-picker-column{display:flex;flex-direction:column;gap:16px;min-width:0}
.supplier-picker{padding:22px!important}
.supplier-picker__filters{display:grid;gap:12px;margin:14px 0}
.supplier-picker__filters select{width:100%}
.supplier-picker__summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 10px}
.supplier-picker__summary strong{font-size:14px}
.supplier-picker__list{display:flex;flex-direction:column;gap:8px;max-height:460px;overflow:auto;padding-right:4px;margin-bottom:14px}
.supplier-picker__item{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--border-color,#dfe5ea);border-radius:14px;background:#fff;cursor:pointer;transition:.18s ease}
.supplier-picker__item:hover{border-color:#8fd8d6;box-shadow:0 8px 22px rgba(26,67,75,.08)}
.supplier-picker__item input{margin-top:4px;flex:0 0 auto}
.supplier-picker__item>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.supplier-picker__item strong{font-size:14px;color:#17202a}
.supplier-picker__item small{font-size:12px;color:#66727f;line-height:1.35}
.supplier-picker__item em{font-size:12px;color:#087f83;font-style:normal;overflow-wrap:anywhere}
.supplier-picker__item.is-disabled{opacity:.58;cursor:not-allowed;background:#f6f7f8}
.supplier-picker__item.is-disabled:hover{box-shadow:none;border-color:var(--border-color,#dfe5ea)}
.supplier-picker__empty{padding:20px;text-align:center;color:#71808d;border:1px dashed #cfd8df;border-radius:14px}
.supplier-picker .primary-button:disabled{opacity:.45;cursor:not-allowed}
.supplier-manual-add{padding:0!important;overflow:hidden}
.supplier-manual-add>summary{padding:18px 20px;cursor:pointer;font-weight:700;list-style:none}
.supplier-manual-add>summary::-webkit-details-marker{display:none}
.supplier-manual-add>summary:after{content:'+';float:right;font-size:20px;font-weight:400}
.supplier-manual-add[open]>summary:after{content:'−'}
.supplier-manual-add .supplier-invite-form{padding:0 20px 20px;display:grid;gap:12px}
@media(max-width:900px){.supplier-picker__list{max-height:380px}.supplier-picker__filters .supplier-form-row{grid-template-columns:1fr}}

/* Stage 3.4.1 — supplier picker filtering */
.supplier-picker__item[hidden],.supplier-picker__item.is-filtered-out{display:none!important}

/* Stage 3.5 — automatic supplier recommendations */
.supplier-recommendation-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;margin:14px 0;border:1px solid #b9e1df;border-radius:14px;background:#eef9f8}
.supplier-recommendation-summary>div{display:flex;flex-direction:column;gap:3px}.supplier-recommendation-summary strong{font-size:14px;color:#12383b}.supplier-recommendation-summary small{font-size:12px;color:#617174;line-height:1.35}
.supplier-recommendation-summary .secondary-button{white-space:nowrap;padding:9px 12px}
.supplier-picker__item.is-recommended{border-color:#8fd8d6;background:#f7fdfc}
.supplier-picker__name{display:flex;align-items:center;justify-content:space-between;gap:10px}.supplier-picker__name b{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#dff4ef;color:#08745f;font-size:11px}
.supplier-picker__reason{font-size:11px;line-height:1.35;color:#315f61}
@media(max-width:640px){.supplier-recommendation-summary{align-items:stretch;flex-direction:column}.supplier-recommendation-summary .secondary-button{width:100%}}

/* Stage 3.5.1 — supplier picker responsive overflow fix */
.supplier-picker,
.supplier-picker *{box-sizing:border-box}
.supplier-picker{min-width:0;max-width:100%;overflow:hidden}
.supplier-picker__filters,
.supplier-picker__filters label,
.supplier-picker__filters input,
.supplier-picker__filters select{min-width:0;max-width:100%}
.supplier-picker__filters .supplier-form-row{grid-template-columns:repeat(2,minmax(0,1fr))}
.supplier-recommendation-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;max-width:100%}
.supplier-recommendation-summary>div{min-width:0}
.supplier-recommendation-summary strong,
.supplier-recommendation-summary small{overflow-wrap:anywhere}
.supplier-recommendation-summary .secondary-button{max-width:100%;white-space:normal;text-align:center}
.supplier-picker__summary{flex-wrap:wrap;min-width:0}
.supplier-picker__summary .link-button{max-width:100%;white-space:normal}
.supplier-picker__item{min-width:0;max-width:100%}
.supplier-picker__item>span{width:100%}
.supplier-picker__name{min-width:0;flex-wrap:wrap}
.supplier-picker__name strong{min-width:0;overflow-wrap:anywhere}
@media(max-width:1180px){
  .supplier-recommendation-summary{grid-template-columns:1fr}
  .supplier-recommendation-summary .secondary-button{width:100%}
}
@media(max-width:700px){
  .supplier-picker{padding:16px!important}
  .supplier-picker__filters .supplier-form-row{grid-template-columns:1fr}
  .supplier-picker__summary{align-items:stretch;flex-direction:column}
  .supplier-picker__summary .link-button{width:100%}
}

/* Stage 3.5.2 — recommendation text above action button */
.supplier-recommendation-summary{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:14px!important;
}
.supplier-recommendation-summary>div{
  width:100%;
  min-width:0;
}
.supplier-recommendation-summary strong,
.supplier-recommendation-summary small{
  display:block;
  width:100%;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none;
}
.supplier-recommendation-summary .secondary-button{
  display:block;
  width:100%!important;
  max-width:100%;
  white-space:normal;
  text-align:center;
}

/* Stage 3.6 — multiple winners by request item */
.multi-winner-card{margin:18px 0;padding:20px;border:1px solid #d8e1ea;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.multi-winner-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.multi-winner-head span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#64748b}.multi-winner-head h4{margin:4px 0 6px;font-size:21px}.multi-winner-head p{margin:0;color:#64748b}.multi-winner-status{padding:8px 12px;border-radius:999px;background:#dcfce7;color:#166534;white-space:nowrap}.multi-winner-status.is-draft{background:#f1f5f9;color:#475569}
.multi-winner-table-wrap{overflow-x:auto}.multi-winner-table{width:100%;border-collapse:collapse}.multi-winner-table th,.multi-winner-table td{padding:12px;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:middle}.multi-winner-table th{font-size:12px;color:#64748b;text-transform:uppercase}.multi-winner-table td:first-child{min-width:240px}.multi-winner-table td:nth-child(2){min-width:330px}.multi-winner-table small,.multi-winner-table td>span{display:block;margin-top:4px;color:#64748b}.multi-winner-table select{width:100%;max-width:100%;box-sizing:border-box}
.multi-winner-reason{display:block;margin-top:16px}.multi-winner-reason textarea{width:100%;box-sizing:border-box;margin-top:7px}.multi-winner-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:14px}.multi-winner-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.multi-winner-summary article{padding:15px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc}.multi-winner-summary article>div{display:flex;justify-content:space-between;gap:8px}.multi-winner-summary b{display:block;margin:10px 0}.multi-winner-summary ul{margin:0;padding-left:18px;color:#475569}.multi-winner-total{display:flex;justify-content:space-between;gap:15px;margin-top:14px;padding:14px 16px;border-radius:13px;background:#0f172a;color:#fff}
@media(max-width:760px){.multi-winner-head{flex-direction:column}.multi-winner-actions>*{width:100%}.multi-winner-total{flex-direction:column}}
/* Stage 3.6.4 — partial commercial offer */
.supplier-offer-line.is-unavailable{opacity:.72;background:#f3f4f6;border-color:#d1d5db}.supplier-offer-line.is-unavailable .supplier-offer-card__price-grid,.supplier-offer-line.is-unavailable .supplier-offer-details-grid{filter:grayscale(.35)}.supplier-item-status{max-width:320px;margin:14px 0}.analysis-supplier-card.is-unavailable,.offer-detail-item.is-unavailable{background:#f5f6f7;border-color:#d7dbe0}.analysis-unavailable-label,.analysis-badges .is-muted{color:#6b7280;font-weight:700}.analysis-badges .is-muted{background:#eceff1}

/* Stage 3.6.5 — edit finalized winners */
.multi-winner-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.multi-winner-price-alert{display:grid;gap:5px;margin:0 0 16px;padding:14px 16px;border:1px solid #f2c26b;border-radius:13px;background:#fff8e8}.multi-winner-price-alert strong{color:#8a5700}.multi-winner-price-alert span{color:#705f40}.multi-winner-table input[type=number]{width:150px;max-width:100%;box-sizing:border-box}.award-price-changed{color:#9a5c08!important}.multi-winner-summary li small{display:block;color:#9a5c08;margin-top:3px}
@media(max-width:760px){.multi-winner-head-actions{width:100%;justify-content:flex-start}.multi-winner-head-actions .secondary-button{width:100%}.multi-winner-table input[type=number]{width:100%}}
/* Stage 3.6.6 — supplier offer extra costs */
.supplier-extra-costs{margin:18px 0;padding:16px;border:1px solid var(--border,#dfe4ea);border-radius:14px}.supplier-extra-costs__head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px}.supplier-extra-costs__head small{display:block;margin-top:4px}.supplier-extra-row{display:grid;grid-template-columns:1.4fr .6fr .8fr .5fr .7fr 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--border,#e5e7eb)}.supplier-extra-row label span{display:block;font-size:12px;margin-bottom:5px}.supplier-extra-row input{width:100%}.supplier-extra-check{display:flex!important;align-items:center;gap:7px}.supplier-extra-check span{margin:0!important}.supplier-extra-result{grid-column:1/-2;display:flex;gap:20px;font-size:13px}.supplier-extra-remove{border:0;background:none;color:#b42318;cursor:pointer}.supplier-position-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.supplier-position-summary>div{padding:12px;border-radius:12px;background:rgba(127,127,127,.08)}.supplier-position-summary span{display:block;font-size:12px}.supplier-position-summary strong{font-size:18px}@media(max-width:900px){.supplier-extra-row{grid-template-columns:1fr 1fr}.supplier-extra-result{grid-column:1/-1}.supplier-position-summary{grid-template-columns:1fr}}

/* Stage 3.6.6 — дополнительные расходы в просмотре КП */
.offer-detail-extra-costs{margin-top:14px;padding:14px;border:1px solid rgba(148,163,184,.24);border-radius:14px;background:rgba(15,23,42,.35)}
.offer-detail-extra-costs>strong{display:block;margin-bottom:10px}
.offer-detail-extra-cost{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;padding:10px 0;border-top:1px solid rgba(148,163,184,.16)}
.offer-detail-extra-cost:first-of-type{border-top:0}
.offer-detail-extra-cost>div{display:flex;flex-direction:column;gap:3px}
.offer-detail-extra-cost>div:nth-child(2){align-items:flex-end;text-align:right}
.offer-detail-extra-cost span,.offer-detail-extra-cost p{font-size:12px;color:var(--muted,#94a3b8)}
.offer-detail-extra-cost p{grid-column:1/-1;margin:0}
.offer-detail-extra-cost.is-mandatory b{color:var(--accent,#22d3ee)}
.offer-detail-extra-cost.is-optional{opacity:.82}
@media(max-width:700px){.offer-detail-extra-cost{grid-template-columns:1fr}.offer-detail-extra-cost>div:nth-child(2){align-items:flex-start;text-align:left}}

/* Stage 3.6.6 Part 6 — compact per-winner routing */
.winner-route-progress{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:0 0 16px}.winner-route-progress>div{padding:12px 14px;border:1px solid #dbe4ec;border-radius:13px;background:#f8fafc}.winner-route-progress span{display:block;font-size:12px;color:#64748b}.winner-route-progress strong{display:block;margin-top:4px;font-size:21px}.winner-route-progress .is-returned{border-color:#f2c26b;background:#fff8e8}.winner-route-details{margin:10px 0;border:1px solid #d8e1ea;border-radius:17px;background:#fff;overflow:hidden}.winner-route-details>summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 20px;cursor:pointer;list-style:none}.winner-route-details>summary::-webkit-details-marker{display:none}.winner-route-details>summary:after{content:'⌄';font-size:22px;color:#64748b;transition:transform .18s}.winner-route-details[open]>summary:after{transform:rotate(180deg)}.winner-route-summary-main{display:flex;flex-direction:column;gap:4px;min-width:0}.winner-route-summary-main span{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#7c8b99}.winner-route-summary-main strong{font-size:20px;overflow-wrap:anywhere}.winner-route-summary-side{display:flex;align-items:flex-end;flex-direction:column;gap:6px;margin-left:auto}.winner-route-summary-side b{white-space:nowrap}.winner-route-summary-side em{padding:5px 9px;border-radius:999px;background:#eef2f7;color:#475569;font-size:12px;font-style:normal;font-weight:700}.winner-route-details.is-legal-review .winner-route-summary-side em{background:#fff4d6;color:#8a5700}.winner-route-details.is-mto-review .winner-route-summary-side em{background:#dff7fb;color:#087d8f}.winner-route-details.is-approved .winner-route-summary-side em{background:#dcfce7;color:#166534}.winner-route-details.is-returned .winner-route-summary-side em{background:#fee2e2;color:#991b1b}.winner-route-body{padding:0 20px 20px;border-top:1px solid #edf1f5}.winner-route-choice{padding-top:18px}.winner-route-choice>strong{display:block;margin-bottom:10px;font-size:18px}.winner-route-choice-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.winner-route-choice-buttons label{cursor:pointer}.winner-route-choice-buttons input{position:absolute;opacity:0;pointer-events:none}.winner-route-choice-buttons span{display:block;padding:10px 14px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;font-weight:700}.winner-route-choice-buttons input:checked+span{border-color:#0ea5b7;background:#e5f9fb;color:#087d8f}.winner-route-choice-panel{display:none;max-width:760px;padding:16px;border:1px solid #dbe4ec;border-radius:14px;background:#f8fafc}.winner-route-choice:has(input[value="contract"]:checked) [data-route-panel="contract"]{display:block}.winner-route-choice:has(input[value="buyer_contract"]:checked) [data-route-panel="buyer_contract"]{display:block}.winner-route-choice:has(input[value="special_account"]:checked) [data-route-panel="special_account"]{display:block}.winner-route-choice:has(input[value="no_contract"]:checked) [data-route-panel="no_contract"]{display:block}.winner-route-choice-panel .contract-form{margin:0}.winner-route-choice-panel button[disabled],.winner-route-body button[disabled]{opacity:.6;cursor:wait}
@media(max-width:700px){.winner-route-details>summary{align-items:flex-start;padding:15px}.winner-route-summary-side{align-items:flex-start;margin-left:0}.winner-route-details>summary{flex-wrap:wrap}.winner-route-details>summary:after{margin-left:auto}.winner-route-body{padding:0 15px 15px}.winner-route-choice-buttons{flex-direction:column}.winner-route-choice-buttons span{text-align:center}}

/* Stage 3.6.6 Part 13.1 — аккуратный выбор победителя в оплате и доставке */
.winner-contract-switcher{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;
  width:100%;
  margin-top:18px;
}
.winner-contract-switcher__item{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
  min-width:0;
  min-height:88px;
  padding:17px 52px 17px 18px;
  border:1px solid #d9e2e8;
  border-radius:16px;
  background:#fff;
  color:#17202a;
  text-decoration:none;
  box-shadow:0 5px 16px rgba(15,23,42,.035);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease;
  box-sizing:border-box;
}
.winner-contract-switcher__item::after{
  content:'→';
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:50%;
  background:#eef8fa;
  color:#0796ad;
  font-size:18px;
  font-weight:800;
}
.winner-contract-switcher__item:hover{
  border-color:#8fd7df;
  box-shadow:0 10px 24px rgba(5,145,166,.10);
  transform:translateY(-1px);
}
.winner-contract-switcher__item strong{
  display:block;
  min-width:0;
  font-size:17px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.winner-contract-switcher__item span{
  display:block;
  min-width:0;
  color:#6f7b87;
  font-size:13px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.winner-contract-switcher__item.is-active{
  border-color:#09a2bb;
  background:#effbfc;
  box-shadow:0 0 0 2px rgba(9,162,187,.10),0 10px 24px rgba(5,145,166,.10);
}
.winner-contract-switcher__item.is-active::after{
  content:'✓';
  background:#08a2bb;
  color:#fff;
}
.winner-contract-switcher__item.is-active strong{color:#087b8d}

@media(max-width:700px){
  .winner-contract-switcher{grid-template-columns:1fr;gap:10px}
  .winner-contract-switcher__item{min-height:78px;padding:14px 48px 14px 15px}
  .winner-contract-switcher__item strong{font-size:16px}
}


/* Stage 3.6.6 PART 13.2 — безопасный тестовый сброс выбранного победителя */
.test-reset-panel{margin-top:18px;padding:18px;border:1px solid #efc9c4;border-radius:18px;background:#fff9f8}
.test-reset-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}
.test-reset-panel__head div{display:flex;flex-direction:column;gap:3px}
.test-reset-panel__head span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#a45148}
.test-reset-panel__head strong{font-size:18px;color:#252a30}
.test-reset-panel__head em{font-style:normal;font-size:12px;font-weight:700;color:#a45148;background:#fff;border:1px solid #efc9c4;border-radius:999px;padding:6px 10px;white-space:nowrap}
.test-reset-panel>p{margin:0 0 14px;color:#6c747d;line-height:1.5}
.test-reset-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:12px;align-items:end}
.test-reset-form label{display:flex;flex-direction:column;gap:7px}
.test-reset-form label>span{font-size:13px;font-weight:700;color:#59636d}
.test-reset-form select,.test-reset-form input{width:100%;min-height:44px;border:1px solid #d9d3ca;border-radius:12px;background:#fff;padding:0 12px;font:inherit;color:#252a30}
.danger-outline-button{min-height:44px;border:1px solid #c85f54;border-radius:12px;background:#fff;color:#a83f36;font:inherit;font-weight:800;padding:0 16px;cursor:pointer;white-space:nowrap}
.danger-outline-button:hover{background:#fff0ee}
@media(max-width:900px){.test-reset-form{grid-template-columns:1fr}.test-reset-panel__head{flex-direction:column}.test-reset-panel__head em{white-space:normal}}

/* Stage 3.6.6 PART 13.11 — чаты заявки и победителей */
.request-chat-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:18px;margin-top:22px;min-height:620px}.request-chat-list{display:flex;flex-direction:column;gap:10px}.request-chat-card{display:grid;grid-template-columns:46px minmax(0,1fr) 28px;align-items:center;gap:12px;padding:16px;border:1px solid #d9e2e6;border-radius:18px;background:#fff;color:#17202a;text-decoration:none;transition:.18s ease}.request-chat-card:hover,.request-chat-card.is-active{border-color:#09a4bf;background:#eefbfe;box-shadow:0 8px 24px rgba(16,84,101,.08)}.request-chat-card__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:#0aa5bd;color:#fff;font-weight:800}.request-chat-card__icon--supplier{background:#eaf8fb;color:#0788a1}.request-chat-card span:nth-child(2){min-width:0}.request-chat-card strong,.request-chat-card small{display:block}.request-chat-card strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-chat-card small{margin-top:5px;color:#76838d;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-chat-card b{color:#079bb5;font-size:20px}.request-chat-window{display:flex;flex-direction:column;min-width:0;border:1px solid #d9e2e6;border-radius:20px;background:#f8fafb;overflow:hidden}.request-chat-window__head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;border-bottom:1px solid #e0e7ea;background:#fff}.request-chat-window__head span,.request-chat-window__head strong,.request-chat-window__head small{display:block}.request-chat-window__head span{color:#078ba3;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.request-chat-window__head strong{margin-top:4px;font-size:21px}.request-chat-window__head small{margin-top:4px;color:#7a8790}.request-chat-feed{display:flex;flex:1;flex-direction:column;gap:12px;min-height:390px;max-height:520px;padding:22px;overflow:auto}.request-chat-message{align-self:flex-start;max-width:min(76%,680px);padding:14px 16px;border:1px solid #dbe3e7;border-radius:6px 18px 18px 18px;background:#fff}.request-chat-message.is-mine{align-self:flex-end;border-color:#9ddde8;border-radius:18px 6px 18px 18px;background:#eafafd}.request-chat-message.is-supplier{border-color:#d8e3da;background:#f7fbf7}.request-chat-message>div{display:flex;align-items:baseline;gap:8px}.request-chat-message strong{font-size:14px}.request-chat-message small,.request-chat-message time{color:#82909a;font-size:12px}.request-chat-message p{margin:8px 0;white-space:normal;word-break:break-word}.request-chat-message time{display:block;text-align:right}.request-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:16px 18px;border-top:1px solid #e0e7ea;background:#fff}.request-chat-compose textarea{width:100%;min-height:76px;resize:vertical;border:1px solid #ccd8dd;border-radius:14px;padding:12px 14px;font:inherit}.request-chat-empty{margin:auto;text-align:center;color:#74808a}.request-chat-empty strong{display:block;color:#20272d;font-size:20px}.request-chat-empty p{margin:8px 0 0}.request-chat-empty--large{padding:80px 30px}@media(max-width:900px){.request-chat-layout{grid-template-columns:1fr;min-height:0}.request-chat-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.request-chat-window{min-height:560px}}@media(max-width:620px){.request-chat-list{grid-template-columns:1fr}.request-chat-window__head{align-items:flex-start;flex-direction:column}.request-chat-compose{grid-template-columns:1fr}.request-chat-message{max-width:92%}}

/* Stage 3.6.6 PART 13.12 */
.v2-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.request-print-button{flex:0 0 auto}.supplier-company-caption{display:block;margin:5px 0 2px;color:#71808b;font-weight:700}.supplier-history article strong{line-height:1.35}
.request-print-sheet{max-width:1180px;margin:0 auto;padding:24px}.request-print-actions{display:flex;justify-content:space-between;margin-bottom:20px}.request-form-template{background:#fff;color:#111;padding:26px 34px;font-family:"Times New Roman",serif;font-size:16px}.request-form-template .approval-title{text-align:center;font-weight:700;font-size:20px}.approval-person,.approval-date{margin-top:18px}.approval-sign{display:flex;justify-content:flex-end;gap:80px;margin:8px 0 36px}.approval-sign span{text-align:center}.approval-sign small{display:block;font-style:italic}.request-form-template h1,.request-form-template h2{text-align:center;margin:5px 0;font-size:20px}.request-template-meta,.request-template-items,.request-template-signatures{width:100%;border-collapse:collapse;margin-top:14px}.request-template-meta th{width:175px;text-align:left}.request-template-meta th,.request-template-meta td{border-bottom:1px solid #111;padding:7px 5px}.request-template-items th,.request-template-items td{border:1px solid #111;padding:7px;vertical-align:top}.request-template-items th{background:#e7e7e7;text-align:center}.request-template-items th:nth-child(1){width:70px}.request-template-items th:nth-child(3){width:90px}.request-template-items th:nth-child(4){width:90px}.request-template-items th:nth-child(5){width:240px}.request-template-signatures th,.request-template-signatures td{padding:7px 5px;text-align:left}.request-template-signatures th{width:220px}
@media(max-width:700px){.v2-page-head{align-items:flex-start;flex-direction:column}.request-chat-layout{display:grid!important;grid-template-columns:1fr!important}.request-print-sheet{padding:8px}.request-form-template{padding:18px;font-size:14px}}
@media print{.no-print,.app-sidebar,.app-header{display:none!important}.request-template-print-page{background:#fff!important}.request-print-sheet{max-width:none;padding:0}.request-form-template{padding:0}.request-template-items thead{display:table-header-group}@page{size:A4 landscape;margin:10mm}}

/* Stage 3.7 — personal cabinet and notification center */
.global-notifications{position:fixed;right:22px;top:18px;z-index:1200}.global-notifications__bell{width:46px;height:46px;border-radius:14px;border:1px solid rgba(48,213,200,.32);background:#151a20;color:#f3f4f6;display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 32px rgba(0,0,0,.25)}.global-notifications__bell svg{width:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.global-notifications__bell:hover{border-color:#30d5c8;color:#30d5c8}.global-notifications__count{position:absolute;right:-5px;top:-5px;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;border:2px solid #0f1115}.global-notifications__panel{position:absolute;right:0;top:56px;width:min(390px,calc(100vw - 24px));background:#171c22;border:1px solid #2b3138;border-radius:18px;box-shadow:0 25px 70px rgba(0,0,0,.48);overflow:hidden}.global-notifications__panel header,.global-notifications__panel footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid #2b3138}.global-notifications__panel footer{border-top:1px solid #2b3138;border-bottom:0}.global-notifications__panel header span{display:block;font-size:11px;color:#8f99a6;text-transform:uppercase;letter-spacing:.08em}.global-notifications__panel header strong{font-size:16px}.global-notifications__panel a,.global-notifications__panel button{color:#30d5c8;text-decoration:none;background:none;border:0;cursor:pointer;font:inherit}.global-notifications__list{max-height:430px;overflow:auto}.global-notification-item{display:flex;gap:11px;padding:14px 17px;text-decoration:none;color:#f3f4f6;border-bottom:1px solid rgba(43,49,56,.75)}.global-notification-item:hover{background:rgba(48,213,200,.06)}.global-notification-item.is-unread{background:rgba(48,213,200,.035)}.global-notification-item__dot{width:9px;height:9px;margin-top:6px;border-radius:50%;background:#58616e;flex:0 0 auto}.global-notification-item.is-unread .global-notification-item__dot{background:#30d5c8;box-shadow:0 0 0 4px rgba(48,213,200,.1)}.global-notification-item strong{display:block;font-size:14px}.global-notification-item p{margin:4px 0 7px;color:#aab2bd;font-size:12px;line-height:1.4}.global-notification-item time{color:#717b88;font-size:11px}.notification-loading{padding:28px;text-align:center;color:#8f99a6}.standalone-workspace{min-height:100vh;background:#0f1115;color:#f3f4f6}.standalone-topbar{min-height:88px;padding:18px clamp(20px,4vw,56px);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #2b3138;background:#151a20}.standalone-topbar h1{margin:2px 0 0;font-size:28px}.standalone-content{padding:30px clamp(20px,4vw,56px);max-width:1500px;margin:auto}.back-link{color:#8f99a6;text-decoration:none;font-size:13px}.notice-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px}.notice-filters{display:flex;gap:8px;flex-wrap:wrap}.notice-filter{padding:9px 13px;border:1px solid #2b3138;border-radius:11px;color:#aab2bd;text-decoration:none;background:#171c22}.notice-filter.is-active,.notice-filter:hover{color:#0f1115;background:#30d5c8;border-color:#30d5c8}.notification-page-list{display:grid;gap:10px}.notification-row{display:flex;gap:15px;padding:18px;background:#171c22;border:1px solid #2b3138;border-radius:16px}.notification-row.is-unread{border-color:rgba(48,213,200,.48);background:linear-gradient(90deg,rgba(48,213,200,.07),#171c22 35%)}.notification-row.importance-critical{border-left:4px solid #ef4444}.notification-row.importance-high{border-left:4px solid #f59e0b}.notification-row__icon{width:40px;height:40px;border-radius:12px;background:#222931;display:grid;place-items:center;font-weight:900}.notification-row__body{min-width:0;flex:1}.notification-row__head{display:flex;justify-content:space-between;gap:14px}.notification-row__head time{color:#717b88;font-size:12px;white-space:nowrap}.notification-row p{color:#aab2bd;margin:7px 0 12px}.notification-row__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.notification-row__actions form{margin:0}.text-button{border:0;background:none;color:#8f99a6;cursor:pointer}.text-button--danger{color:#ef7777}.button--small{padding:7px 11px;font-size:12px}.profile-hero{display:flex;gap:20px;align-items:center;padding:24px;border:1px solid #2b3138;border-radius:20px;background:linear-gradient(135deg,#171c22,rgba(48,213,200,.09));margin-bottom:18px}.profile-avatar{width:78px;height:78px;border-radius:22px;background:#30d5c8;color:#0f1115;display:grid;place-items:center;font-size:34px;font-weight:900}.profile-hero h2{margin:0 0 6px;font-size:25px}.profile-hero p,.profile-hero span{margin:0;color:#9da6b2}.profile-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.profile-kpis article{padding:20px;background:#171c22;border:1px solid #2b3138;border-radius:16px}.profile-kpis span{display:block;color:#8f99a6;font-size:13px}.profile-kpis strong{display:block;font-size:30px;margin-top:8px}.profile-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px;margin-bottom:18px}.profile-panel{padding-bottom:20px}.profile-form{padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.profile-form label{display:grid;gap:7px;color:#9da6b2;font-size:13px}.profile-form input{width:100%;padding:12px 13px;border-radius:11px;border:1px solid #303842;background:#11161b;color:#f3f4f6}.profile-form button{justify-self:start}.empty-state{padding:30px;text-align:center;color:#8f99a6}.empty-state p{margin:7px 0 0}.flash{padding:13px 16px;border-radius:12px;margin-bottom:16px}.flash--success{background:rgba(48,213,200,.12);border:1px solid rgba(48,213,200,.35)}.flash--error{background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.35)}
@media(max-width:900px){.profile-kpis{grid-template-columns:repeat(2,1fr)}.profile-grid{grid-template-columns:1fr}.global-notifications{right:12px;top:12px}.standalone-topbar{padding-right:72px}.notice-toolbar{align-items:flex-start;flex-direction:column}.profile-form{grid-template-columns:1fr}}@media(max-width:520px){.profile-kpis{grid-template-columns:1fr 1fr}.notification-row__head{display:block}.notification-row__head time{display:block;margin-top:5px}.profile-hero{align-items:flex-start}.profile-avatar{width:58px;height:58px;border-radius:17px;font-size:25px}}

/* Stage 3.7.1 — existing header bell, no duplicate floating control */
.global-notifications--header{position:relative;right:auto;top:auto;z-index:1200}
.global-notifications--header .global-notifications__bell{width:36px;height:36px;border:1px solid var(--border);border-radius:10px;background:var(--card-soft);box-shadow:none}
.global-notifications--header .global-notifications__bell svg{width:18px}
.global-notifications--header .global-notifications__count{right:-6px;top:-6px}
.global-notifications--header .global-notifications__panel{right:0;top:46px}
@media(max-width:900px){.global-notifications--header{right:auto;top:auto}.standalone-topbar{padding-right:clamp(20px,4vw,56px)}}

/* Stage 3.8 — finance registries */

/* Stage 3.8.2 — Finance UI */
.finance-page{max-width:1680px;margin:0 auto;padding:24px}.finance-hero{min-height:128px;padding:24px 28px;border:1px solid var(--border);border-radius:20px;background:radial-gradient(circle at 90% 15%,rgba(48,213,200,.1),transparent 28rem),linear-gradient(135deg,#171c22,#14191f);box-shadow:0 18px 46px rgba(0,0,0,.18)}.finance-hero p{max-width:720px;margin:7px 0 0;color:var(--muted);line-height:1.5}.finance-switch-link{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 15px;border:1px solid rgba(48,213,200,.3);border-radius:12px;color:var(--primary);background:rgba(48,213,200,.06);font-size:13px;font-weight:800;transition:.18s ease}.finance-switch-link:hover{border-color:var(--primary);background:rgba(48,213,200,.12);transform:translateY(-1px)}.finance-switch-link svg{width:18px;height:18px}.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}.finance-kpi{display:flex;align-items:center;gap:14px;min-height:96px;padding:18px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,rgba(48,213,200,.025),transparent 60%),var(--card);box-shadow:0 12px 30px rgba(0,0,0,.12)}.finance-kpi__icon{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border:1px solid rgba(48,213,200,.22);border-radius:13px;color:var(--primary);background:rgba(48,213,200,.08)}.finance-kpi__icon svg{width:22px;height:22px}.finance-kpi small,.finance-kpi strong{display:block}.finance-kpi small{color:var(--muted);font-size:12px;font-weight:700}.finance-kpi strong{margin-top:4px;font-size:28px;line-height:1}.finance-kpi--waiting .finance-kpi__icon{color:#f5b942;border-color:rgba(245,185,66,.28);background:rgba(245,185,66,.09)}.finance-kpi--paid .finance-kpi__icon{color:#5de19a;border-color:rgba(93,225,154,.28);background:rgba(93,225,154,.09)}.finance-kpi--revision .finance-kpi__icon{color:#ff7b7b;border-color:rgba(255,107,107,.3);background:rgba(255,107,107,.09)}.finance-toolbar{margin-bottom:16px}.finance-toolbar--modern{padding:12px;overflow:visible}.finance-toolbar form{display:grid;grid-template-columns:minmax(280px,1fr) 240px auto auto;gap:10px;align-items:center}.finance-search{position:relative;display:block}.finance-search__icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#6f7a87;pointer-events:none}.finance-search__icon svg{width:18px;height:18px}.finance-toolbar input,.finance-toolbar select,.finance-action input,.finance-action textarea{width:100%;min-height:44px;padding:10px 13px;color:var(--text);border:1px solid var(--border);border-radius:11px;outline:none;background:#11161b}.finance-search input{padding-left:42px}.finance-toolbar input:focus,.finance-toolbar select:focus,.finance-action input:focus,.finance-action textarea:focus{border-color:rgba(48,213,200,.7);box-shadow:0 0 0 3px rgba(48,213,200,.1)}.finance-find-button{min-height:44px;padding:0 22px}.finance-reset{padding:0 8px;color:var(--muted);font-size:12px;font-weight:800}.finance-reset:hover{color:var(--primary)}.finance-register{border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:0 16px 40px rgba(0,0,0,.14);overflow:visible}.finance-register__header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 20px;border-bottom:1px solid var(--border)}.finance-register__header h2{margin:0;font-size:18px}.finance-register__header p{margin:5px 0 0;color:var(--muted);font-size:12px}.finance-register__count{display:grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border:1px solid rgba(48,213,200,.25);border-radius:999px;color:var(--primary);background:rgba(48,213,200,.08);font-size:12px;font-weight:900}.payment-list{display:grid}.payment-card{position:relative;display:grid;grid-template-columns:minmax(150px,1.05fr) minmax(190px,1.25fr) minmax(150px,.85fr) minmax(170px,1fr) minmax(150px,.95fr) minmax(180px,1fr) 44px;gap:18px;align-items:center;min-height:112px;padding:18px 16px 18px 22px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.006);transition:background .18s ease}.payment-card:last-child{border-bottom:0;border-radius:0 0 18px 18px}.payment-card:hover{background:rgba(48,213,200,.025)}.payment-card__accent{position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:0 4px 4px 0;background:#66717e}.payment-card--accounting_payment .payment-card__accent,.payment-card--awaiting_funds_confirmation .payment-card__accent{background:#f5b942}.payment-card--paid .payment-card__accent,.payment-card--payment_order_sent .payment-card__accent,.payment-card--funds_received .payment-card__accent,.payment-card--delivery_info_submitted .payment-card__accent{background:#5de19a}.payment-card--accounting_revision .payment-card__accent{background:#ff6b6b}.payment-card>div{min-width:0}.payment-card__number{display:inline-flex;margin-bottom:6px;color:var(--text);font-size:16px;font-weight:900}.payment-card__number:hover{color:var(--primary)}.payment-card__title,.payment-card__supplier>strong,.payment-card__amount>strong,.payment-card__timeline>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.payment-card__amount>strong{font-size:17px}.payment-card__label{display:block;margin-bottom:7px;color:#74808d;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.payment-card__meta{display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;color:#7f8a96;font-size:11px;line-height:1.4}.finance-status{display:inline-flex!important;align-items:center;max-width:100%;min-height:29px;padding:0 10px;border:1px solid rgba(255,255,255,.08);border-radius:999px;color:#cbd2da;background:#242b33;font-size:11px;font-weight:850;white-space:nowrap}.finance-status--accounting_payment,.finance-status--waiting_document,.finance-status--awaiting_funds_confirmation{color:#ffd977;border-color:rgba(245,185,66,.28);background:rgba(245,185,66,.1)}.finance-status--paid,.finance-status--payment_order_sent,.finance-status--funds_received,.finance-status--delivery_info_submitted,.finance-status--uploaded,.finance-status--original_received,.finance-status--sent_to_accounting{color:#78e8ae;border-color:rgba(93,225,154,.28);background:rgba(93,225,154,.1)}.finance-status--accounting_revision,.finance-status--revision{color:#ff9999;border-color:rgba(255,107,107,.3);background:rgba(255,107,107,.1)}.payment-file-button{width:100%;display:flex;align-items:center;gap:10px;padding:0;color:var(--text);border:0;background:transparent;text-align:left}.payment-file-button__icon{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border:1px solid rgba(48,213,200,.22);border-radius:11px;color:var(--primary);background:rgba(48,213,200,.07)}.payment-file-button__icon svg{width:19px;height:19px}.payment-file-button strong,.payment-file-button small{display:block}.payment-file-button strong{font-size:12px}.payment-file-button small{margin-top:3px;color:#74808d;font-size:10px}.payment-file-button:hover strong{color:var(--primary)}.payment-document-empty{display:inline-flex;padding:8px 10px;border:1px dashed #39424c;border-radius:10px;color:#7c8794;font-size:11px}.payment-card__actions{display:flex;justify-content:flex-end}.payment-open-request,.finance-action--menu>summary{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);border-radius:11px;color:var(--muted);background:#151a20;transition:.18s ease}.payment-open-request:hover,.finance-action--menu>summary:hover{color:var(--primary);border-color:rgba(48,213,200,.4);background:rgba(48,213,200,.06)}.payment-open-request svg,.finance-action--menu>summary svg{width:18px;height:18px}.finance-action--menu{position:relative;min-width:auto}.finance-action--menu>summary{list-style:none;cursor:pointer}.finance-action--menu>summary::-webkit-details-marker{display:none}.finance-action--menu form{position:absolute;right:0;top:46px;z-index:20;width:290px;display:grid;gap:10px;margin:0;padding:15px;border:1px solid var(--border);border-radius:14px;background:#171c22;box-shadow:0 22px 60px rgba(0,0,0,.45)}.finance-action--menu form strong{font-size:14px}.finance-action label{display:grid;gap:6px;color:var(--muted);font-size:11px}.finance-action .finance-check{display:flex;align-items:center;gap:7px}.finance-action .finance-check input{min-height:auto;width:auto}.finance-warning{color:#f5b942!important;font-weight:800}.finance-empty{padding:56px 20px}.finance-table-wrap{overflow:auto}.finance-table{width:100%;border-collapse:collapse;min-width:1100px}.finance-table th,.finance-table td{padding:14px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.finance-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#788390;background:#14191f;position:sticky;top:0}.finance-table td{color:var(--text)}.finance-table td strong,.finance-table td span,.finance-table td small{display:block}.finance-table td small{margin-top:4px;color:#7b8491}.flash{padding:13px 16px;border-radius:12px;margin:14px 0}.flash--success{color:#8ff0bf;border:1px solid rgba(93,225,154,.32);background:rgba(93,225,154,.1)}.flash--error{color:#ffa1a1;border:1px solid rgba(255,107,107,.34);background:rgba(255,107,107,.1)}
@media(max-width:1280px){.payment-card{grid-template-columns:1fr 1.2fr .85fr 1fr .95fr 44px}.payment-card__document{grid-column:2/4}.payment-card__actions{grid-column:6;grid-row:1/3}.finance-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.finance-page{padding:14px}.finance-hero{align-items:flex-start;flex-direction:column}.finance-toolbar form{grid-template-columns:1fr 1fr}.finance-search{grid-column:1/-1}.payment-card{grid-template-columns:1fr 1fr 44px;padding:18px 14px 18px 20px}.payment-card__amount,.payment-card__timeline,.payment-card__status,.payment-card__document{grid-column:auto}.payment-card__actions{grid-column:3;grid-row:1}.payment-card__document{grid-column:1/3}.finance-action--menu form{right:0}.finance-switch-link{align-self:flex-start}}
@media(max-width:620px){.finance-kpis{grid-template-columns:1fr 1fr;gap:10px}.finance-kpi{min-height:82px;padding:14px}.finance-kpi__icon{width:40px;height:40px}.finance-kpi strong{font-size:23px}.finance-toolbar form{grid-template-columns:1fr}.finance-search{grid-column:auto}.payment-card{grid-template-columns:1fr 42px;gap:14px}.payment-card__request,.payment-card__supplier,.payment-card__amount,.payment-card__timeline,.payment-card__status,.payment-card__document{grid-column:1}.payment-card__actions{grid-column:2;grid-row:1}.payment-card__title,.payment-card__supplier>strong,.payment-card__amount>strong,.payment-card__timeline>strong{white-space:normal}.finance-register__header{align-items:flex-start}.finance-action--menu form{position:fixed;left:14px;right:14px;top:auto;bottom:14px;width:auto}.finance-switch-link{width:100%;justify-content:center}}

/* Stage 3.8.3 — Dashboard request cards / list switcher */
.dashboard-requests__header{align-items:center}.dashboard-requests__actions{display:flex;align-items:center;gap:14px}.view-switcher{display:inline-flex;padding:3px;border:1px solid var(--border);border-radius:10px;background:rgba(15,17,21,.3)}.view-switcher__button{display:grid;place-items:center;width:31px;height:29px;padding:0;border:0;border-radius:7px;color:var(--muted);background:transparent;cursor:pointer;transition:.18s ease}.view-switcher__button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.view-switcher__button:hover{color:var(--primary)}.view-switcher__button.is-active{color:#071211;background:var(--primary);box-shadow:0 4px 12px rgba(48,213,200,.15)}
.dashboard-request-collection{padding:16px}.dashboard-request-collection.is-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-request-card{position:relative;min-width:0;display:flex;flex-direction:column;gap:11px;padding:15px 16px 14px;border:1px solid var(--border);border-radius:14px;color:var(--text);background:linear-gradient(145deg,rgba(255,255,255,.018),rgba(255,255,255,.004));overflow:hidden;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.dashboard-request-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--primary)}.dashboard-request-card.status-accent--approve:before{background:#f5b942}.dashboard-request-card.status-accent--done:before{background:#5de19a}.dashboard-request-card.status-accent--cancelled:before,.dashboard-request-card.is-overdue:before{background:#ef6a5b}.dashboard-request-card:hover{transform:translateY(-2px);border-color:rgba(48,213,200,.35);background:rgba(48,213,200,.025);box-shadow:0 12px 28px rgba(0,0,0,.16)}.dashboard-request-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.dashboard-request-card__identity{min-width:0}.dashboard-request-card__identity strong,.dashboard-request-card__identity span{display:block}.dashboard-request-card__identity strong{font-size:13px;letter-spacing:.01em}.dashboard-request-card__identity span{margin-top:3px;color:var(--muted);font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.dashboard-request-card h3{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:38px;margin:0;color:var(--text);font-size:14px;line-height:1.35}.request-status{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border:1px solid rgba(48,213,200,.24);border-radius:999px;color:#55ded2;background:rgba(48,213,200,.08);font-size:8px;font-weight:900;white-space:nowrap}.request-status--approve{color:#ffd477;border-color:rgba(245,185,66,.24);background:rgba(245,185,66,.08)}.request-status--done{color:#72e6a6;border-color:rgba(93,225,154,.24);background:rgba(93,225,154,.08)}.request-status--cancelled{color:#ff9d93;border-color:rgba(239,106,91,.24);background:rgba(239,106,91,.08)}.dashboard-request-card__meta{display:flex;flex-wrap:wrap;gap:7px 12px;min-height:18px}.dashboard-request-card__meta span{min-width:0;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px}.dashboard-request-card__meta span:first-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-request-card__meta svg{width:13px;height:13px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dashboard-request-card__footer{display:flex;align-items:flex-end;gap:16px;margin-top:auto;padding-top:10px;border-top:1px solid rgba(43,49,56,.75)}.dashboard-request-card__footer>div small,.dashboard-request-card__footer>div strong{display:block}.dashboard-request-card__footer>div small{margin-bottom:3px;color:#697481;font-size:8px;text-transform:uppercase;letter-spacing:.05em}.dashboard-request-card__footer>div strong{font-size:10px}.dashboard-request-card__footer .is-danger small,.dashboard-request-card__footer .is-danger strong{color:#ff9186}.request-priority{align-self:center;padding:4px 7px;border-radius:999px;color:#ffd477;background:rgba(245,185,66,.09);font-size:8px;font-weight:900;text-transform:uppercase}.request-priority--urgent{color:#ff9388;background:rgba(239,106,91,.1)}.dashboard-request-card__open{margin-left:auto;color:var(--primary);font-size:9px;font-weight:900;white-space:nowrap}.dashboard-request-card__open b{margin-left:3px;font-size:12px}
.dashboard-request-collection.is-list{display:grid;gap:0;padding:0}.dashboard-request-collection.is-list .dashboard-request-card{display:grid;grid-template-columns:minmax(105px,.7fr) minmax(180px,1.8fr) minmax(160px,1.2fr) auto;align-items:center;gap:14px;padding:13px 16px;border-width:0 0 1px;border-radius:0;background:transparent;box-shadow:none;transform:none}.dashboard-request-collection.is-list .dashboard-request-card:last-child{border-bottom:0}.dashboard-request-collection.is-list .dashboard-request-card:before{top:10px;bottom:10px}.dashboard-request-collection.is-list .dashboard-request-card__top{display:block}.dashboard-request-collection.is-list .request-status{margin-top:7px}.dashboard-request-collection.is-list .dashboard-request-card h3{min-height:0;-webkit-line-clamp:1;font-size:12px}.dashboard-request-collection.is-list .dashboard-request-card__meta{align-items:center;flex-wrap:nowrap}.dashboard-request-collection.is-list .dashboard-request-card__meta span:first-child{max-width:180px}.dashboard-request-collection.is-list .dashboard-request-card__footer{margin:0;padding:0;border:0;justify-content:flex-end}.dashboard-request-collection.is-list .request-priority{display:none}
.stage-2-light-center .view-switcher{background:#f3f0e9}.stage-2-light-center .dashboard-request-card{border-color:#e9e3d9;background:linear-gradient(145deg,#fff,#fbf9f5);color:#1d252b}.stage-2-light-center .dashboard-request-card:hover{border-color:#94d9d5;background:#fff;box-shadow:0 12px 28px rgba(34,58,60,.09)}.stage-2-light-center .dashboard-request-card h3,.stage-2-light-center .dashboard-request-card__identity strong,.stage-2-light-center .dashboard-request-card__footer>div strong{color:#1f272d}.stage-2-light-center .dashboard-request-card__identity span,.stage-2-light-center .dashboard-request-card__meta span,.stage-2-light-center .dashboard-request-card__footer>div small{color:#748087}.stage-2-light-center .dashboard-request-card__footer{border-color:#eee8df}
@media(max-width:900px){.dashboard-request-collection.is-cards{grid-template-columns:1fr}.dashboard-request-collection.is-list .dashboard-request-card{grid-template-columns:minmax(95px,.7fr) minmax(160px,1.5fr) auto}.dashboard-request-collection.is-list .dashboard-request-card__meta{display:none}}
@media(max-width:620px){.dashboard-requests__header{align-items:flex-start;flex-direction:column}.dashboard-requests__actions{width:100%;justify-content:space-between}.dashboard-request-collection{padding:12px}.dashboard-request-card{padding:14px}.dashboard-request-card__footer{gap:12px;flex-wrap:wrap}.dashboard-request-card__open{margin-left:0}.dashboard-request-collection.is-list{padding:0}.dashboard-request-collection.is-list .dashboard-request-card{grid-template-columns:1fr auto;gap:8px 12px;padding:13px 14px}.dashboard-request-collection.is-list .dashboard-request-card h3{grid-column:1/-1;grid-row:2}.dashboard-request-collection.is-list .dashboard-request-card__footer{grid-column:1/-1;grid-row:3;justify-content:flex-start}.dashboard-request-collection.is-list .dashboard-request-card__footer>div:nth-child(2){display:none}.dashboard-request-collection.is-list .dashboard-request-card__open{margin-left:auto}}


/* Stage email 2 — per-request supplier email */
.supplier-picker__email{display:grid;gap:5px;margin-top:8px;cursor:default}.supplier-picker__email span{font-size:11px;color:#596875}.supplier-picker__email input{width:100%;margin:0;padding:9px 10px;border:1px solid #cfd8df;border-radius:9px;background:#fff}.supplier-picker__item:has(input[type=checkbox]:checked){border-color:#27aaa8;background:#f2fbfa}.supplier-email-editor{position:relative}.supplier-email-editor>summary{list-style:none;cursor:pointer}.supplier-email-editor>summary::-webkit-details-marker{display:none}.supplier-email-editor[open] form{display:grid;gap:10px;position:absolute;z-index:20;right:0;top:calc(100% + 8px);width:min(340px,85vw);padding:14px;border:1px solid #d7e0e5;border-radius:14px;background:#fff;box-shadow:0 16px 40px rgba(20,45,55,.16)}.supplier-email-editor form label{display:grid;gap:6px}.supplier-email-editor form label span{font-size:12px;color:#52616c}.supplier-email-editor form input{width:100%}.supplier-email-editor form small{color:#65737e}@media(max-width:700px){.supplier-email-editor[open] form{position:fixed;left:16px;right:16px;top:20%;width:auto}}


/* Stage 4.0.6 — impersonation */
.impersonation-banner{position:sticky;top:0;z-index:9999;display:flex;align-items:center;justify-content:center;gap:16px;padding:10px 16px;background:#0e7490;color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.25)}
.impersonation-banner form{margin:0}.impersonation-banner button{border:1px solid rgba(255,255,255,.7);background:#fff;color:#0f172a;border-radius:8px;padding:7px 12px;font-weight:700;cursor:pointer}
@media(max-width:720px){.impersonation-banner{align-items:flex-start;flex-direction:column;gap:8px}}

/* Stage 4.2 — imported legacy summary */
.legacy-center{min-width:0;width:100%}.legacy-stats{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;margin-bottom:16px}.legacy-stats>div{background:#fff;border:1px solid #dfe6e9;border-radius:14px;padding:16px;display:flex;flex-direction:column}.legacy-stats strong{font-size:26px;color:#0f1115}.legacy-stats span{color:#667079}.legacy-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.legacy-filters input{min-width:320px;flex:1}.legacy-filters input,.legacy-filters select,.legacy-table input,.legacy-table textarea{border:1px solid #cfd8dc;border-radius:8px;padding:8px;background:#fff;color:#111;box-sizing:border-box}.legacy-table-wrap{overflow:auto;max-height:calc(100vh - 290px)}.legacy-table{border-collapse:separate;border-spacing:0;min-width:2100px;width:100%;font-size:12px}.legacy-table th{position:sticky;top:0;z-index:2;background:#111820;color:#fff;padding:10px;text-align:left}.legacy-table td{padding:8px;border-bottom:1px solid #e6ecef;vertical-align:top;background:#fff}.legacy-table textarea{width:180px;resize:vertical}.legacy-table input{width:150px}.legacy-table td:nth-child(5){min-width:260px}.legacy-table td:nth-child(10){min-width:240px}.legacy-continuation td{background:#f7fafb}.legacy-urgent td:first-child{border-left:4px solid #00b7c3}.legacy-org{display:block;font-weight:800}.legacy-table small{display:block;color:#00a6b1}.legacy-save{white-space:nowrap;padding:8px 10px}@media(max-width:800px){.legacy-stats{grid-template-columns:repeat(2,1fr)}.legacy-filters input{min-width:100%}.legacy-table-wrap{max-height:none}}

/* Stage 4.2.1 — manual import from the «СВОДНАЯ» worksheet */
.legacy-import-panel{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:16px;padding:18px;border:1px solid #cfe9eb;background:linear-gradient(135deg,#fff 0%,#f4fcfd 100%)}
.legacy-import-copy{display:flex;flex-direction:column;gap:5px;min-width:260px}.legacy-import-copy strong{font-size:18px;color:#111820}.legacy-import-copy span{max-width:620px;color:#667079;line-height:1.45}
.legacy-import-form{display:flex;align-items:end;justify-content:flex-end;gap:12px;flex-wrap:wrap}.legacy-file-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#34434b}.legacy-file-field input{max-width:310px;border:1px solid #cfd8dc;border-radius:9px;padding:8px;background:#fff}.legacy-clear-check{display:flex;align-items:center;gap:8px;max-width:270px;font-size:12px;color:#47545b}.legacy-clear-check input{width:17px;height:17px;accent-color:#00b7c3}.legacy-import-button{white-space:nowrap}
@media(max-width:1000px){.legacy-import-panel{align-items:stretch;flex-direction:column}.legacy-import-form{justify-content:flex-start;align-items:stretch}.legacy-file-field input{max-width:none;width:100%}}

/* Stage 4.2.2 — карточное отображение импортированных заявок */
.legacy-page-head{margin-bottom:16px}.legacy-page-head h2{margin:0 0 5px}.legacy-page-head p{margin:0;color:#667079}
.legacy-filters.panel{display:grid;grid-template-columns:minmax(280px,1fr) 190px 170px auto auto;align-items:end;gap:12px;padding:15px;margin-bottom:18px}.legacy-filters label,.legacy-search-field{display:flex;flex-direction:column;gap:6px}.legacy-filters label>span,.legacy-search-field>span{font-size:12px;font-weight:800;color:#526069}.legacy-filters input,.legacy-filters select{width:100%;min-width:0;height:42px}.legacy-filters .primary-button,.legacy-filters .secondary-button{height:42px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.legacy-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-bottom:28px}.legacy-request-card{position:relative;background:#fff;border:1px solid #dde5e8;border-radius:16px;box-shadow:0 8px 24px rgba(17,24,32,.06);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.legacy-request-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(17,24,32,.1);border-color:#c7d7dc}.legacy-request-card.is-urgent{border-left:5px solid #00b7c3}.legacy-request-card.is-continuation{background:#fbfdfd}.legacy-request-card>form{height:100%;display:flex;flex-direction:column;padding:18px}.legacy-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.legacy-card-number{display:flex;flex-direction:column;gap:2px}.legacy-card-number span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7c8990;font-weight:800}.legacy-card-number strong{font-size:21px;color:#111820}.legacy-card-badges{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.legacy-badge{display:inline-flex;align-items:center;min-height:25px;padding:4px 8px;border-radius:999px;background:#eef3f5;color:#536169;font-size:11px;font-weight:800}.legacy-badge--org{background:#111820;color:#fff}.legacy-badge--urgent{background:#dff9fb;color:#007b84}.legacy-card-title{padding:15px 0 12px}.legacy-card-title h3{font-size:17px;line-height:1.35;color:#151a1e;margin:0}.legacy-card-title p{font-size:13px;line-height:1.45;color:#5e6b72;margin:7px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.legacy-card-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #edf1f2;border-bottom:1px solid #edf1f2}.legacy-status-pill{display:inline-flex;align-items:center;max-width:70%;min-height:29px;padding:5px 10px;border-radius:9px;background:#eaf8f9;color:#08737a;font-size:12px;font-weight:800;line-height:1.3}.legacy-card-price{font-size:16px;color:#111820;white-space:nowrap}.legacy-card-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 15px;padding:15px 0}.legacy-card-info>div{min-width:0}.legacy-card-info span,.legacy-card-line span,.legacy-edit-grid label>span,.legacy-doc-box>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#7b878d;font-weight:800;margin-bottom:4px}.legacy-card-info strong{display:block;color:#273138;font-size:13px;line-height:1.35;overflow-wrap:anywhere}.legacy-card-line{padding:10px 12px;border-radius:10px;background:#f5f8f9;margin-bottom:12px}.legacy-card-line strong{font-size:12px;color:#344148;overflow-wrap:anywhere}.legacy-card-details{margin-top:auto;border-top:1px solid #e7edef}.legacy-card-details summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;padding:13px 1px 0;color:#087f88;font-size:13px;font-weight:800}.legacy-card-details summary::-webkit-details-marker{display:none}.legacy-card-details summary span{font-size:18px;transition:transform .2s ease}.legacy-card-details[open] summary span{transform:rotate(180deg)}.legacy-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:15px}.legacy-edit-grid label{display:flex;flex-direction:column}.legacy-edit-grid input,.legacy-edit-grid textarea{width:100%;box-sizing:border-box;border:1px solid #ccd7db;border-radius:9px;padding:9px 10px;background:#fff;color:#171c20;font:inherit}.legacy-edit-grid textarea{resize:vertical;min-height:74px}.legacy-edit-wide{grid-column:1/-1}.legacy-doc-box{border:1px solid #e0e7e9;border-radius:10px;padding:10px;background:#f8fafb}.legacy-doc-box p{margin:3px 0;font-size:12px;line-height:1.4;color:#4d5a61}.legacy-card-actions{display:flex;justify-content:flex-end;padding-top:13px}.legacy-card-actions .primary-button{min-width:180px}
@media(max-width:1200px){.legacy-card-grid{grid-template-columns:1fr}.legacy-filters.panel{grid-template-columns:minmax(250px,1fr) 180px 160px}.legacy-filters .primary-button,.legacy-filters .secondary-button{width:100%}}
@media(max-width:760px){.legacy-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-filters.panel{grid-template-columns:1fr}.legacy-card-grid{gap:12px}.legacy-request-card>form{padding:14px}.legacy-card-head{flex-direction:column}.legacy-card-badges{justify-content:flex-start}.legacy-card-info{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-edit-grid{grid-template-columns:1fr}.legacy-edit-wide{grid-column:auto}.legacy-card-status-row{align-items:flex-start;flex-direction:column}.legacy-status-pill{max-width:100%}.legacy-card-actions .primary-button{width:100%}}

/* Stage 4.2.3: legacy status sorting and dashboard */
.legacy-filters.panel{grid-template-columns:minmax(250px,1fr) 170px 155px 190px auto auto}
.dashboard-legacy-note{display:flex;align-items:center;gap:10px;margin:0 0 14px;padding:10px 12px;border:1px solid #cfe9eb;border-radius:10px;background:#f2fbfc;color:#526069;font-size:13px}.dashboard-legacy-note strong{flex:none;padding:4px 8px;border-radius:999px;background:#111820;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.dashboard-legacy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-legacy-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:14px;border:1px solid #dbe5e8;border-left:4px solid #00b7c3;border-radius:12px;background:#fff;color:inherit;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.dashboard-legacy-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(17,24,32,.09)}.dashboard-legacy-card__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.dashboard-legacy-card__top>strong{font-size:16px;color:#111820}.dashboard-legacy-card__top>span{padding:4px 7px;border-radius:999px;background:#e8f8f9;color:#08737a;font-size:10px;font-weight:900;text-transform:uppercase}.dashboard-legacy-card h3{margin:0;color:#20282d;font-size:14px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-legacy-card__status{min-height:28px;padding:6px 8px;border-radius:8px;background:#f2f5f6;color:#4d5b62;font-size:11px;font-weight:800;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dashboard-legacy-card__meta{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-top:auto;color:#6b777d;font-size:12px}.dashboard-legacy-card__meta strong{color:#111820;white-space:nowrap}
@media(max-width:1100px){.legacy-filters.panel{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-legacy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.legacy-filters.panel,.dashboard-legacy-grid{grid-template-columns:1fr}.dashboard-legacy-note{align-items:flex-start;flex-direction:column}}

/* Stage 4.2.6 — independent position, avatars and profile navigation */
.user-avatar,.profile-avatar{overflow:hidden;flex:none}.user-avatar.has-image,.profile-avatar.has-image{padding:0}.user-avatar img,.profile-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.profile-summary{color:inherit;text-decoration:none}.profile-summary:hover strong{color:#00a6b1}.profile-summary--compact{min-width:0}.profile-summary--compact span:last-child{max-width:180px}.profile-summary--compact strong,.profile-summary--compact small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-avatar-editor{display:flex;align-items:flex-start;gap:22px}.profile-avatar--editor{width:112px;height:112px;font-size:34px}.profile-avatar-editor>div{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:10px}.profile-avatar-form{display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%}.profile-avatar-form label{display:flex;flex-direction:column;gap:7px;width:100%;font-weight:700}.profile-avatar-form input[type=file]{width:100%;padding:10px;border:1px dashed #bfcdd2;border-radius:10px;background:#f8fbfc}.profile-avatar-form small,.profile-form label>small{display:block;margin:2px 0 5px;color:#718087;font-size:11px;font-weight:500;line-height:1.4}@media(max-width:720px){.profile-avatar-editor{flex-direction:column}.profile-summary--compact span:last-child{display:none}}

/* Stage 4.2.7 — executive reports */
.reports-page{background:#eef2f5;color:#172027}.report-shell{max-width:1500px;margin:0 auto;padding:30px}.report-topbar{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px}.report-topbar h1{margin:4px 0 6px;font-size:32px}.report-topbar p{margin:0;color:#68757d}.report-kicker{display:block;color:#00aab5;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.report-back{display:inline-block;margin-bottom:15px;color:#53616a;text-decoration:none}.report-user{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dde5e8;border-radius:16px;padding:10px 12px}.report-user div{display:flex;flex-direction:column}.report-user small{color:#77838a}.report-user>a{margin-left:12px;color:#009aa5;text-decoration:none;font-weight:700}.report-filter{display:flex;align-items:flex-end;gap:12px;background:#fff;border:1px solid #dde5e8;border-radius:18px;padding:16px;margin-bottom:18px}.report-filter label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:800;color:#68757d}.report-filter select{min-width:220px;border:1px solid #cfdade;border-radius:10px;padding:10px 12px;background:#fff;color:#172027}.report-filter button{border:0;border-radius:10px;padding:11px 18px;background:#00aeb9;color:white;font-weight:800;cursor:pointer}.report-filter>a{padding:10px;color:#66747c;text-decoration:none}.report-kpis{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:14px;margin-bottom:18px}.report-kpi{background:#fff;border:1px solid #dde5e8;border-radius:18px;padding:18px;display:flex;flex-direction:column;min-height:116px}.report-kpi span{color:#68757d;font-size:13px;font-weight:700}.report-kpi strong{font-size:28px;margin:9px 0 6px}.report-kpi small{color:#7b878d}.report-kpi--accent{background:#152027;color:#fff;border-color:#152027}.report-kpi--accent span,.report-kpi--accent small{color:#b9c6cb}.report-kpi--accent strong{color:#63dfe5}.report-kpi--warning{border-color:#efc37a;background:#fffaf0}.report-kpi--warning strong{color:#b8750b}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.report-grid--wide{grid-template-columns:2fr 1fr}.report-panel{background:#fff;border:1px solid #dde5e8;border-radius:20px;padding:20px;min-width:0}.report-panel--span2{min-height:360px}.report-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:20px}.report-panel header span{font-size:11px;color:#75828a;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.report-panel h2{font-size:19px;margin:3px 0 0}.report-panel header>a{color:#009aa5;text-decoration:none;font-weight:700;font-size:13px}.chart-legend{font-size:12px;color:#6a767d;display:flex;gap:8px;align-items:center}.chart-legend i,.donut-details i{width:9px;height:9px;border-radius:3px;display:inline-block}.legend-new{background:#00b7c3}.legend-old{background:#8e9da4}.stack-chart{height:280px;display:grid;grid-template-columns:repeat(12,minmax(34px,1fr));gap:9px;align-items:end;border-bottom:1px solid #dce4e7;padding-top:30px}.stack-chart__col{height:100%;display:flex;flex-direction:column;justify-content:flex-end;text-align:center;min-width:0}.stack-chart__value{font-size:10px;color:#819096;height:28px;writing-mode:vertical-rl;transform:rotate(180deg);margin:auto auto 4px;overflow:hidden}.stack-chart__bars{height:190px;display:flex;align-items:flex-end;justify-content:center;gap:3px}.stack-chart__bars i{width:12px;min-height:2px;border-radius:5px 5px 0 0}.bar-new{background:#00b7c3}.bar-old{background:#8e9da4}.stack-chart__col>span{font-size:10px;color:#738087;padding-top:7px;white-space:nowrap}.donut{--p:50;width:180px;height:180px;margin:8px auto 24px;border-radius:50%;background:conic-gradient(#00b7c3 calc(var(--p)*1%),#8e9da4 0);display:grid;place-items:center}.donut:before{content:"";width:122px;height:122px;background:#fff;border-radius:50%;grid-area:1/1}.donut div{grid-area:1/1;z-index:1;text-align:center}.donut strong{display:block;font-size:30px}.donut span{color:#738087;font-size:12px}.donut-details p{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;margin:10px 0}.donut-details strong{font-size:13px}.rank-list>div,.amount-bars>div{margin-bottom:15px}.rank-list p,.amount-bars p{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 7px}.rank-list p span,.amount-bars p>span{min-width:0}.rank-list p strong,.amount-bars p>strong{white-space:nowrap}.rank-list i,.amount-bars i{display:block;height:8px;background:#edf1f3;border-radius:8px;overflow:hidden}.rank-list i b,.amount-bars i b{display:block;height:100%;background:#00b7c3;border-radius:8px}.rank-list--old i b{background:#8e9da4}.old-badge{background:#edf1f3;padding:5px 9px;border-radius:20px}.amount-bars p span{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.amount-bars small{display:block;width:100%;color:#849097;margin-left:0}.amount-bars a{color:#172027;text-decoration:none}.amount-bars i b{background:#4f6b75}.rank-no{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:7px;background:#e6f8f9;color:#008d96;font-size:11px}.buyer-table__head,.buyer-table>div{display:grid;grid-template-columns:1fr 70px 80px;gap:10px;align-items:center;border-bottom:1px solid #edf1f3;padding:11px 4px}.buyer-table__head{color:#7b878e;font-size:11px;text-transform:uppercase;font-weight:800}.buyer-table>div span,.buyer-table>div b{text-align:right}.buyer-table>div b{color:#b8750b}.report-panel--risk{border-color:#ecd4aa}.risk-count{background:#fff1d8;color:#a56500;border-radius:20px;padding:5px 10px}.risk-list a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #edf1f3;color:#172027;text-decoration:none}.risk-list div{min-width:0}.risk-list strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.risk-list small{color:#7b878e}.risk-list>a>b{color:#b96d00;font-size:12px}.risk-type{background:#e4f8f9!important;color:#008d96!important;padding:4px 6px;border-radius:6px;letter-spacing:0!important}.risk-type--old{background:#edf0f1!important;color:#68757c!important}.report-empty{padding:30px;text-align:center;color:#7d898f}.report-note{background:#e3f6f7;border:1px solid #bde6e8;border-radius:16px;padding:15px 18px;color:#3e5c61}.report-note strong{color:#087b82}@media(max-width:1100px){.report-kpis{grid-template-columns:repeat(2,1fr)}.report-kpi--accent{grid-column:span 2}.report-grid,.report-grid--wide{grid-template-columns:1fr}.report-panel--span2{min-height:auto}}@media(max-width:700px){.report-shell{padding:16px}.report-topbar{display:block}.report-user{margin-top:16px}.report-filter{align-items:stretch;flex-direction:column}.report-filter select{width:100%;min-width:0}.report-kpis{grid-template-columns:1fr}.report-kpi--accent{grid-column:auto}.stack-chart{gap:3px;overflow:hidden}.stack-chart__bars i{width:7px}.stack-chart__value{display:none}.chart-legend{display:none}.report-panel{padding:15px}.amount-bars p{align-items:flex-start;flex-direction:column}.amount-bars p>strong{align-self:flex-end}.report-user>a{margin-left:auto}}

/* Stage 4.2.8: human-readable dashboard activity */
.activity-list--human{padding:4px 18px}
.activity-item--human{grid-template-columns:42px minmax(0,1fr);gap:12px;color:inherit;transition:background .18s ease,transform .18s ease}
.activity-item--human:hover{margin:0 -10px;padding-left:10px;padding-right:10px;border-radius:12px;background:rgba(0,183,195,.055);transform:translateX(2px)}
.activity-avatar{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(0,183,195,.28);border-radius:50%;color:#00b7c3;background:rgba(0,183,195,.09);font-size:11px;font-weight:900;letter-spacing:.02em}
.activity-item__body{min-width:0}
.activity-item__headline{display:flex;align-items:flex-start;gap:7px}
.activity-action-icon{flex:0 0 auto;font-size:14px;line-height:1.2}
.activity-item--human strong{margin:0;color:var(--text);font-size:11px;line-height:1.45}
.activity-item--human p{margin:5px 0 7px;overflow:hidden;color:var(--muted);font-size:10px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}
.activity-item--human time{color:#68727f;font-size:9px}
@media(max-width:560px){.activity-list--human{padding-left:14px;padding-right:14px}.activity-item--human{grid-template-columns:38px minmax(0,1fr)}.activity-avatar{width:38px;height:38px}.activity-item--human p{white-space:normal}}

/* Stage 4.2.9 — super administrator request management */
.request-admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.request-admin-actions form,.request-admin-toolbar form{margin:0}.request-delete-button{border:1px solid #d94b55;background:transparent;color:#c72f3a;border-radius:9px;padding:8px 12px;font:inherit;font-weight:700;cursor:pointer}.request-delete-button:hover{background:#fff0f1}.request-admin-toolbar{display:flex;justify-content:flex-end;gap:12px;align-items:center;margin:0 0 18px}.request-delete-button--large{padding:11px 16px}.request-edit-form .download-request-button{display:flex;align-items:center;justify-content:center;text-decoration:none;margin-top:10px}.request-edit-form .summary-help{line-height:1.55}@media(max-width:760px){.request-admin-toolbar{align-items:stretch;flex-direction:column}.request-admin-toolbar .primary-button,.request-admin-toolbar form,.request-admin-toolbar button{width:100%}.request-admin-actions{justify-content:flex-start}}

/* Stage 4.2.10: real user photos in dashboard activity with safe fallback */
.user-avatar__fallback{display:none}
.has-image>.user-avatar__fallback{display:none}
.activity-avatar{position:relative;overflow:hidden;flex:none}
.activity-avatar.has-image{padding:0}
.activity-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.activity-avatar:not(.has-image)>.user-avatar__fallback{display:grid;place-items:center;width:100%;height:100%}

/* Stage 4.3.1 — structured corporate notifications */
.notification-row--structured{align-items:flex-start}.notification-row--structured .notification-row__icon{background:rgba(0,183,195,.12);color:#00b7c3;font-size:19px}.notification-actor{display:flex;align-items:center;gap:10px;margin:13px 0 8px}.notification-actor__avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#00b7c3;color:#0f1115;font-weight:900;flex:0 0 auto}.notification-actor strong,.notification-actor small{display:block}.notification-actor small{margin-top:2px;color:#77818d;font-size:11px}.notification-action-text{color:#c8ced6;line-height:1.45;margin:4px 0}.notification-target{display:inline-flex;margin-top:8px;padding:7px 10px;border-radius:10px;background:rgba(0,183,195,.1);color:#54dbe3;font-weight:700}.notification-request{display:flex;flex-direction:column;gap:2px;margin:11px 0 14px;padding:10px 12px;border-left:3px solid #00b7c3;background:#12171c;border-radius:0 10px 10px 0}.notification-request strong{color:#f3f4f6}.notification-request span{color:#8f99a6;font-size:12px}.activity-item--notification .activity-target,.activity-item--notification .activity-request{display:block;margin-top:5px}.activity-item--notification .activity-target{color:#00aab5;font-weight:700}.activity-item--notification .activity-request{color:#77818d}.global-notification-item__icon{width:30px;height:30px;border-radius:10px;background:rgba(0,183,195,.12);color:#00b7c3;display:grid;place-items:center;flex:0 0 auto;font-size:15px}.global-notification-item__content{min-width:0;flex:1}.global-notification-item__actor{display:flex;align-items:baseline;gap:6px;margin-top:5px;color:#f3f4f6;font-size:12px;font-weight:700}.global-notification-item__actor small{color:#717b88;font-size:10px;font-weight:400}.global-notification-item__target,.global-notification-item__request{display:block;margin-top:5px;font-size:11px}.global-notification-item__target{color:#54dbe3;font-weight:700}.global-notification-item__request{color:#717b88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-notification-item.is-unread .global-notification-item__icon{box-shadow:0 0 0 3px rgba(0,183,195,.1)}

/* Stage 4.4 — Волна внутри М-СаГ Закупки */
.communication-workspace{min-width:0;background:#071015}.communication-workspace .workspace-topbar{background:#10181e;border-bottom:1px solid rgba(64,214,216,.16)}
.volna-powered{font-size:12px;color:#81979e}.volna-powered strong{color:#39d8d1;font-weight:800}
.communication-shell{display:grid;grid-template-columns:350px minmax(0,1fr);height:calc(100vh - 78px);min-height:580px;background:#071015;color:#eaf5f7;overflow:hidden}
.communication-rail{display:flex;flex-direction:column;min-width:0;border-right:1px solid rgba(95,220,224,.14);background:#0b141a}
.communication-brand{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px 12px}.communication-brand>div{display:flex;align-items:center;gap:10px}.communication-brand strong{font-size:19px}.communication-brand small{color:#738991;font-size:11px}.communication-brand__wave{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:linear-gradient(145deg,#43ddd3,#1a99b7);color:#061014;font-size:25px;font-weight:900;box-shadow:0 8px 24px rgba(36,201,210,.2)}
.communication-search{padding:0 14px 12px}.communication-search input{width:100%;height:42px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:#101d24;color:#eef9fb;padding:0 14px;outline:0}.communication-search input:focus{border-color:#31d4cf;box-shadow:0 0 0 3px rgba(49,212,207,.08)}
.communication-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:0 14px 10px}.communication-tabs button{height:38px;border:0;border-radius:11px;background:transparent;color:#82989f;cursor:pointer}.communication-tabs button.is-active{background:#14272e;color:#4ae1d9;font-weight:700}
.communication-list,.communication-contacts{min-height:0;overflow:auto;padding:3px 8px 16px}.communication-chat{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border-radius:15px;color:inherit;text-decoration:none;transition:.16s ease}.communication-chat:hover{background:#10222a}.communication-chat.is-active{background:linear-gradient(90deg,rgba(47,210,206,.16),rgba(25,104,119,.08));box-shadow:inset 3px 0 #38d7d0}.communication-chat__body{min-width:0}.communication-chat__body strong,.communication-chat__body small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.communication-chat__body strong{font-size:14px}.communication-chat__body small{margin-top:5px;color:#7f969d;font-size:12px}.communication-chat__meta{display:grid;justify-items:end;gap:7px}.communication-chat__meta time{color:#647b82;font-size:10px}.communication-chat__meta b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#38d7d0;color:#061114;font-size:11px}.communication-empty-list{padding:38px 20px;text-align:center;color:#70868d}
.communication-contact{margin:0}.communication-contact button{width:100%;display:flex;align-items:center;gap:12px;padding:10px;border:0;border-radius:15px;background:transparent;color:inherit;text-align:left;cursor:pointer}.communication-contact button:hover{background:#10222a}.communication-contact span strong,.communication-contact span small{display:block}.communication-contact span small{margin-top:4px;color:#7c9299;font-size:12px}
.volna-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:50%;overflow:hidden;background:linear-gradient(145deg,#17333d,#12242b);color:#56e4dd;font-weight:800}.volna-avatar img{width:100%;height:100%;object-fit:cover}.volna-avatar .user-avatar__fallback{display:grid;width:100%;height:100%;place-items:center}.volna-avatar--head{width:46px;height:46px;flex-basis:46px}.volna-avatar--message{width:30px;height:30px;flex-basis:30px;font-size:11px;align-self:flex-end}
.communication-chat-pane{display:flex;flex-direction:column;min-width:0;background:radial-gradient(circle at top right,rgba(38,184,194,.08),transparent 36%),#081116}.communication-chat-head{height:72px;display:flex;align-items:center;gap:12px;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(10,20,26,.91);backdrop-filter:blur(16px)}.communication-chat-head h2,.communication-chat-head p{margin:0}.communication-chat-head h2{font-size:16px}.communication-chat-head p{margin-top:4px;color:#7f969d;font-size:12px}.communication-mobile-back{display:none;color:#eaf8f9;text-decoration:none;font-size:34px}
.communication-welcome{margin:auto;text-align:center;padding:30px}.communication-welcome__mark{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 18px;border-radius:27px;background:linear-gradient(145deg,#43ddd3,#1a91b2);color:#061014;font-size:52px;font-weight:900;box-shadow:0 18px 55px rgba(27,191,201,.2)}.communication-welcome h2{margin:0 0 9px}.communication-welcome p{margin:0;color:#82989f}.communication-welcome small{display:block;margin-top:24px;color:#4d6870}
.communication-messages{flex:1;min-height:0;overflow:auto;padding:24px max(20px,6vw);scroll-behavior:smooth}.volna-message{display:flex;align-items:flex-end;gap:8px;margin:7px 0}.volna-message>div{max-width:min(72%,720px);padding:10px 12px 7px;border-radius:17px;box-shadow:0 8px 22px rgba(0,0,0,.13)}.volna-message.is-theirs>div{background:#17252c;border-bottom-left-radius:5px}.volna-message.is-mine{justify-content:flex-end}.volna-message.is-mine>div{background:#10171c;border:1px solid rgba(55,217,211,.5);border-bottom-right-radius:5px}.volna-message strong{display:block;margin-bottom:4px;color:#47ddd6;font-size:11px}.volna-message p{margin:0;color:#edf7f8;font-size:14px;line-height:1.45;overflow-wrap:anywhere}.volna-message time{display:block;margin-top:5px;text-align:right;color:#71888f;font-size:9px}
.communication-composer{display:grid;grid-template-columns:42px minmax(0,1fr) 46px;align-items:end;gap:9px;padding:12px 18px 16px;border-top:1px solid rgba(255,255,255,.07);background:#0b151b}.communication-composer textarea{min-height:44px;max-height:130px;resize:none;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:#121f26;color:#edf8fa;padding:12px 14px;font:inherit;outline:0}.communication-composer textarea:focus{border-color:#35d6d0}.communication-attach,.communication-send{height:42px;border:0;border-radius:14px;cursor:pointer;font-size:21px}.communication-attach{background:#14242b;color:#7f989f}.communication-send{background:#39d8d1;color:#061113;font-weight:900}
@media(max-width:900px){.communication-shell{grid-template-columns:310px minmax(0,1fr)}.volna-powered{display:none}}
@media(max-width:700px){.communication-shell{display:block;height:calc(100dvh - 68px);min-height:0}.communication-rail{height:100%;border:0}.communication-chat-pane{display:none;position:absolute;inset:68px 0 0;z-index:5}.communication-chat-pane.has-chat{display:flex}.communication-shell:has(.communication-chat-pane.has-chat) .communication-rail{display:none}.communication-mobile-back{display:block}.communication-messages{padding:18px 10px}.volna-message>div{max-width:84%}.communication-composer{padding:9px 8px max(10px,env(safe-area-inset-bottom))}}

/* Request chats inherit the same Volna conversation language */
.request-chat-layout{background:#081116!important;border:1px solid rgba(55,215,209,.14)!important;border-radius:20px!important;overflow:hidden!important}.request-chat-card{background:#101d24!important;border-color:rgba(255,255,255,.07)!important}.request-chat-card.is-active{background:rgba(55,215,209,.1)!important;border-color:rgba(55,215,209,.38)!important}.request-chat-window{background:radial-gradient(circle at top right,rgba(38,184,194,.07),transparent 40%),#081116!important}.request-chat-window__head{background:#0c171d!important;border-bottom:1px solid rgba(255,255,255,.07)!important}.request-chat-message{border-radius:16px!important}.request-chat-message.is-own{background:#10171c!important;border:1px solid rgba(55,217,211,.45)!important}.request-chat-message:not(.is-own){background:#17252c!important}.request-chat-compose{background:#0b151b!important;border-top:1px solid rgba(255,255,255,.07)!important}


/* Stage 4.5.3 — profile avatars and readable request-chat messages */
.volna-message{display:flex;align-items:flex-end;gap:9px}
.volna-message.is-mine{flex-direction:row-reverse}
.volna-message .volna-avatar--message{display:grid;position:relative}
.volna-message .volna-avatar--message img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.volna-message .volna-avatar--message.has-image .user-avatar__fallback{visibility:hidden}
.volna-message strong{color:#dffcf8!important}
.volna-message p{color:#f2f7f8!important}
.volna-message time{color:#8fa4ad!important}
.request-chat-message,.request-chat-message.is-mine,.request-chat-message.is-own,.request-chat-message.is-supplier{color:#f2f7f8!important}
.request-chat-message strong{color:#ffffff!important}
.request-chat-message small{color:#9eb2ba!important}
.request-chat-message p{color:#f2f7f8!important}
.request-chat-message time{color:#8fa4ad!important}
.request-chat-message.is-mine,.request-chat-message.is-own{background:#10171c!important;border:1px solid rgba(55,217,211,.45)!important}
.request-chat-message:not(.is-mine):not(.is-own){background:#17252c!important}

/* Stage 4.5.4 — correct left/right message alignment in Communication */
.communication-messages .volna-message{
  width:100%;
  box-sizing:border-box;
}
.communication-messages .volna-message.is-theirs{
  justify-content:flex-start;
  flex-direction:row;
}
.communication-messages .volna-message.is-mine{
  justify-content:flex-end;
  flex-direction:row;
}
.communication-messages .volna-message.is-mine>.volna-avatar--message{
  order:2;
}
.communication-messages .volna-message.is-mine>div{
  order:1;
}
.communication-messages .volna-message.is-theirs>.volna-avatar--message{
  order:1;
}
.communication-messages .volna-message.is-theirs>div{
  order:2;
}

/* Stage 4.5.5 — единые вложения чатов до 15 МБ */
.communication-composer{grid-template-columns:auto minmax(0,1fr) auto}.communication-compose-main,.request-chat-compose__main{min-width:0}.communication-compose-main textarea{width:100%}.communication-attach,.request-chat-attach{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(55,217,211,.32);border-radius:14px;background:rgba(55,217,211,.08);color:#52e2dc;font-size:25px;font-weight:400;cursor:pointer;transition:.18s ease}.communication-attach:hover,.request-chat-attach:hover{background:rgba(55,217,211,.15);border-color:rgba(55,217,211,.55)}.request-chat-compose{grid-template-columns:auto minmax(0,1fr) auto}.chat-file-selected{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 7px;padding:7px 10px;border:1px solid rgba(55,217,211,.25);border-radius:10px;background:rgba(55,217,211,.07);color:#dffcf8;font-size:12px}.chat-file-selected span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-file-selected button{flex:0 0 auto;border:0;background:transparent;color:#9bc4c7;font-size:18px;cursor:pointer}.chat-attachment{display:flex;align-items:center;gap:10px;margin-top:8px;padding:9px 10px;border:1px solid rgba(55,217,211,.2);border-radius:12px;background:rgba(4,15,20,.32);color:#e8f7f8;text-decoration:none;max-width:420px}.chat-attachment:hover{border-color:rgba(55,217,211,.5);background:rgba(55,217,211,.07)}.chat-attachment>b{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:rgba(55,217,211,.12);color:#4be0d9;font-size:19px}.chat-attachment>span{min-width:0}.chat-attachment strong,.chat-attachment small{display:block}.chat-attachment strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#eafafa!important;font-size:12px!important}.chat-attachment small{margin-top:2px;color:#8fa4ad!important;font-size:10px!important}.chat-attachment--image{display:block;padding:6px}.chat-attachment--image img{display:block;width:min(260px,100%);max-height:220px;object-fit:cover;border-radius:9px}.chat-attachment--image span{display:block;padding:7px 4px 2px}.request-chat-message .chat-attachment{background:rgba(4,15,20,.38)}
@media(max-width:620px){.request-chat-compose{grid-template-columns:auto minmax(0,1fr)}.request-chat-compose>.primary-button{grid-column:1/-1}.communication-attach,.request-chat-attach{width:40px;height:40px}}


/* Stage 4.5.6 — запись и воспроизведение аудиосообщений */
.communication-composer{grid-template-columns:auto auto minmax(0,1fr) auto}.request-chat-compose{grid-template-columns:auto auto minmax(0,1fr) auto}.chat-audio-record{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(55,217,211,.32);border-radius:14px;background:rgba(55,217,211,.08);color:#52e2dc;font-size:16px;cursor:pointer;transition:.18s ease}.chat-audio-record:hover{background:rgba(55,217,211,.15);border-color:rgba(55,217,211,.55)}.chat-audio-record.is-recording{border-color:#ff6f75;background:rgba(255,74,84,.16);color:#ff777d;animation:chat-record-pulse 1.1s ease-in-out infinite}.chat-audio-preview{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;margin:0 0 7px;padding:8px 10px;border:1px solid rgba(55,217,211,.25);border-radius:12px;background:rgba(55,217,211,.07);color:#dffcf8}.chat-audio-preview>span{font-size:12px;font-weight:700}.chat-audio-preview>time{color:#8fa4ad;font-size:11px}.chat-audio-preview>button{border:0;background:transparent;color:#9bc4c7;font-size:19px;cursor:pointer}.chat-audio-preview audio{grid-column:1/-1;width:100%;height:34px}.chat-attachment--audio{align-items:center}.chat-attachment--audio>div{min-width:0;flex:1}.chat-attachment--audio audio{display:block;width:min(300px,100%);height:34px;margin:5px 0}.chat-audio-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:rgba(55,217,211,.14);color:#52e2dc}.chat-attachment--audio strong{color:#eafafa!important;font-size:12px!important}.chat-attachment--audio small{color:#8fa4ad!important;font-size:10px!important}@keyframes chat-record-pulse{50%{box-shadow:0 0 0 7px rgba(255,74,84,.08)}}@media(max-width:620px){.request-chat-compose{grid-template-columns:auto auto minmax(0,1fr)}.request-chat-compose>.primary-button{grid-column:1/-1}.chat-audio-record{width:40px;height:40px}}


/* Stage 4.5.7 — application and Volna logos */
.sidebar-brand__mark{overflow:hidden;padding:0!important;background:transparent!important}
.sidebar-brand__mark img{display:block;width:100%;height:100%;object-fit:contain}
.brand-mark{overflow:hidden;padding:0!important;background:transparent!important}
.brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
.supplier-public-brand>span{overflow:hidden;padding:0!important;background:transparent!important}
.supplier-public-brand>span img{display:block;width:100%;height:100%;object-fit:contain}
.communication-brand__wave{overflow:hidden;padding:0!important;background:transparent!important;box-shadow:none!important}
.communication-brand__wave img{display:block;width:100%;height:100%;object-fit:contain}
.request-chat-card__icon--logo{overflow:hidden;padding:0!important;background:transparent!important}
.request-chat-card__icon--logo img{display:block;width:100%;height:100%;object-fit:contain}
.request-chat-window__logo{width:42px;height:42px;flex:0 0 42px;object-fit:contain;border-radius:12px}

/* Stage 4.5.8 — stable chat composers and clean responsive layout */
.communication-shell{
  height:calc(100dvh - 78px);
  max-height:calc(100dvh - 78px);
}
.communication-chat-pane{
  min-height:0;
  overflow:hidden;
}
.communication-messages{
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
}
.communication-composer{
  grid-template-columns:42px 42px minmax(180px,1fr) 46px!important;
  flex:0 0 auto;
  align-items:end;
  width:100%;
  box-sizing:border-box;
}
.communication-compose-main{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.communication-compose-main textarea{
  display:block;
  width:100%;
  min-width:0;
  box-sizing:border-box;
}
.communication-attach,.communication-composer .chat-audio-record,.communication-send{
  flex:none;
  margin:0;
}

.request-chat-window{
  min-height:0;
}
.request-chat-feed{
  min-height:360px;
  overflow-y:auto;
  overflow-x:hidden;
}
.request-chat-compose{
  display:grid!important;
  grid-template-columns:42px 42px minmax(220px,1fr) auto!important;
  align-items:end!important;
  gap:10px!important;
  width:100%;
  box-sizing:border-box;
  padding:14px 16px!important;
}
.request-chat-compose__main{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.request-chat-compose__main textarea{
  display:block;
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  max-height:140px;
  resize:vertical;
  box-sizing:border-box;
  margin:0!important;
}
.request-chat-compose>.primary-button{
  min-width:126px;
  height:44px;
  align-self:end;
  white-space:nowrap;
}
.request-chat-attach,.request-chat-compose .chat-audio-record{
  align-self:end;
  margin:0;
}

@media(max-width:900px){
  .request-chat-layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr)!important}
  .request-chat-compose{grid-template-columns:40px 40px minmax(150px,1fr) auto!important}
  .request-chat-compose>.primary-button{min-width:108px}
}
@media(max-width:700px){
  .communication-shell{height:calc(100dvh - 68px);max-height:calc(100dvh - 68px)}
  .communication-composer{grid-template-columns:40px 40px minmax(0,1fr) 44px!important}
  .request-chat-layout{grid-template-columns:1fr!important}
  .request-chat-compose{grid-template-columns:40px 40px minmax(0,1fr)!important}
  .request-chat-compose>.primary-button{grid-column:1/-1;width:100%;min-width:0}
}
@media(max-width:430px){
  .communication-composer{grid-template-columns:38px 38px minmax(0,1fr) 42px!important;gap:6px;padding-left:8px;padding-right:8px}
  .communication-attach,.communication-composer .chat-audio-record{width:38px;height:38px}
  .communication-send{width:42px;height:40px}
}

/* Stage 4.5.9 — emoji and message replies */
.chat-emoji-toggle{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(55,217,211,.32);border-radius:14px;background:rgba(55,217,211,.08);color:#52e2dc;font-size:20px;cursor:pointer;transition:.18s ease}
.chat-emoji-toggle:hover{background:rgba(55,217,211,.15);border-color:rgba(55,217,211,.55)}
.chat-emoji-picker{display:grid;grid-template-columns:repeat(10,minmax(28px,1fr));gap:4px;margin:0 0 8px;padding:8px;border:1px solid rgba(55,217,211,.22);border-radius:12px;background:#0c171d;box-shadow:0 12px 30px rgba(0,0,0,.28)}
.chat-emoji-picker[hidden]{display:none!important}.chat-emoji-picker button{display:grid;place-items:center;height:30px;border:0;border-radius:8px;background:transparent;font-size:19px;cursor:pointer}.chat-emoji-picker button:hover{background:rgba(55,217,211,.12)}
.chat-reply-preview{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px;padding:8px 10px;border-left:3px solid #36d9d2;border-radius:9px;background:rgba(55,217,211,.08)}
.chat-reply-preview[hidden]{display:none!important}.chat-reply-preview>div{display:grid;min-width:0}.chat-reply-preview b{color:#64e6df;font-size:12px}.chat-reply-preview span{overflow:hidden;color:#aebfc5;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.chat-reply-preview>button{border:0;background:transparent;color:#9eb2ba;font-size:19px;cursor:pointer}
.chat-reply-quote{display:grid;gap:2px;margin:6px 0 7px;padding:7px 9px;border-left:3px solid #36d9d2;border-radius:8px;background:rgba(55,217,211,.07)}
.chat-reply-quote b{color:#64e6df!important;font-size:11px!important}.chat-reply-quote span{overflow:hidden;color:#b9c9ce;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.chat-message-footer{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:5px}.chat-message-footer time{margin:0!important}.chat-reply-button{border:0;background:transparent;color:#70cfcf;font-size:10px;cursor:pointer;opacity:.72}.chat-reply-button:hover{opacity:1;text-decoration:underline}
.communication-composer{grid-template-columns:auto auto auto minmax(0,1fr) auto!important}.request-chat-compose{grid-template-columns:auto auto auto minmax(0,1fr) auto!important}
@media(max-width:760px){.chat-emoji-picker{grid-template-columns:repeat(6,minmax(28px,1fr))}.request-chat-compose{grid-template-columns:40px 40px 40px minmax(0,1fr)!important}.request-chat-compose>.primary-button{grid-column:1/-1}.communication-composer{grid-template-columns:38px 38px 38px minmax(0,1fr) 42px!important}.chat-emoji-toggle{width:38px;height:38px}}


/* Stage 4.5.10 — microphone permission dialog */
.chat-system-dialog[hidden]{display:none!important}
.chat-system-dialog{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:20px}
.chat-system-dialog__backdrop{position:absolute;inset:0;background:rgba(2,10,14,.72);backdrop-filter:blur(5px)}
.chat-system-dialog__panel{position:relative;width:min(520px,100%);display:grid;grid-template-columns:54px 1fr;gap:16px;padding:22px;border:1px solid rgba(67,218,212,.32);border-radius:20px;background:#0d1a20;box-shadow:0 24px 70px rgba(0,0,0,.48);color:#eefafa}
.chat-system-dialog__icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:rgba(54,217,210,.12);font-size:25px}
.chat-system-dialog__content h3{margin:1px 0 8px;color:#fff;font-size:20px}
.chat-system-dialog__content p{margin:0;color:#d6e5e8;line-height:1.5}
.chat-system-dialog__hint{margin-top:12px;padding:11px 12px;border-left:3px solid #36d9d2;border-radius:9px;background:rgba(54,217,210,.08);color:#a9c7cc;font-size:13px;line-height:1.45}
.chat-system-dialog__actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:4px}
.chat-system-dialog__actions button{min-width:112px}
@media(max-width:560px){.chat-system-dialog__panel{grid-template-columns:1fr;padding:18px}.chat-system-dialog__icon{width:46px;height:46px}.chat-system-dialog__actions{display:grid;grid-template-columns:1fr}.chat-system-dialog__actions button{width:100%}}


/* Stage 4.5.12 — фирменный аудиоплеер «Волна» */
@media(max-width:620px){.volna-audio-player{min-width:0;width:100%;padding:8px 10px}.volna-audio-player__play{flex-basis:38px;width:38px;height:38px}}


/* Stage 4.5.13 — WhatsApp-like Volna audio player */
audio[data-volna-audio-ready]{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.volna-audio-player{display:flex;align-items:center;gap:10px;width:min(420px,100%);min-width:250px;padding:9px 10px;border:1px solid rgba(49,219,211,.42);border-radius:22px;background:linear-gradient(145deg,rgba(12,49,54,.98),rgba(7,29,36,.99));box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 7px 20px rgba(0,0,0,.18)}
.volna-audio-player[hidden]{display:none!important}
.volna-audio-player__play{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:#20cbd0;color:#05272d;font-size:17px;font-weight:900;cursor:pointer;transition:.16s ease}
.volna-audio-player__play:hover{filter:brightness(1.08);transform:scale(1.03)}
.volna-audio-player__main{min-width:0;flex:1;display:grid;gap:3px}
.volna-audio-player__wave{height:34px;display:flex;align-items:center;gap:2px;cursor:pointer;overflow:hidden;outline:none;user-select:none}
.volna-audio-player__wave i{display:block;flex:1 1 2px;max-width:3px;height:var(--h);min-height:5px;border-radius:4px;background:rgba(156,187,192,.48);transition:background .12s ease}
.volna-audio-player__wave i.is-played{background:#28d8d2}
.volna-audio-player__wave:focus-visible{box-shadow:0 0 0 2px rgba(40,216,210,.42);border-radius:8px}
.volna-audio-player__meta{display:flex;justify-content:space-between;color:#8fb1b8;font-size:10px;line-height:1}
.volna-audio-player__speed{flex:0 0 34px;width:34px;height:34px;padding:0;border:1px solid rgba(63,222,215,.55);border-radius:50%;background:rgba(25,105,111,.34);color:#dffefd;font-size:11px;font-weight:800;cursor:pointer}
.volna-audio-player.is-error{border-color:rgba(255,100,108,.8);box-shadow:0 0 0 1px rgba(255,100,108,.22)}
.chat-audio-preview .volna-audio-player{grid-column:1/-1;width:100%}
.chat-attachment--audio .volna-audio-player{margin-top:7px}
@media(max-width:620px){.volna-audio-player{min-width:0;width:100%;padding:8px}.volna-audio-player__play{flex-basis:38px;width:38px;height:38px}.volna-audio-player__speed{flex-basis:32px;width:32px;height:32px}.volna-audio-player__wave{gap:1px}}


/* Stage 4.5.16 — compact WhatsApp-like recording composer */
.chat-audio-preview{display:flex!important;align-items:center;gap:10px;margin:0!important;padding:4px 6px!important;min-height:46px;border:0!important;border-radius:18px!important;background:transparent!important;color:#dffcf8;overflow:hidden}
.chat-audio-preview[hidden]{display:none!important}
.chat-audio-preview__delete{display:grid!important;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0!important;border:0!important;border-radius:50%;background:rgba(255,255,255,.06)!important;color:#8eaeb3!important;font-size:17px!important;cursor:pointer}
.chat-audio-preview__delete:hover{background:rgba(255,92,101,.12)!important;color:#ff7d84!important}
.chat-audio-preview__mic{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:rgba(255,78,88,.13);color:#ff6f77;font-size:18px;animation:chat-record-pulse 1.05s ease-in-out infinite}
.chat-audio-live-wave{display:flex;align-items:center;gap:2px;flex:1;min-width:70px;height:34px;overflow:hidden}
.chat-audio-live-wave i{display:block;flex:1 1 2px;max-width:3px;height:5px;border-radius:3px;background:#27d8d1;opacity:.92;transition:height .08s linear}
.chat-audio-preview>time{flex:0 0 auto;color:#b7d0d4!important;font-size:12px!important;font-variant-numeric:tabular-nums}
.chat-audio-preview.is-ready{padding:0!important}
.chat-audio-preview.is-ready .chat-audio-preview__mic,.chat-audio-preview.is-ready .chat-audio-live-wave,.chat-audio-preview.is-ready>time{display:none!important}
.chat-audio-preview.is-ready .chat-audio-preview__delete{order:2;flex-basis:34px;width:34px;height:34px}
.chat-audio-preview.is-ready .volna-audio-player{order:1;flex:1;width:auto;min-width:0;margin:0;border-radius:18px}
.chat-audio-preview.is-recording .volna-audio-player{display:none!important}
.communication-compose-main:has(.chat-audio-preview:not([hidden])) textarea,.request-chat-compose__main:has(.chat-audio-preview:not([hidden])) textarea{display:none}
.chat-audio-record{font-size:18px!important}
@media(max-width:620px){.chat-audio-preview{gap:7px;padding:3px!important}.chat-audio-preview__delete{flex-basis:34px;width:34px;height:34px}.chat-audio-preview__mic{flex-basis:28px;width:28px;height:28px}.chat-audio-live-wave{gap:1px}.chat-audio-live-wave i{max-width:2px}}

/* Stage 4.5.17 — compact request chat navigation and hidden composer helpers */
.chat-file-selected[hidden],
.chat-emoji-picker[hidden],
.chat-reply-preview[hidden],
.chat-audio-preview[hidden]{display:none!important}

/* The request chat switcher stays compact above the conversation instead of
   reserving an empty column on the left. */
.request-chat-layout{
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
}
.request-chat-list{
  display:flex!important;
  flex-direction:row!important;
  gap:8px!important;
  padding:0 2px 4px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:thin;
}
.request-chat-card{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:220px!important;
  max-width:320px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  grid-template-columns:36px minmax(0,1fr) 20px!important;
  gap:9px!important;
}
.request-chat-card__icon{
  width:36px!important;
  height:36px!important;
  border-radius:11px!important;
}
.request-chat-card strong{font-size:13px!important}
.request-chat-card small{font-size:11px!important;margin-top:2px!important}
.request-chat-window{width:100%!important}

/* No decorative empty strip above the message field. */
.communication-compose-main>.chat-file-selected[hidden],
.request-chat-compose__main>.chat-file-selected[hidden]{
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  border:0!important;
}

@media(max-width:700px){
  .request-chat-list{padding-bottom:6px!important}
  .request-chat-card{min-width:190px!important;max-width:250px!important}
}

/* Stage 4.5.18 — audio message is the player itself */
.chat-audio-message{display:block;margin:4px 0 2px;padding:0;border:0;background:transparent;box-shadow:none}
.chat-audio-message .volna-audio-player{margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;width:min(390px,100%);min-width:250px}
.chat-audio-message .volna-audio-player__play{flex-basis:38px;width:38px;height:38px}
.chat-audio-message .volna-audio-player__wave{height:30px}
.chat-audio-message .volna-audio-player__speed{border:0;background:transparent;color:#dffefd}
.volna-message:has(.chat-audio-message):not(:has(p)):not(:has(.chat-reply-quote))>div{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.request-chat-message:has(.chat-audio-message):not(:has(p)):not(:has(.chat-reply-quote)){padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.volna-message:has(.chat-audio-message):not(:has(p)):not(:has(.chat-reply-quote))>div>strong,
.request-chat-message:has(.chat-audio-message):not(:has(p)):not(:has(.chat-reply-quote))>div:first-child{margin-bottom:3px}
.volna-message:has(.chat-audio-message) .chat-message-footer,
.request-chat-message:has(.chat-audio-message) .chat-message-footer{margin-top:3px}
@media(max-width:620px){.chat-audio-message .volna-audio-player{min-width:220px;width:min(330px,100%);padding:0}.chat-audio-message .volna-audio-player__play{flex-basis:34px;width:34px;height:34px}}


/* Stage 4.5.20 — единые ответы и репосты */
.chat-message-footer{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.chat-reply-button,.chat-repost-button{border:0;background:transparent;padding:0;color:var(--accent,#1cc8c8);font:inherit;cursor:pointer}
.chat-repost-button{opacity:.82}
.chat-reply-button:hover,.chat-repost-button:hover{text-decoration:underline}
.chat-forwarded-quote,.chat-repost-preview{display:flex;flex-direction:column;gap:2px;border-left:3px solid var(--accent,#1cc8c8);padding:7px 10px;margin:5px 0 8px;background:rgba(22,190,190,.07);border-radius:0 8px 8px 0}
.chat-forwarded-quote small,.chat-repost-preview small{font-size:11px;opacity:.72}
.chat-forwarded-quote b,.chat-repost-preview b{font-size:12px}
.chat-forwarded-quote span,.chat-repost-preview span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}
.chat-repost-preview{position:relative;margin:0 0 7px}
.chat-repost-preview>button{position:absolute;right:7px;top:7px;border:0;background:transparent;color:inherit;font-size:18px;cursor:pointer}
.chat-repost-preview>div{padding-right:24px;display:flex;flex-direction:column;gap:2px}

/* Stage 4.5.21 — navigation to replied message and real forwarding */
.chat-reply-quote[data-jump-to]{cursor:pointer;transition:background .18s ease,transform .18s ease}
.chat-reply-quote[data-jump-to]:hover{background:rgba(22,190,190,.12)}
.chat-message-highlight{animation:chatMessageHighlight 1.8s ease}
@keyframes chatMessageHighlight{0%,100%{box-shadow:0 0 0 0 rgba(22,190,190,0)}20%,70%{box-shadow:0 0 0 3px rgba(22,190,190,.65),0 0 24px rgba(22,190,190,.28)}}
.chat-forward-modal{position:fixed;inset:0;z-index:10050;background:rgba(4,10,16,.72);display:grid;place-items:center;padding:18px}
.chat-forward-dialog{width:min(430px,100%);max-height:min(620px,85vh);overflow:hidden;border-radius:16px;background:#111a22;border:1px solid rgba(31,211,202,.28);box-shadow:0 24px 70px rgba(0,0,0,.5);display:flex;flex-direction:column}
.chat-forward-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.chat-forward-dialog>header div{display:flex;flex-direction:column;gap:3px}.chat-forward-dialog>header small{opacity:.65}.chat-forward-dialog>header button{border:0;background:transparent;color:inherit;font-size:26px;cursor:pointer}
.chat-forward-loading{padding:24px;text-align:center;opacity:.75}.chat-forward-targets{overflow:auto;padding:8px}
.chat-forward-targets button{width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:12px 13px;border-radius:11px;display:flex;flex-direction:column;gap:3px;cursor:pointer}
.chat-forward-targets button:hover{background:rgba(22,190,190,.11)}.chat-forward-targets button:disabled{opacity:.65;cursor:default}.chat-forward-targets small{opacity:.65}

/* Stage 4.5.22 — unified supplier chat */
.supplier-chat-unified{display:flex;flex-direction:column;min-height:620px;border:1px solid #d9e2e6;border-radius:20px;background:#f8fafb;overflow:hidden}.supplier-unified-chat-feed{max-height:560px}.supplier-unified-chat-compose{grid-template-columns:auto minmax(0,1fr) auto}.supplier-unified-chat-compose .request-chat-attach{display:grid;place-items:center;width:44px;height:44px;margin-bottom:16px;border:1px solid #c8d7dc;border-radius:14px;background:#f4fafb;color:#078ba3;font-size:26px;cursor:pointer}.supplier-unified-chat-compose .request-chat-compose__main{min-width:0}.supplier-unified-chat-compose textarea{min-height:58px;max-height:160px}.supplier-unified-chat-compose>.primary-button{min-height:58px;margin-bottom:0}.chat-message-highlight{animation:supplierChatHighlight 1.8s ease}@keyframes supplierChatHighlight{0%,100%{box-shadow:none}18%,72%{box-shadow:0 0 0 3px rgba(9,164,191,.45),0 8px 24px rgba(9,164,191,.18)}}@media(max-width:620px){.supplier-chat-unified{min-height:540px}.supplier-unified-chat-compose{grid-template-columns:auto minmax(0,1fr)}.supplier-unified-chat-compose>.primary-button{grid-column:1/-1;width:100%}.supplier-unified-chat-compose .request-chat-attach{margin-bottom:0}}

/* Stage 4.5.23.2 — supplier portal chat surface and AJAX composer spacing */
.supplier-chat-unified{
  background:#081116!important;
  border-color:rgba(55,215,209,.14)!important;
}
.supplier-chat-unified .supplier-unified-chat-feed{
  background:radial-gradient(circle at top right,rgba(38,184,194,.06),transparent 42%),#081116!important;
  padding:22px!important;
}
.supplier-chat-unified .supplier-unified-chat-compose{
  padding:18px 24px 20px!important;
  gap:12px!important;
  background:#0b151b!important;
}
.supplier-chat-unified .supplier-unified-chat-compose .request-chat-compose__main{
  margin:0!important;
}
.supplier-chat-unified .supplier-unified-chat-compose textarea{
  min-height:76px!important;
  margin:0!important;
}
.supplier-chat-unified .supplier-unified-chat-compose .request-chat-attach{
  margin:0!important;
  align-self:center!important;
}
.supplier-chat-unified .supplier-unified-chat-compose>.primary-button{
  align-self:stretch!important;
  min-height:76px!important;
}
@media(max-width:620px){
  .supplier-chat-unified .supplier-unified-chat-compose{padding:14px!important}
  .supplier-chat-unified .supplier-unified-chat-compose>.primary-button{min-height:50px!important}
}

/* Stage 4.5.23.3 — supplier composer width, shared audio and new-message notice */
.supplier-chat-unified .supplier-unified-chat-compose{
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr) minmax(150px,190px)!important;
  width:100%!important;
  box-sizing:border-box!important;
  align-items:stretch!important;
  padding:20px 28px 22px!important;
  column-gap:16px!important;
}
.supplier-chat-unified .supplier-unified-chat-compose .request-chat-compose__main{width:100%!important;min-width:0!important}
.supplier-chat-unified .supplier-unified-chat-compose textarea{display:block!important;width:100%!important;min-height:88px!important;box-sizing:border-box!important;border-radius:18px!important;padding:16px 18px!important;resize:none!important}
.supplier-chat-unified .supplier-unified-chat-compose .request-chat-attach{width:56px!important;height:56px!important;align-self:center!important}
.supplier-chat-unified .supplier-unified-chat-compose>.primary-button{width:100%!important;min-width:150px!important;min-height:88px!important;border-radius:18px!important}
.supplier-chat-unified .chat-audio-message{width:min(390px,100%)}
.supplier-chat-notice{position:absolute;left:50%;bottom:126px;z-index:12;transform:translateX(-50%) translateY(10px);display:flex;align-items:center;gap:9px;padding:10px 15px;border:1px solid rgba(48,213,200,.5);border-radius:999px;background:rgba(8,25,31,.96);box-shadow:0 12px 35px rgba(0,0,0,.32);color:#e9ffff;font-size:13px;font-weight:750;opacity:0;pointer-events:none;transition:.2s ease}.supplier-chat-notice.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}.supplier-chat-notice i{width:8px;height:8px;border-radius:50%;background:#30d5c8;box-shadow:0 0 0 5px rgba(48,213,200,.12)}
.supplier-chat-unified{position:relative}
@media(max-width:700px){.supplier-chat-unified .supplier-unified-chat-compose{grid-template-columns:50px minmax(0,1fr)!important;padding:14px!important}.supplier-chat-unified .supplier-unified-chat-compose>.primary-button{grid-column:1/-1;min-height:52px!important}.supplier-chat-unified .supplier-unified-chat-compose .request-chat-attach{width:50px!important;height:50px!important}.supplier-chat-unified .supplier-unified-chat-compose textarea{min-height:72px!important}.supplier-chat-notice{bottom:150px;max-width:calc(100% - 28px);white-space:nowrap}}

/* Stage 4.5.23.4 — supplier cabinet chat notifications */
.supplier-portal-tabs a{position:relative;display:inline-flex;align-items:center;gap:7px}
.supplier-chat-unread-badge{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#22cfc3;color:#07181d;font-size:10px;font-weight:900;line-height:1;box-shadow:0 0 0 3px rgba(34,207,195,.12)}
.supplier-chat-unread-badge[hidden]{display:none!important}
.supplier-cabinet-chat-toast{position:fixed;right:24px;bottom:24px;z-index:9999;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;width:min(390px,calc(100vw - 32px));padding:15px 14px;border:1px solid rgba(48,213,200,.55);border-radius:18px;background:rgba(14,24,29,.98);box-shadow:0 22px 65px rgba(0,0,0,.42);color:#fff;cursor:pointer;animation:supplierChatToastIn .22s ease}
.supplier-cabinet-chat-toast[hidden]{display:none!important}
.supplier-cabinet-chat-toast__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:rgba(48,213,200,.14);color:#30d5c8;font-size:13px;font-weight:900}
.supplier-cabinet-chat-toast strong,.supplier-cabinet-chat-toast small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.supplier-cabinet-chat-toast strong{font-size:14px}.supplier-cabinet-chat-toast small{margin-top:4px;color:#a9bac1;font-size:12px}
.supplier-cabinet-chat-toast button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:9px;background:transparent;color:#8fa2aa;font-size:22px;cursor:pointer}.supplier-cabinet-chat-toast button:hover{background:rgba(255,255,255,.07);color:#fff}
@keyframes supplierChatToastIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:600px){.supplier-cabinet-chat-toast{right:16px;bottom:16px}}

/* Stage 4.5.24 — account-scoped chat alerts */
.app-chat-alerts{position:fixed;right:24px;bottom:24px;z-index:120;width:min(390px,calc(100vw - 32px));filter:drop-shadow(0 18px 42px rgba(0,0,0,.34))}.app-chat-alerts[hidden]{display:none}.app-chat-alerts__card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid rgba(48,213,200,.4);border-radius:16px;color:#f4f7f8;background:#111a20;text-decoration:none}.app-chat-alerts__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:#061313;background:#30d5c8;font-size:20px}.app-chat-alerts__body{min-width:0}.app-chat-alerts__body strong,.app-chat-alerts__body span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-chat-alerts__body strong{font-size:13px}.app-chat-alerts__body span{margin-top:4px;color:#aab7c0;font-size:12px}.app-chat-alerts__count{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;color:#061313;background:#30d5c8;font-size:12px;font-weight:900}.dashboard-request-card{position:relative}.dashboard-request-card__chat-alert{position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:center;gap:6px;min-height:28px;padding:0 9px;border-radius:999px;color:#071211;background:#30d5c8;font-size:10px;font-weight:900;box-shadow:0 8px 18px rgba(48,213,200,.22)}@media(max-width:640px){.app-chat-alerts{right:16px;bottom:16px}}

/* Stage 4.5.25 — separate notification cards by chat source */
.app-chat-alerts{display:flex;flex-direction:column;gap:10px;max-height:min(70vh,620px);overflow:auto;filter:none}
.app-chat-alerts__card{flex:0 0 auto;box-shadow:0 18px 42px rgba(0,0,0,.34);animation:appChatAlertIn .18s ease both}
.app-chat-alerts__card--supplier{border-color:rgba(48,213,200,.55)}
.app-chat-alerts__card--supplier .app-chat-alerts__icon{background:#30d5c8}
.app-chat-alerts__card--communication{border-color:rgba(74,163,255,.48)}
.app-chat-alerts__card--communication .app-chat-alerts__icon{background:#8ac7ff}
@keyframes appChatAlertIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}


/* Stage 4.5.26.2 — real message actions and supplier chat layout fix */
.chat-context-menu{
  position:fixed!important;
  z-index:10050!important;
  display:grid!important;
  min-width:220px!important;
  max-height:min(78vh,560px)!important;
  overflow-y:auto!important;
  padding:7px!important;
  background:#111a21!important;
  border:1px solid rgba(48,211,199,.38)!important;
  border-radius:12px!important;
  box-shadow:0 18px 55px rgba(0,0,0,.48)!important;
}
.chat-context-menu button{
  display:block!important;
  width:100%!important;
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  color:#eaf4f5!important;
  text-align:left!important;
  padding:9px 11px!important;
  border-radius:8px!important;
  cursor:pointer!important;
  font:inherit!important;
}
.chat-context-menu button:hover{background:rgba(48,211,199,.13)!important}
.chat-context-menu button.is-danger{color:#ff8d97!important}
.chat-context-menu button:disabled{opacity:.35!important;cursor:not-allowed!important}
.chat-context-menu__separator{height:1px;margin:4px 6px;background:rgba(255,255,255,.08)}
.chat-message-menu-button{
  position:absolute!important;
  top:8px!important;
  right:8px!important;
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  padding:0!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#8fa4ad!important;
  font-size:21px!important;
  line-height:1!important;
  cursor:pointer!important;
  opacity:.3;
  transition:.16s ease;
}
.volna-message,.request-chat-message{position:relative!important}
.volna-message:hover .chat-message-menu-button,.request-chat-message:hover .chat-message-menu-button,.chat-message-menu-button:focus{opacity:1;background:rgba(55,217,211,.1)!important;color:#52e2dc!important}
.request-chat-message blockquote,.volna-message blockquote{margin:6px 0;padding:5px 9px;border-left:3px solid #30d3c7;background:rgba(48,211,199,.08);border-radius:5px}

/* Supplier portal has three composer children: attach, editor, send. */
.supplier-chat-unified .supplier-unified-chat-compose{
  grid-template-columns:56px minmax(0,1fr) 190px!important;
  align-items:center!important;
}
.supplier-chat-unified .supplier-unified-chat-compose .request-chat-attach{align-self:center!important;margin:0!important}
.supplier-chat-unified .supplier-unified-chat-compose>.primary-button{width:100%!important;min-width:0!important;margin:0!important}
.supplier-chat-unified .request-chat-message{max-width:min(72%,680px)!important}
@media(max-width:760px){
  .supplier-chat-unified .supplier-unified-chat-compose{grid-template-columns:48px minmax(0,1fr)!important}
  .supplier-chat-unified .supplier-unified-chat-compose>.primary-button{grid-column:1/-1!important}
  .supplier-chat-unified .request-chat-message{max-width:90%!important}
}

/* Stage 4.5.26.3 — one shared chat UI and Russian context menus */
.supplier-chat-unified{background:var(--panel,#07151b)!important;border-color:rgba(109,184,196,.28)!important}
.supplier-chat-unified .supplier-unified-chat-feed{padding:22px 28px!important;background:transparent!important}
.supplier-chat-unified .supplier-unified-chat-compose{display:grid!important;grid-template-columns:48px 48px 48px minmax(0,1fr) auto!important;align-items:end!important;gap:10px!important;padding:16px 22px!important;background:rgba(7,21,27,.96)!important;border-top:1px solid rgba(109,184,196,.18)!important}
.supplier-chat-unified .request-chat-attach,.supplier-chat-unified .chat-audio-record,.supplier-chat-unified .chat-emoji-toggle{width:48px!important;height:48px!important;min-width:48px!important;margin:0!important;align-self:end!important;border-radius:14px!important}
.supplier-chat-unified .request-chat-compose__main{width:100%!important;min-width:0!important}
.supplier-chat-unified .request-chat-compose textarea{width:100%!important;min-height:58px!important;max-height:150px!important;padding:15px 17px!important;margin:0!important;border-radius:16px!important;box-sizing:border-box!important}
.supplier-chat-unified .request-chat-compose>.primary-button{width:auto!important;min-width:148px!important;min-height:58px!important;margin:0!important;padding:0 26px!important;border-radius:16px!important}
.supplier-chat-unified .request-chat-message{max-width:min(70%,680px)!important;width:max-content!important;min-width:240px!important}
.supplier-chat-unified .request-chat-message.is-mine{margin-left:auto!important;margin-right:0!important}
.supplier-chat-unified .request-chat-message:not(.is-mine){margin-left:0!important;margin-right:auto!important}
.chat-context-menu{min-width:245px!important;padding:8px!important;border-radius:14px!important;background:#fff!important;color:#182126!important;border:1px solid rgba(20,40,48,.12)!important;box-shadow:0 18px 55px rgba(0,0,0,.28)!important}
.chat-context-menu button{display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;padding:11px 13px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#182126!important;font:inherit!important;text-align:left!important;cursor:pointer!important}
.chat-context-menu button span{display:inline-grid!important;place-items:center!important;width:24px!important;font-size:20px!important;font-weight:400!important}
.chat-context-menu button b{font-weight:500!important}
.chat-context-menu button:hover{background:#eef7f7!important}
.chat-context-menu button.is-danger{color:#c9343d!important}
.chat-context-menu button:disabled{opacity:.38!important;cursor:default!important}
.chat-context-menu__separator{height:1px!important;margin:5px 3px!important;background:#e3e8ea!important}
.chat-message-edited{margin-right:8px!important;color:#85969d!important;font-size:11px!important}
@media(max-width:760px){.supplier-chat-unified .supplier-unified-chat-compose{grid-template-columns:44px 44px 44px minmax(0,1fr)!important}.supplier-chat-unified .request-chat-compose>.primary-button{grid-column:1/-1!important;width:100%!important}.supplier-chat-unified .request-chat-message{max-width:90%!important;min-width:0!important}}


/* Stage 4.5.26.5 — inline message editing */
.chat-edit-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;padding:8px 10px;border-left:3px solid var(--accent,#16b8c8);border-radius:8px;background:rgba(22,184,200,.09);color:inherit}
.chat-edit-preview>div{display:flex;min-width:0;flex-direction:column;gap:2px}
.chat-edit-preview b{font-size:13px}.chat-edit-preview span{overflow:hidden;color:#8ea1aa;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.chat-edit-preview button{flex:0 0 auto;width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:22px;cursor:pointer}
.chat-edit-preview button:hover{background:rgba(255,255,255,.08)}.is-editing-message button[type=submit]{min-width:110px}

/* Stage 4.5.26.7 — request chat header contrast and unified supplier composer buttons */
.request-chat-window__head > div > strong,
.request-chat-window__head strong{
  color:#f5fbfc!important;
  background:transparent!important;
  -webkit-text-fill-color:#f5fbfc!important;
  text-shadow:none!important;
}
.request-chat-window__head > div > span{color:#52e2dc!important;background:transparent!important}
.request-chat-window__head > div > small{color:#91a5ae!important;background:transparent!important}

.supplier-chat-unified .request-chat-attach,
.supplier-chat-unified .chat-audio-record,
.supplier-chat-unified .chat-emoji-toggle{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(55,217,211,.38)!important;
  border-radius:14px!important;
  background:rgba(55,217,211,.08)!important;
  color:#52e2dc!important;
  box-shadow:none!important;
  font-size:20px!important;
  line-height:1!important;
  cursor:pointer!important;
  transition:.18s ease!important;
}
.supplier-chat-unified .request-chat-attach{font-size:27px!important;font-weight:300!important}
.supplier-chat-unified .request-chat-attach:hover,
.supplier-chat-unified .chat-audio-record:hover,
.supplier-chat-unified .chat-emoji-toggle:hover{
  border-color:rgba(55,217,211,.62)!important;
  background:rgba(55,217,211,.16)!important;
}


/* Stage 4.5.28 — dismiss notifications without marking messages as read */
.app-chat-alerts__card{position:relative;display:block;padding:0}
.app-chat-alerts__link{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 46px 14px 14px;color:inherit;text-decoration:none}
.app-chat-alerts__close,.supplier-cabinet-chat-toast__close,.global-notification-item__close,.notification-dismiss-button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:999px;color:#9eabb3;background:rgba(255,255,255,.07);font-size:20px;line-height:1;cursor:pointer;transition:.16s ease}
.app-chat-alerts__close:hover,.supplier-cabinet-chat-toast__close:hover,.global-notification-item__close:hover,.notification-dismiss-button:hover{color:#fff;background:rgba(255,255,255,.15)}
.app-chat-alerts__close{position:absolute;top:8px;right:8px;z-index:2}
.supplier-cabinet-chat-toast{position:relative;padding-right:48px}
.supplier-cabinet-chat-toast__close{position:absolute;top:8px;right:8px}
.global-notification-item{position:relative;display:block}
.global-notification-item__link{display:flex;color:inherit;text-decoration:none}
.global-notification-item__close{position:absolute;top:8px;right:8px;z-index:2}
.global-notification-item__content{padding-right:28px}
.activity-item--notification,.notification-row--structured{position:relative}
.notification-dismiss-button{position:absolute;top:10px;right:10px;z-index:3}
.notification-dismiss-button--row{top:12px;right:12px}
.notification-row__head{padding-right:34px}

/* Stage 4.7.4.7: profile access in mobile sidebar */
.mobile-profile-link { display: flex; }
@media (max-width: 900px) {
  .mobile-profile-link {
    margin-top: 6px;
    border-top: 1px solid rgba(255,255,255,.08);
    padding-top: 14px;
  }
}

/* Stage 4.8.1 — clean request navigation without duplicate status blocks */
.v2-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  overflow:visible;
  padding:0;
  margin:0 0 16px;
}
.v2-tabs a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:12px;
  font-size:13px;
  font-weight:700;
}
.v2-tabs a.is-active{box-shadow:0 5px 14px rgba(7,159,192,.18)}
.request-command-center{gap:14px}
.request-command-center.v2-panel{padding:18px}
.request-command-center .v2-panel-title{margin-bottom:2px}
.request-kpi-grid{gap:10px}
.request-kpi-grid>div{padding:13px 14px;border-radius:13px}
.request-kpi-grid strong{font-size:16px}
.request-next-action{padding:14px 16px;border-radius:14px}
.request-next-action strong{font-size:17px}
.request-command-grid{gap:14px}
.request-stage-metrics,.request-recent-actions{padding:14px;border-radius:14px}
.workflow-layout--compact{grid-template-columns:minmax(0,1fr) 330px}
.workflow-route--compact{display:grid;gap:14px}
.workflow-stage-group{overflow:hidden;border:1px solid #ddd6ca;border-radius:14px;background:#fff}
.workflow-stage-group summary{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:15px 16px;cursor:pointer;list-style:none}
.workflow-stage-group summary::-webkit-details-marker{display:none}
.workflow-stage-group summary>span:nth-child(2){display:grid;gap:2px}
.workflow-stage-group summary strong{color:#20262c;font-size:14px}
.workflow-stage-group summary small{color:#778087;font-size:12px}
.workflow-stage-group summary b{color:#087f9a;font-size:12px}
.workflow-stage-group[open] summary b{font-size:0}
.workflow-stage-group[open] summary b:after{content:'Скрыть';font-size:12px}
.workflow-stage-group__icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e7f7f2;color:#0a8e70;font-weight:900}
.workflow-stage-group--upcoming .workflow-stage-group__icon{background:#f0f1f2;color:#8a9399}
.workflow-stage-group__content{display:grid;padding:0 16px 14px}
.workflow-mini-step{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #eee9e2}
.workflow-mini-step>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e7f7f2;color:#0a8e70;font-size:12px;font-weight:900}
.workflow-mini-step div{display:grid;gap:2px}
.workflow-mini-step strong{color:#283037;font-size:13px}
.workflow-mini-step small{color:#7a848a;font-size:11px}
.workflow-mini-step--upcoming>span{background:#f0f1f2;color:#8a9399}
.workflow-mini-step--upcoming strong{color:#646d73}
.workflow-current-stage{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:start;padding:20px;border:2px solid #079fc0;border-radius:16px;background:linear-gradient(135deg,#eefbfe 0%,#fff 70%);box-shadow:0 10px 28px rgba(7,159,192,.09)}
.workflow-current-stage__number{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#079fc0;color:#fff;font-size:20px;font-weight:900}
.workflow-current-stage>div:last-child{display:grid;gap:5px}
.workflow-current-stage span{color:#087f9a;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.workflow-current-stage h4{margin:0;color:#172027;font-size:22px}
.workflow-current-stage p{margin:0;color:#4f5960}
.workflow-current-stage small{color:#738087}
.workflow-current-stage--finished{border-color:#0a9b78;background:linear-gradient(135deg,#eefaf6 0%,#fff 70%)}
.workflow-current-stage--finished .workflow-current-stage__number{background:#0a9b78}
@media(max-width:980px){.workflow-layout--compact{grid-template-columns:1fr}}
@media(max-width:720px){
  .v2-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .v2-tabs a{min-width:0;padding:0 8px;font-size:12px}
}
@media(max-width:680px){
  .workflow-current-stage{grid-template-columns:44px 1fr;padding:16px}
  .workflow-current-stage__number{width:42px;height:42px;border-radius:13px;font-size:16px}
  .workflow-current-stage h4{font-size:18px}
  .workflow-stage-group summary{grid-template-columns:36px 1fr auto;padding:13px}
  .workflow-stage-group__icon{width:34px;height:34px}
}

/* Stage 4.8.2 — compact locked procurement process line */
.request-primary-tabs{margin-bottom:14px}
.request-process-line{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;margin:0 0 18px;padding:14px 16px;border:1px solid #e1ddd5;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(39,51,55,.045)}
.request-process-step{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;padding:9px 12px;color:#7c858a;text-decoration:none;text-align:center}
.request-process-step:not(:last-child):after{content:"";position:absolute;z-index:0;left:calc(50% + 42px);right:calc(-50% + 42px);top:50%;height:2px;background:#e5e7e8;transform:translateY(-50%)}
.request-process-step>span,.request-process-step>strong{position:relative;z-index:1}
.request-process-step>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:2px solid #d8dddf;border-radius:50%;background:#fff;color:#8b9498;font-size:12px;font-weight:900}
.request-process-step>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:850}
.request-process-step.is-completed{cursor:default;color:#657176}
.request-process-step.is-completed>span{border-color:#b9ddd1;background:#eaf8f3;color:#14805f}
.request-process-step.is-completed:not(:last-child):after{background:#b9ddd1}
.request-process-step.is-upcoming{cursor:not-allowed;opacity:.56}
.request-process-step.is-current{margin:-4px 0;padding:13px 12px;border-radius:13px;background:#07a4be;color:#fff;box-shadow:0 8px 18px rgba(7,164,190,.20)}
.request-process-step.is-current>span{border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.16);color:#fff}
.request-process-step.is-current:hover{background:#078fa8;color:#fff}
@media(max-width:1050px){.request-process-line{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.request-process-step:not(:last-child):after{display:none}.request-process-step{justify-content:flex-start;border:1px solid #e5e8e9;border-radius:12px}.request-process-step.is-current{margin:0}}
@media(max-width:650px){.request-process-line{grid-template-columns:1fr 1fr;padding:10px}.request-process-step{padding:9px}.request-process-step>strong{font-size:12px}.request-process-step>span{width:27px;height:27px;flex-basis:27px}}

/* Stage 4.8.3: separate dashboard card and unread-chat navigation */
.dashboard-request-card__main-link{position:absolute;inset:0;z-index:1;border-radius:inherit}
.dashboard-request-card__main-link:focus-visible{outline:3px solid rgba(48,213,200,.55);outline-offset:3px}
.dashboard-request-card__chat-alert{z-index:3;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease}
.dashboard-request-card__chat-alert:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(48,213,200,.3)}
.dashboard-request-card__chat-alert:focus-visible{outline:3px solid rgba(48,213,200,.45);outline-offset:2px}

/* Stage 4.8.11 — global search across new and legacy procurement data */
.app-global-search{position:fixed;z-index:900;top:11px;left:50%;display:flex;align-items:center;gap:8px;width:min(390px,34vw);height:42px;padding:0 12px;border:1px solid rgba(152,165,171,.35);border-radius:13px;background:rgba(255,255,255,.96);box-shadow:0 8px 26px rgba(21,35,42,.11);transform:translateX(-50%);backdrop-filter:blur(12px)}
.app-global-search>span{color:#079fc0;font-size:21px;font-weight:900;line-height:1}.app-global-search input{min-width:0;flex:1;border:0!important;outline:0;background:transparent!important;color:#263238;font:inherit;box-shadow:none!important}.app-global-search input::placeholder{color:#88959b}.app-global-search kbd{padding:3px 6px;border:1px solid #dce2e4;border-radius:6px;background:#f4f6f7;color:#7c898e;font-size:10px;font-family:inherit}
.global-search-shell{min-height:100vh;background:#f4f1eb;color:#263238}.global-search-header{position:sticky;z-index:10;top:0;display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:14px;padding:14px max(18px,calc((100vw - 1180px)/2));border-bottom:1px solid #dedbd4;background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}.global-search-header>div span{color:#079fc0;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.global-search-header h1{margin:2px 0 0;font-size:21px}.global-search-back,.global-search-profile{display:grid;place-items:center;width:42px;height:42px;border:1px solid #dfe3e4;border-radius:12px;background:#fff;color:#344047;text-decoration:none;font-size:22px}.global-search-content{display:grid;gap:18px;width:min(1180px,calc(100% - 32px));margin:0 auto;padding:26px 0 70px}.global-search-hero{display:flex;align-items:center;gap:12px;padding:11px 13px 11px 18px;border:1px solid #d9ddd9;border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(41,55,61,.08)}.global-search-hero__icon{color:#079fc0;font-size:30px;font-weight:900}.global-search-hero input{min-width:0;flex:1;height:48px;border:0!important;outline:0;background:transparent!important;color:#202b31;font-size:17px;box-shadow:none!important}.global-search-hero button{height:46px;padding:0 24px;border:0;border-radius:13px;background:#079fc0;color:#fff;font-weight:850;cursor:pointer}.global-search-summary{display:flex;justify-content:space-between;align-items:center;padding:0 4px;color:#69767c}.global-search-summary strong{color:#263238}.global-search-welcome{padding:38px;border:1px dashed #cdd4d5;border-radius:18px;background:rgba(255,255,255,.62);text-align:center}.global-search-welcome strong{display:block;margin-bottom:8px;font-size:20px}.global-search-welcome p{margin:0;color:#68757b}.global-search-section{overflow:hidden;border:1px solid #dddcd7;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(36,50,56,.05)}.global-search-section>header{display:flex;align-items:center;gap:10px;padding:15px 18px;border-bottom:1px solid #eceae6}.global-search-section>header>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#e8f8fb;color:#078ba5;font-weight:900}.global-search-section h2{margin:0;flex:1;font-size:16px}.global-search-section header b{display:grid;place-items:center;min-width:28px;height:25px;padding:0 8px;border-radius:999px;background:#eef1f2;color:#5f6c72;font-size:12px}.global-search-results{display:grid}.global-search-result{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px 18px;border-bottom:1px solid #efede9;color:#263238;text-decoration:none;transition:background .15s ease,transform .15s ease}.global-search-result:last-child{border-bottom:0}.global-search-result:hover{background:#f4fbfc}.global-search-result__mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#edf8fa;color:#078ca5;font-weight:900}.global-search-result--legacy .global-search-result__mark{background:#fff3df;color:#a8640a}.global-search-result>div{display:grid;gap:3px;min-width:0}.global-search-result strong,.global-search-result p,.global-search-result small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result p{margin:0;color:#68757b;font-size:13px}.global-search-result small{color:#879298}.global-search-result em{color:#078ca5;font-size:12px;font-style:normal;font-weight:850}
.global-search-page .app-global-search{display:none}
@media(max-width:1050px){.app-global-search{left:auto;right:170px;width:260px;transform:none}}
@media(max-width:760px){.app-global-search{position:fixed;top:auto;right:14px;bottom:14px;left:14px;width:auto;transform:none}.app-global-search kbd{display:none}.global-search-header{padding:12px 16px}.global-search-content{width:min(100% - 20px,1180px);padding-top:14px}.global-search-hero{padding:8px 8px 8px 13px}.global-search-hero button{padding:0 15px}.global-search-result{grid-template-columns:38px minmax(0,1fr);padding:13px}.global-search-result em{display:none}.global-search-summary{align-items:flex-start;flex-direction:column;gap:3px}}

/* Stage 4.8.14 — polished final procurement dossier */
body.final-report-page{background:#eef2f6!important;color:#172033!important;color-scheme:light;min-height:100vh;padding:24px 20px 48px}
body.final-report-page .app-global-search{position:fixed;top:18px;right:24px;z-index:50}
.final-report-sheet{max-width:1180px;margin:52px auto 0;background:#fff;padding:40px 46px;border:1px solid #dde5ee;border-radius:20px;box-shadow:0 18px 55px rgba(15,23,42,.13);color:#172033;line-height:1.45}
.final-report-sheet *{box-sizing:border-box}
.final-report-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px}
.final-report-actions a,.final-report-actions button{min-height:44px;border-radius:12px;font-weight:800}
.final-report-header{position:relative;border:1px solid #dce5ee;border-radius:18px;padding:28px 30px;margin-bottom:20px;background:linear-gradient(135deg,#f8fbfd 0%,#eef7f8 100%);overflow:hidden}
.final-report-header:after{content:"";position:absolute;right:-60px;top:-80px;width:230px;height:230px;border-radius:50%;background:rgba(0,156,181,.09)}
.final-report-header>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;color:#64748b;position:relative;z-index:1}
.final-report-header>div:first-child strong{color:#172033;font-size:22px;letter-spacing:.01em}
.final-report-header>div:first-child span{font-size:13px;text-transform:uppercase;letter-spacing:.09em}
.final-report-status{display:inline-flex;align-items:center;gap:7px;margin-top:22px;padding:7px 12px;border:1px solid #8bd1b7;background:#e9f8f1;color:#08704f;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.04em;position:relative;z-index:1}
.final-report-status:before{content:"✓";display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#0b8b62;color:#fff;font-size:12px}
.final-report-header h1{font-size:34px;line-height:1.15;margin:16px 0 8px;max-width:760px;color:#142033;position:relative;z-index:1}
.final-report-header p{font-size:18px;margin:0;color:#475569;position:relative;z-index:1}
.final-report-summary,.final-report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.final-report-summary{margin-bottom:24px}
.final-report-summary>div,.final-report-grid>div{border:1px solid #dce4ec;border-radius:14px;padding:15px 16px;background:#fff;min-width:0}
.final-report-summary>div:last-child{background:#ecf9f4;border-color:#a8dcca}
.final-report-summary span,.final-report-grid span{display:block;color:#718096;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;margin-bottom:6px}
.final-report-summary strong,.final-report-grid strong{display:block;color:#172033;font-size:15px;overflow-wrap:anywhere}
.final-report-summary>div:last-child strong{font-size:20px;color:#08704f}
.final-report-grid small{display:block;color:#64748b;margin-top:5px;overflow-wrap:anywhere}
.final-report-section{margin-top:22px;padding:22px 24px;border:1px solid #dfe6ee;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(15,23,42,.045);break-inside:auto}
.final-report-section h2{display:flex;align-items:center;gap:10px;font-size:20px;line-height:1.3;color:#172033;margin:0 0 18px;padding:0 0 12px;border-bottom:1px solid #e2e8f0}
.final-report-section h2:before{content:"";width:5px;height:24px;border-radius:4px;background:#11a5bb;flex:0 0 auto}
.final-report-section h3{color:#172033}
.final-report-section table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;border:1px solid #dce4ec;border-radius:12px;overflow:hidden}
.final-report-section th,.final-report-section td{padding:10px 12px;vertical-align:top;text-align:left;border:0;border-bottom:1px solid #e4eaf0}
.final-report-section th{background:#f3f7fa;color:#526174;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.final-report-section tr:last-child td{border-bottom:0}
.final-report-section tbody tr:nth-child(even){background:#fafcfd}
.report-offer,.report-round,.report-finance-card,.report-delivery-card,.report-decision{border:1px solid #dce4ec;border-radius:14px;padding:17px 18px;margin:12px 0;background:#fbfdfe;break-inside:avoid}
.report-offer-head{display:grid;grid-template-columns:1fr auto;gap:4px 16px;margin-bottom:12px;align-items:center}
.report-offer-head strong{font-size:17px;color:#172033}
.report-offer-head span{font-size:19px;font-weight:900;color:#0b7183}
.report-offer-head small{grid-column:1/-1;color:#64748b}
.report-docs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:13px;font-size:13px}
.report-docs strong{margin-right:3px}
.report-docs a{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #c9d8e5;border-radius:9px;background:#fff;color:#145d72;text-decoration:none!important;font-weight:700;overflow-wrap:anywhere}
.report-docs a:before{content:"📄"}
.report-docs a:hover{border-color:#13a3ba;background:#eefbfc}
.report-round>span{float:right;padding:4px 8px;background:#e9f8f1;color:#08704f;border-radius:999px;font-size:12px;font-weight:800}
.report-chip{display:inline-block;padding:6px 9px;background:#eaf1f6;color:#435267;border-radius:999px;margin:8px 5px 0 0;font-size:12px;font-weight:700}
.report-decision{background:linear-gradient(135deg,#effaf6,#f8fcfb);border-color:#a9dccb}
.report-decision span,.report-decision strong,.report-decision b{display:block}
.report-decision span{font-size:11px;text-transform:uppercase;letter-spacing:.055em;color:#58706a;font-weight:800}
.report-decision strong{font-size:23px;margin:4px 0;color:#17382f}
.report-decision b{font-size:21px;color:#08704f}
.report-decision a{display:inline-flex;margin-top:8px;color:#0b7183;font-weight:800}
.report-muted,.report-note{color:#64748b;background:#f5f7fa;padding:12px 14px;border-radius:10px}
.report-timeline{position:relative;margin:4px 0 0 8px;padding-left:28px;border-left:2px solid #c7d6e2}
.report-timeline>div{position:relative;margin:0 0 18px;padding:11px 14px;border:1px solid #dce5ed;border-radius:11px;background:#fbfdfe}
.report-timeline>div:before{content:"✓";position:absolute;left:-39px;top:12px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#13a3ba;color:#fff;font-size:11px;font-weight:900;box-shadow:0 0 0 4px #fff}
.report-timeline time,.report-timeline strong,.report-timeline span{display:block}
.report-timeline time{font-size:11px;color:#718096;text-transform:uppercase;letter-spacing:.04em}
.report-timeline strong{margin-top:2px;color:#172033}
.report-timeline span{font-size:13px;color:#526174;margin-top:2px}
.final-report-footer{border-top:1px solid #d8e0e8;margin-top:30px;padding-top:15px;display:flex;justify-content:space-between;gap:20px;color:#64748b;font-size:12px}
@media(max-width:900px){body.final-report-page{padding:0}.final-report-sheet{margin:0;padding:22px 16px;border-radius:0;border:0}.final-report-summary,.final-report-grid{grid-template-columns:1fr}.final-report-header{padding:22px 18px}.final-report-header h1{font-size:27px}.final-report-actions{align-items:stretch;flex-direction:column}.final-report-actions a,.final-report-actions button{width:100%}.final-report-section{padding:18px 14px;overflow-x:auto}.final-report-header>div:first-child{flex-direction:column}.final-report-page .app-global-search{display:none!important}}
@media print{html,body.final-report-page{background:#fff!important;color:#000!important;color-scheme:light!important}body.final-report-page{padding:0!important}.final-report-page .app-global-search,.final-report-page .app-header,.final-report-page .site-header,.final-report-page footer:not(.final-report-footer),.no-print{display:none!important}.final-report-sheet{max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none}.final-report-header{background:#fff!important;border:1px solid #bbb;border-radius:0}.final-report-header:after{display:none}.final-report-section{box-shadow:none;border-color:#bbb;border-radius:0;page-break-inside:auto}.final-report-summary>div,.final-report-grid>div,.report-offer,.report-round,.report-finance-card,.report-delivery-card,.report-decision{background:#fff!important;border-color:#bbb!important;page-break-inside:avoid}.final-report-section table{border-color:#aaa;border-radius:0}.final-report-section th{background:#eee!important;color:#000!important}.final-report-section th,.final-report-section td{border-color:#ccc!important}.report-docs a{padding:0;border:0;background:transparent;color:#000!important}.report-docs a:before{content:""}.final-report-header h1,.final-report-header p,.final-report-summary strong,.final-report-grid strong,.report-offer-head strong,.report-offer-head span,.report-decision strong,.report-decision b{color:#000!important}a{color:#000!important;text-decoration:none!important}@page{size:A4;margin:12mm}}

/* Stage 4.8.15: rebidding result breakdown in the final report */
.report-round-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.report-round-head>strong{font-size:17px}
.report-round-head>span{padding:4px 8px;background:#e9f8f1;color:#08704f;border-radius:999px;font-size:12px;font-weight:800}
.report-rebidding-table{margin-top:14px}
.report-rebidding-table td small{display:block;margin-top:3px;color:#64748b;font-size:11px}
.report-saving{display:block;color:#08704f;white-space:nowrap}
@media(max-width:760px){.report-rebidding-table{display:block;overflow-x:auto;white-space:nowrap}}
@media print{.report-round-head>span{background:#fff!important;color:#000!important;border:1px solid #888}.report-saving{color:#000!important}}

/* Stage 4.8.18: QR access to report documents in printed/PDF dossier */
.report-document{display:inline-flex;vertical-align:middle;margin:4px 8px 4px 0}
.report-document-print{display:none}
@media print{
  .report-docs{display:flex!important;flex-direction:column;align-items:stretch;gap:10px}
  .report-document{display:block;margin:0;break-inside:avoid;page-break-inside:avoid}
  .report-document-link{display:none!important}
  .report-document-print{display:flex!important;align-items:center;gap:12px;padding:9px;border:1px solid #cbd5e1;border-radius:8px;background:#fff}
  .report-document-print img{display:block;width:88px;height:88px;min-width:88px;object-fit:contain}
  .report-document-print span{display:flex;min-width:0;flex-direction:column;gap:5px}
  .report-document-print strong{font-size:12px;line-height:1.3;color:#0f172a;overflow-wrap:anywhere}
  .report-document-print small{font-size:7.5px;line-height:1.25;color:#475569;overflow-wrap:anywhere}
  td .report-document-print{padding:5px;gap:7px}
  td .report-document-print img{width:64px;height:64px;min-width:64px}
}

/* Stage 4.8.19: reliable embedded QR codes without external image services */
.report-qr-unavailable{display:grid;place-items:center;width:88px;height:88px;min-width:88px;padding:6px;border:1px dashed #94a3b8;background:#f8fafc;color:#64748b;font-size:10px;text-align:center}
@media print{
  .report-document-print{min-height:106px}
  .report-document-print img{image-rendering:pixelated;background:#fff}
  .report-document-print small{font-size:9px;line-height:1.35;color:#475569}
  td .report-qr-unavailable{width:64px;height:64px;min-width:64px}
}

/* Stage 4.8.20 — offline browser-generated QR codes in printed report */
.report-qr-box{display:grid;place-items:center;width:96px;height:96px;min-width:96px;background:#fff;border:1px solid #cbd5e1;padding:4px;box-sizing:border-box}
.report-qr-box img,.report-qr-box svg,.report-qr-box canvas{display:block;width:88px!important;height:88px!important;max-width:88px!important;max-height:88px!important;image-rendering:pixelated}
@media print{
  .report-qr-box{width:30mm;height:30mm;min-width:30mm;padding:1.5mm;border:0.25mm solid #cbd5e1}
  .report-qr-box img,.report-qr-box svg,.report-qr-box canvas{width:27mm!important;height:27mm!important;max-width:27mm!important;max-height:27mm!important}
}

/* Stage 4.8.21: embedded synchronous QR rendering for print */
.report-qr-box > svg {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
}
@media print {
  .report-qr-box > svg {
    width: 30mm !important;
    height: 30mm !important;
  }
}

/* Stage 4.8.23: direct client-side PDF download */
.pdf-export-holder{position:fixed;left:-100000px;top:0;width:794px;background:#fff;z-index:-1}
.pdf-export-sheet{width:794px!important;max-width:none!important;margin:0!important;padding:22px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}
.pdf-export-sheet .final-report-section{box-shadow:none!important;break-inside:auto}
.pdf-export-sheet .report-offer,.pdf-export-sheet .report-round,.pdf-export-sheet .report-finance-card,.pdf-export-sheet .report-delivery-card,.pdf-export-sheet .report-decision,.pdf-export-sheet tr{break-inside:avoid;page-break-inside:avoid}
#download-final-report-pdf:disabled{opacity:.7;cursor:wait}
.registry-page{max-width:1500px;margin:0 auto;padding:28px}.registry-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.registry-hero p{margin:8px 0 0;color:#667085}.registry-toolbar{margin:20px 0;padding:16px}.registry-toolbar form{display:flex;gap:12px}.registry-toolbar input{flex:1}.registry-list{padding:20px}.registry-cards,.document-registry{display:grid;gap:12px}.registry-card{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(180px,1fr) minmax(160px,.8fr) minmax(130px,.6fr) auto;gap:18px;align-items:center;padding:18px;border:1px solid #e6e9ef;border-radius:16px;background:#fff}.registry-card h3{margin:5px 0}.registry-card p,.registry-card small,.registry-card span,.document-registry-row span,.document-registry-row small{display:block;color:#667085}.registry-number{font-weight:800}.registry-status{display:inline-block!important;padding:7px 10px;border-radius:999px;background:#eef4ff;color:#3157a4!important;font-weight:700}.document-registry-row{display:grid;grid-template-columns:44px minmax(260px,1fr) 130px auto auto;gap:16px;align-items:center;padding:15px;border:1px solid #e6e9ef;border-radius:14px;background:#fff}.document-registry-icon{font-size:24px}.registry-link{font-weight:700}.registry-card .button,.document-registry-row .button{white-space:nowrap}@media(max-width:900px){.registry-page{padding:16px}.registry-hero,.registry-toolbar form{align-items:stretch;flex-direction:column}.registry-card,.document-registry-row{grid-template-columns:1fr}.document-registry-icon{display:none}}

/* Stage 4.8.30: readable document registry cards on dark theme */
.document-registry-row > div:nth-child(2) > strong{
  display:block;
  color:#1f2937 !important;
  font-size:16px;
  line-height:1.35;
  font-weight:800;
  overflow-wrap:anywhere;
}
.document-registry-row > div:nth-child(2) > span{
  color:#475467 !important;
  margin-top:4px;
}
.document-registry-row > div:nth-child(2) > small,
.document-registry-row > div:nth-child(3) > span,
.document-registry-row > div:nth-child(3) > small{
  color:#667085 !important;
}
.document-registry-row .registry-link{
  color:#3157a4 !important;
  text-decoration:none;
}
.document-registry-row .registry-link:hover{
  color:#1d3f83 !important;
  text-decoration:underline;
}

.winner-route-details.is-special-account-opening .winner-route-summary-side em,.winner-route-details.is-special-account-activation .winner-route-summary-side em{background:#ede9fe;color:#6d28d9}

/* Stage 4.8.32 — supplier special-account tasks */
.supplier-action-notice{display:grid;grid-template-columns:46px minmax(0,1fr);gap:16px;margin:0 0 18px;padding:20px;border:1px solid rgba(31,41,55,.12);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.06)}
.supplier-action-notice--urgent{border-color:rgba(220,38,38,.28);background:linear-gradient(135deg,rgba(254,242,242,.98),#fff)}
.supplier-action-notice--done{border-color:rgba(5,150,105,.25);background:linear-gradient(135deg,rgba(236,253,245,.95),#fff)}
.supplier-action-notice__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;font-size:24px;font-weight:800;background:#fee2e2;color:#b91c1c}
.supplier-action-notice--done .supplier-action-notice__icon{background:#d1fae5;color:#047857}
.supplier-action-notice__body>span{display:block;margin-bottom:4px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#b91c1c}
.supplier-action-notice--done .supplier-action-notice__body>span{color:#047857}
.supplier-action-notice h2{margin:0 0 8px;color:#111827;font-size:22px;line-height:1.25}
.supplier-action-notice p{margin:0 0 16px;color:#374151;line-height:1.55}
.supplier-action-form{display:grid;gap:12px;max-width:680px}.supplier-action-form label{display:grid;gap:6px}.supplier-action-form label span{font-size:13px;font-weight:700;color:#374151}.supplier-action-form input,.supplier-action-form textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:11px;padding:11px 12px;background:#fff;color:#111827;font:inherit}.supplier-action-form input:focus,.supplier-action-form textarea:focus{outline:3px solid rgba(59,130,246,.15);border-color:#3b82f6}.supplier-action-form .primary-button{justify-self:start}
.supplier-special-code{display:inline-grid;gap:3px;margin:0 0 14px;padding:10px 14px;border-radius:11px;background:#f8fafc;border:1px solid #cbd5e1}.supplier-special-code small{color:#64748b}.supplier-special-code strong{font-size:18px;letter-spacing:.04em;color:#0f172a}
@media(max-width:640px){.supplier-action-notice{grid-template-columns:1fr}.supplier-action-notice__icon{width:40px;height:40px}.supplier-action-notice h2{font-size:19px}}

/* Stage 4.8.37 — light payment registry */
.finance-payments-page{max-width:1680px;margin:0 auto;padding:28px;background:#f5f7fa;color:#172033;min-height:100vh;--finance-border:#dfe5ec;--finance-muted:#667085;--finance-primary:#078f8b;--finance-primary-dark:#05716e;--finance-surface:#fff}
.finance-payments-page .finance-page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:20px;padding:0 2px;background:transparent;border:0;box-shadow:none}
.finance-payments-page .finance-page-header h1{margin:6px 0 4px;color:#172033;font-size:30px;line-height:1.15}
.finance-payments-page .finance-page-header p{margin:0;color:#667085;font-size:14px}
.finance-payments-page .workspace-kicker,.finance-payments-page .panel-kicker{color:#078f8b}
.finance-payments-page .back-link{color:#667085}.finance-payments-page .back-link:hover{color:#078f8b}
.finance-page-header__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.finance-payments-page .finance-switch-link{min-height:42px;color:#078f8b;border:1px solid #cfe7e6;background:#eef8f7;border-radius:10px}
.finance-payments-page .finance-switch-link:hover{color:#05716e;border-color:#9fd1cf;background:#e3f4f3}
.finance-payments-page .button{border-color:#078f8b;background:#078f8b;color:#fff;box-shadow:none}
.finance-payments-page .button:hover{background:#05716e;border-color:#05716e}
.finance-payments-page .button--secondary{color:#344054;border:1px solid #d0d5dd;background:#fff}
.finance-payments-page .button--secondary:hover{color:#172033;border-color:#98a2b3;background:#f9fafb}
.finance-excel-button::before{content:'⇩';margin-right:7px;color:#078f8b;font-weight:900}
.finance-payments-page .finance-kpis{gap:12px;margin:0 0 16px}
.finance-payments-page .finance-kpi{min-height:88px;border:1px solid var(--finance-border);background:#fff;box-shadow:0 5px 16px rgba(16,24,40,.05)}
.finance-payments-page .finance-kpi small{color:#667085}.finance-payments-page .finance-kpi strong{color:#172033}
.finance-payments-page .finance-kpi__icon{color:#078f8b;border-color:#cfe7e6;background:#eef8f7}
.finance-payments-page .finance-toolbar{border:1px solid var(--finance-border);border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(16,24,40,.04)}
.finance-payments-page .finance-toolbar form{grid-template-columns:minmax(260px,1fr) 180px 210px 160px 160px auto auto}
.finance-payments-page .finance-toolbar input,.finance-payments-page .finance-toolbar select,.finance-payments-page .finance-action input,.finance-payments-page .finance-action textarea,.finance-payments-page .finance-manual-payment input,.finance-payments-page .finance-manual-payment select,.finance-payments-page .finance-manual-payment textarea{color:#172033;border:1px solid #d0d5dd;background:#fff}
.finance-payments-page .finance-toolbar input::placeholder,.finance-payments-page .finance-manual-payment input::placeholder,.finance-payments-page textarea::placeholder{color:#98a2b3}
.finance-payments-page .finance-toolbar input:focus,.finance-payments-page .finance-toolbar select:focus,.finance-payments-page .finance-manual-payment input:focus,.finance-payments-page .finance-manual-payment select:focus,.finance-payments-page .finance-manual-payment textarea:focus{border-color:#078f8b;box-shadow:0 0 0 3px rgba(7,143,139,.12)}
.finance-payments-page .finance-date-filter{color:#475467}
.finance-payments-page .finance-reset{color:#667085}.finance-payments-page .finance-reset:hover{color:#078f8b}
.finance-payments-page .finance-register{border:1px solid var(--finance-border);background:#fff;box-shadow:0 8px 24px rgba(16,24,40,.06);overflow:visible}
.finance-payments-page .finance-register__header{border-bottom:1px solid #eaecf0}
.finance-payments-page .finance-register__header h2{color:#172033}.finance-payments-page .finance-register__header p{color:#667085}
.finance-payments-page .finance-register__count{min-width:auto;color:#078f8b;border-color:#cfe7e6;background:#eef8f7}
.finance-payments-page .payment-card{border-bottom:1px solid #eaecf0;background:#fff}
.finance-payments-page .payment-card:hover{background:#f8fbfb}
.finance-payments-page .payment-card__number,.finance-payments-page .payment-card__title,.finance-payments-page .payment-card__supplier>strong,.finance-payments-page .payment-card__amount>strong,.finance-payments-page .payment-card__timeline>strong,.finance-payments-page .payment-file-button{color:#172033}
.finance-payments-page .payment-card__meta,.finance-payments-page .payment-card__label{color:#667085}
.finance-payments-page .finance-status{color:#475467;border-color:#e4e7ec;background:#f2f4f7}
.finance-payments-page .finance-status--accounting_payment,.finance-payments-page .finance-status--waiting_document,.finance-payments-page .finance-status--awaiting_funds_confirmation{color:#9a6700;border-color:#f4df9b;background:#fffae8}
.finance-payments-page .finance-status--paid,.finance-payments-page .finance-status--payment_order_sent,.finance-payments-page .finance-status--funds_received,.finance-payments-page .finance-status--delivery_info_submitted{color:#067647;border-color:#abefc6;background:#ecfdf3}
.finance-payments-page .finance-status--accounting_revision,.finance-payments-page .finance-status--revision{color:#b42318;border-color:#fecdca;background:#fef3f2}
.finance-payments-page .payment-file-button__icon{color:#078f8b;border-color:#cfe7e6;background:#eef8f7}
.finance-payments-page .payment-document-empty{color:#667085;border-color:#d0d5dd;background:#f9fafb}
.finance-payments-page .payment-open-request,.finance-payments-page .finance-action--menu>summary{color:#667085;border-color:#d0d5dd;background:#fff}
.finance-payments-page .payment-open-request:hover,.finance-payments-page .finance-action--menu>summary:hover{color:#078f8b;border-color:#9fd1cf;background:#eef8f7}
.finance-payments-page .finance-action--menu form{color:#172033;border-color:#d0d5dd;background:#fff;box-shadow:0 20px 50px rgba(16,24,40,.18)}
.finance-payments-page .flash--success{color:#067647;border-color:#abefc6;background:#ecfdf3}.finance-payments-page .flash--error{color:#b42318;border-color:#fecdca;background:#fef3f2}
.finance-manual-payment[open]::before{content:'';position:fixed;inset:0;z-index:99;background:rgba(15,23,42,.48);backdrop-filter:blur(2px)}
.finance-payments-page .finance-manual-payment>form{position:fixed;z-index:100;left:50%;right:auto;top:50%;transform:translate(-50%,-50%);width:min(820px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;padding:26px;border:1px solid #d0d5dd;border-radius:18px;background:#fff;box-shadow:0 24px 80px rgba(16,24,40,.28)}
.finance-manual-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.finance-manual-heading h3{margin:3px 0 0;color:#172033;font-size:22px}
.finance-manual-close{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #d0d5dd;border-radius:10px;color:#667085;background:#fff;font-size:25px;line-height:1;cursor:pointer}.finance-manual-close:hover{color:#172033;background:#f2f4f7}
.finance-payments-page .finance-manual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.finance-payments-page .finance-manual-grid label{gap:7px;color:#344054;font-size:13px;font-weight:700}
.finance-payments-page .finance-manual-grid input,.finance-payments-page .finance-manual-grid select,.finance-payments-page .finance-manual-grid textarea{min-height:44px;padding:10px 12px;border-radius:9px;box-sizing:border-box}
.finance-payments-page .finance-manual-actions{gap:10px;padding-top:4px}
@media(max-width:1200px){.finance-payments-page .finance-toolbar form{grid-template-columns:1fr 1fr 1fr}.finance-payments-page .finance-search{grid-column:1/-1}}
@media(max-width:760px){.finance-payments-page{padding:16px}.finance-payments-page .finance-page-header{align-items:flex-start;flex-direction:column}.finance-page-header__actions{width:100%;justify-content:flex-start}.finance-payments-page .finance-toolbar form{grid-template-columns:1fr}.finance-payments-page .finance-search{grid-column:auto}.finance-payments-page .finance-manual-grid{grid-template-columns:1fr}.finance-payments-page .finance-manual-wide{grid-column:auto}}


/* Stage 4.8.38 — payment registry manual entry/editor */
.finance-payment-modal[hidden]{display:none!important}
.finance-payment-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}
.finance-payment-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.5);backdrop-filter:blur(3px)}
.finance-payment-modal__dialog{position:relative;z-index:1;width:min(920px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;padding:28px;border:1px solid #d0d5dd;border-radius:20px;background:#fff;box-shadow:0 28px 90px rgba(16,24,40,.3)}
body.payment-modal-open{overflow:hidden}
.finance-payment-modal .finance-manual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.finance-payment-modal .finance-manual-grid label,.finance-document-grid label{display:grid;gap:8px;min-width:0;color:#344054;font-size:13px;font-weight:700}
.finance-payment-modal input,.finance-payment-modal select,.finance-payment-modal textarea{width:100%;min-height:46px;box-sizing:border-box;padding:11px 13px;color:#172033;border:1px solid #d0d5dd;border-radius:10px;background:#fff;font:inherit;outline:none}
.finance-payment-modal textarea{min-height:96px;resize:vertical}
.finance-payment-modal input:focus,.finance-payment-modal select:focus,.finance-payment-modal textarea:focus{border-color:#078f8b;box-shadow:0 0 0 3px rgba(7,143,139,.12)}
.finance-payment-modal input[type=file]{padding:8px;background:#f9fafb}
.finance-payment-modal .finance-manual-wide{grid-column:1/-1}
.finance-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px;padding:18px;border:1px solid #e4e7ec;border-radius:14px;background:#f9fafb}
.finance-document-grid small{min-height:16px;color:#667085;font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.finance-payment-modal .finance-manual-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #eaecf0}
.payment-edit-button{min-height:38px;padding:0 12px;border:1px solid #cfe7e6;border-radius:10px;color:#078f8b;background:#eef8f7;font-size:12px;font-weight:800;cursor:pointer}
.payment-edit-button:hover{border-color:#9fd1cf;background:#e3f4f3}
.payment-card__attachments{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.payment-card__attachments a{padding:5px 8px;border:1px solid #d0d5dd;border-radius:7px;color:#475467;background:#fff;font-size:10px;font-weight:700}
.finance-payments-page .finance-status--sent_to_accounting{color:#9a6700;border-color:#f4df9b;background:#fffae8}
.finance-payments-page .finance-status--unpaid{color:#b42318;border-color:#fecdca;background:#fef3f2}
@media(max-width:760px){.finance-payment-modal{padding:10px}.finance-payment-modal__dialog{width:calc(100vw - 20px);max-height:calc(100vh - 20px);padding:20px}.finance-payment-modal .finance-manual-grid,.finance-document-grid{grid-template-columns:1fr}.finance-payment-modal .finance-manual-wide{grid-column:auto}}

/* Stage 4.8.43: payment amount summary and public read-only registry */
.finance-amount-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0 14px;
}
.finance-amount-summary article {
  background: #fff;
  border: 1px solid #e4e9f0;
  border-radius: 16px;
  padding: 18px 20px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .05);
}
.finance-amount-summary small {
  display: block;
  margin-bottom: 7px;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.finance-amount-summary strong {
  color: #172033;
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.15;
}
.finance-amount-summary--paid { border-top: 4px solid #35c98b !important; }
.finance-amount-summary--sent { border-top: 4px solid #24a6a1 !important; }
.finance-amount-summary--unpaid { border-top: 4px solid #f2b84b !important; }
.public-payment-registry .app-global-search,
.public-payment-registry .finance-kpis { display: none; }
.public-payment-registry .finance-page-header { padding-top: 24px; }
@media (max-width: 980px) {
  .finance-amount-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .finance-amount-summary { grid-template-columns: 1fr; }
}


/* Stage 4.8.45 — stable payment card layout for internal and public registry */
.finance-payments-page .payment-card--internal{
    grid-template-columns:minmax(190px,1.15fr) minmax(210px,1.25fr) minmax(150px,.8fr) minmax(190px,1fr) minmax(150px,.85fr) minmax(180px,.95fr) auto;
    grid-template-areas:
        "request supplier amount timeline status document actions"
        "comment comment comment comment comment comment comment";
    align-items:center;
}
.finance-payments-page .payment-card--public{
    grid-template-columns:minmax(210px,1.2fr) minmax(220px,1.15fr) minmax(170px,.8fr) minmax(210px,1fr) minmax(150px,.75fr);
    grid-template-areas:
        "request supplier amount timeline status"
        "comment comment comment comment comment";
    align-items:center;
}
.finance-payments-page .payment-card__request{grid-area:request}
.finance-payments-page .payment-card__supplier{grid-area:supplier}
.finance-payments-page .payment-card__amount{grid-area:amount}
.finance-payments-page .payment-card__timeline{grid-area:timeline}
.finance-payments-page .payment-card__status{grid-area:status}
.finance-payments-page .payment-card__document{grid-area:document}
.finance-payments-page .payment-card__actions{grid-area:actions}
.finance-payments-page .payment-card__comment{
    grid-area:comment!important;
    grid-column:auto!important;
    width:auto;
    min-width:0;
    margin:2px 0 0;
    padding:12px 14px;
    border:1px solid #e4e7ec;
    border-radius:10px;
    background:#f8fafc;
}
.finance-payments-page .payment-card__comment p{
    margin:0;
    color:#344054;
    font-size:13px;
    line-height:1.55;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    word-break:normal;
}
.finance-payments-page .payment-card__actions{align-self:center;flex-wrap:nowrap}
@media(max-width:1350px){
    .finance-payments-page .payment-card--internal,
    .finance-payments-page .payment-card--public{
        grid-template-columns:repeat(3,minmax(0,1fr));
        grid-template-areas:
            "request supplier amount"
            "timeline status document"
            "comment comment comment"
            "actions actions actions";
    }
    .finance-payments-page .payment-card--public{
        grid-template-areas:
            "request supplier amount"
            "timeline status status"
            "comment comment comment";
    }
    .finance-payments-page .payment-card__actions{justify-content:flex-start}
}
@media(max-width:760px){
    .finance-payments-page .payment-card--internal,
    .finance-payments-page .payment-card--public{
        grid-template-columns:1fr;
        grid-template-areas:
            "request" "supplier" "amount" "timeline" "status" "document" "comment" "actions";
    }
    .finance-payments-page .payment-card--public{
        grid-template-areas:"request" "supplier" "amount" "timeline" "status" "comment";
    }
}


/* Stage 4.8.47 — real light redesign for UPD registry (main layout loads style.css) */
.upd-registry-page{
  color-scheme:light;
  box-sizing:border-box;
  min-height:100vh;
  max-width:none;
  margin:0;
  padding:28px clamp(18px,3vw,48px) 56px;
  background:#f4f7fb;
  color:#172033;
}
.upd-registry-page *{box-sizing:border-box}
.upd-registry-page .standalone-topbar{
  min-height:auto;
  margin:0 0 20px;
  padding:26px 28px;
  border:1px solid #e3e8ef;
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 28px rgba(15,23,42,.06);
  color:#172033;
}
.upd-registry-page .standalone-topbar h1{margin:5px 0 8px;font-size:32px;line-height:1.15;color:#172033}
.upd-registry-page .standalone-topbar p{margin:0;color:#667085;line-height:1.5}
.upd-registry-page .back-link{color:#667085}
.upd-registry-page .back-link:hover{color:#078c86}
.upd-registry-page .workspace-kicker{display:block;color:#078c86;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.upd-registry-page .button{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;
  border:1px solid #078c86;border-radius:11px;background:#078c86;color:#fff;
  font:inherit;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:none;
}
.upd-registry-page .button:hover{background:#067b76;border-color:#067b76;color:#fff}
.upd-registry-page .button--secondary{border-color:#d0d5dd;background:#fff;color:#344054}
.upd-registry-page .button--secondary:hover{border-color:#9ca8b8;background:#f8fafc;color:#172033}
.upd-registry-page .panel{border:1px solid #e3e8ef;border-radius:17px;background:#fff;box-shadow:0 5px 20px rgba(15,23,42,.045)}
.upd-registry-page .flash{color:#172033}
.upd-registry-page .registry-modern-filter{margin:0 0 18px;padding:16px}
.upd-registry-page .registry-modern-filter form{display:grid;grid-template-columns:minmax(260px,1fr) 260px auto auto;gap:10px;align-items:center}
.upd-registry-page .registry-modern-filter input,
.upd-registry-page .registry-modern-filter select,
.upd-registry-page .registry-editor input,
.upd-registry-page .registry-editor select,
.upd-registry-page .registry-editor textarea{
  min-height:42px;width:100%;padding:10px 12px;border:1px solid #d0d5dd;border-radius:10px;
  outline:0;background:#fff;color:#172033;font:inherit;
}
.upd-registry-page .registry-modern-filter input:focus,
.upd-registry-page .registry-modern-filter select:focus,
.upd-registry-page .registry-editor input:focus,
.upd-registry-page .registry-editor select:focus,
.upd-registry-page .registry-editor textarea:focus{border-color:#0a9d96;box-shadow:0 0 0 3px rgba(10,157,150,.12)}
.upd-registry-page .registry-card-list{display:grid;gap:14px}
.upd-registry-page .registry-modern-card{padding:20px 22px;border:1px solid #e3e8ef;border-radius:18px;background:#fff;box-shadow:0 6px 24px rgba(15,23,42,.05)}
.upd-registry-page .registry-card-main{display:grid;grid-template-columns:minmax(290px,1.55fr) minmax(170px,.65fr) minmax(220px,.75fr);gap:22px;align-items:center}
.upd-registry-page .registry-card-main h3{margin:7px 0 5px;color:#172033;font-size:18px}
.upd-registry-page .registry-card-main p{margin:0 0 4px;color:#344054;font-weight:750}
.upd-registry-page .registry-card-main small{display:block;color:#667085;line-height:1.45}
.upd-registry-page .registry-card-main>div:nth-child(2)>strong{display:block;color:#172033;font-size:20px;margin-bottom:5px}
.upd-registry-page .registry-card-main>div:nth-child(3){display:flex;align-items:flex-start;justify-content:flex-start;gap:10px;flex-wrap:wrap}
.upd-registry-page .registry-card-label{display:block;margin-bottom:6px;color:#667085;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.upd-registry-page .registry-source-badge{display:inline-flex;padding:5px 9px;border:1px solid #bfe7e3;border-radius:999px;background:#ecfbf9;color:#087f78;font-size:11px;font-weight:850}
.upd-registry-page .finance-status{min-height:31px;border-color:#d8e2e8;background:#f7f9fb;color:#344054}
.upd-registry-page .finance-status--uploaded,
.upd-registry-page .finance-status--original_received,
.upd-registry-page .finance-status--sent_to_accounting{border-color:#b7ebcf;background:#ecfdf3;color:#067647}
.upd-registry-page .finance-status--revision{border-color:#fecaca;background:#fff1f1;color:#b42318}
.upd-registry-page .finance-status--expected,
.upd-registry-page .finance-status--waiting_document{border-color:#fde3a7;background:#fffaeb;color:#b54708}
.upd-registry-page .registry-card-comment{margin-top:15px;padding:13px 15px;border:1px solid #e4e7ec;border-radius:11px;background:#f8fafc}
.upd-registry-page .registry-card-comment strong{color:#475467;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.upd-registry-page .registry-card-comment p{margin:6px 0 0;color:#344054;line-height:1.55}
.upd-registry-page .registry-card-actions{display:flex;justify-content:flex-end;gap:9px;align-items:flex-start;margin-top:14px}
.upd-registry-page .payment-delete-button{min-height:42px;padding:0 15px;border:1px solid #f1b6b6;border-radius:11px;background:#fff;color:#b42318;font-weight:800;cursor:pointer}
.upd-registry-page .payment-delete-button:hover{background:#fff1f1}
.upd-registry-page .registry-add,.upd-registry-page .registry-card-actions details{position:relative}
.upd-registry-page .registry-add>summary,.upd-registry-page .registry-card-actions summary{list-style:none}
.upd-registry-page .registry-add>summary::-webkit-details-marker,.upd-registry-page .registry-card-actions summary::-webkit-details-marker{display:none}
.upd-registry-page .registry-editor{width:min(780px,92vw);padding:21px;border:1px solid #dfe5ec;border-radius:17px;background:#fff;color:#172033;box-shadow:0 24px 70px rgba(15,23,42,.22)}
.upd-registry-page .registry-add>.registry-editor{position:absolute;right:0;top:calc(100% + 10px);z-index:100}
.upd-registry-page .registry-card-actions details>.registry-editor{position:absolute;right:0;top:calc(100% + 9px);z-index:90}
.upd-registry-page .registry-editor h3{margin:0 0 16px;color:#172033}
.upd-registry-page .registry-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.upd-registry-page .registry-form-grid label{display:flex;flex-direction:column;gap:6px;color:#344054;font-size:12px;font-weight:800}
.upd-registry-page .registry-form-wide{grid-column:1/-1}
.upd-registry-page .registry-check{flex-direction:row!important;align-items:center}
.upd-registry-page .registry-check input{width:auto;min-height:auto}
.upd-registry-page .empty-state{color:#667085;background:#fff}
@media(max-width:900px){
 .upd-registry-page{padding:18px}
 .upd-registry-page .standalone-topbar{align-items:flex-start;flex-direction:column;padding:22px}
 .upd-registry-page .registry-modern-filter form{grid-template-columns:1fr 1fr}
 .upd-registry-page .registry-card-main{grid-template-columns:1fr 1fr}
 .upd-registry-page .registry-card-main>div:first-child{grid-column:1/-1}
}
@media(max-width:620px){
 .upd-registry-page .registry-modern-filter form,.upd-registry-page .registry-card-main,.upd-registry-page .registry-form-grid{grid-template-columns:1fr}
 .upd-registry-page .registry-form-wide{grid-column:auto}
 .upd-registry-page .registry-add>.registry-editor,.upd-registry-page .registry-card-actions details>.registry-editor{position:fixed;left:12px;right:12px;top:5vh;width:auto;max-height:90vh;overflow:auto}
 .upd-registry-page .registry-card-actions{justify-content:flex-start;flex-wrap:wrap}
}


/* Stage 4.8.48 — light redesign for Documents registry */
.documents-registry-page{
  color-scheme:light;box-sizing:border-box;min-height:100vh;max-width:none;margin:0;
  padding:28px clamp(18px,3vw,48px) 56px;background:#f4f7fb;color:#172033;
}
.documents-registry-page *{box-sizing:border-box}
.documents-registry-page .standalone-topbar{
  display:flex;align-items:flex-start;justify-content:space-between;gap:24px;min-height:auto;
  margin:0 0 20px;padding:26px 28px;border:1px solid #e3e8ef;border-radius:20px;
  background:#fff;box-shadow:0 8px 28px rgba(15,23,42,.06);color:#172033;
}
.documents-registry-page .standalone-topbar h1{margin:5px 0 8px;font-size:32px;line-height:1.15;color:#172033}
.documents-registry-page .standalone-topbar p{margin:0;color:#667085;line-height:1.5}
.documents-registry-page .back-link{color:#667085;text-decoration:none}
.documents-registry-page .back-link:hover{color:#078c86}
.documents-registry-page .workspace-kicker{display:block;color:#078c86;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.documents-registry-page .registry-modern-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.documents-registry-page .button{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;
  border:1px solid #078c86;border-radius:11px;background:#078c86;color:#fff;
  font:inherit;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:none;
}
.documents-registry-page .button:hover{background:#067b76;border-color:#067b76;color:#fff}
.documents-registry-page .button--secondary{border-color:#d0d5dd;background:#fff;color:#344054}
.documents-registry-page .button--secondary:hover{border-color:#9ca8b8;background:#f8fafc;color:#172033}
.documents-registry-page .panel{border:1px solid #e3e8ef;border-radius:17px;background:#fff;box-shadow:0 5px 20px rgba(15,23,42,.045)}
.documents-registry-page .flash{color:#172033}
.documents-registry-page .registry-modern-filter{margin:0 0 18px;padding:16px}
.documents-registry-page .registry-modern-filter form{display:grid;grid-template-columns:minmax(280px,1fr) 260px auto auto;gap:10px;align-items:center}
.documents-registry-page .registry-modern-filter input,
.documents-registry-page .registry-modern-filter select,
.documents-registry-page .registry-editor input,
.documents-registry-page .registry-editor select,
.documents-registry-page .registry-editor textarea{
  width:100%;min-height:42px;padding:10px 12px;border:1px solid #d0d5dd;border-radius:10px;
  outline:0;background:#fff;color:#172033;font:inherit;
}
.documents-registry-page .registry-modern-filter input:focus,
.documents-registry-page .registry-modern-filter select:focus,
.documents-registry-page .registry-editor input:focus,
.documents-registry-page .registry-editor select:focus,
.documents-registry-page .registry-editor textarea:focus{border-color:#0a9d96;box-shadow:0 0 0 3px rgba(10,157,150,.12)}
.documents-registry-page .registry-card-list{display:grid;gap:14px}
.documents-registry-page .registry-modern-card{padding:20px 22px;border:1px solid #e3e8ef;border-radius:18px;background:#fff;box-shadow:0 6px 24px rgba(15,23,42,.05)}
.documents-registry-page .registry-card-main{display:grid;grid-template-columns:minmax(320px,1.6fr) minmax(160px,.55fr) minmax(190px,.65fr);gap:22px;align-items:center}
.documents-registry-page .registry-card-main h3{margin:7px 0 5px;color:#172033;font-size:18px;overflow-wrap:anywhere}
.documents-registry-page .registry-card-main p{margin:0 0 4px;color:#344054;font-weight:750}
.documents-registry-page .registry-card-main small{display:block;color:#667085;line-height:1.45}
.documents-registry-page .registry-card-main>div:nth-child(2)>strong{display:block;color:#172033;font-size:20px;margin-bottom:5px}
.documents-registry-page .registry-card-main>div:nth-child(3){display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-start}
.documents-registry-page .registry-card-label{display:block;margin-bottom:6px;color:#667085;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.documents-registry-page .registry-source-badge{display:inline-flex;padding:5px 9px;border:1px solid #bfe7e3;border-radius:999px;background:#ecfbf9;color:#087f78;font-size:11px;font-weight:850}
.documents-registry-page .registry-link{display:inline-flex;align-items:center;min-height:42px;padding:0 13px;border:1px solid #d0d5dd;border-radius:11px;background:#fff;color:#344054;font-size:13px;font-weight:800;text-decoration:none}
.documents-registry-page .registry-link:hover{background:#f8fafc;color:#172033}
.documents-registry-page .registry-card-comment{margin-top:15px;padding:13px 15px;border:1px solid #e4e7ec;border-radius:11px;background:#f8fafc}
.documents-registry-page .registry-card-comment strong{color:#475467;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.documents-registry-page .registry-card-comment p{margin:6px 0 0;color:#344054;line-height:1.55}
.documents-registry-page .registry-card-actions{display:flex;justify-content:flex-end;gap:9px;align-items:flex-start;margin-top:14px}
.documents-registry-page .payment-delete-button{min-height:42px;padding:0 15px;border:1px solid #f1b6b6;border-radius:11px;background:#fff;color:#b42318;font-weight:800;cursor:pointer}
.documents-registry-page .payment-delete-button:hover{background:#fff1f1}
.documents-registry-page .registry-add,.documents-registry-page .registry-card-actions details{position:relative}
.documents-registry-page .registry-add>summary,.documents-registry-page .registry-card-actions summary{list-style:none}
.documents-registry-page .registry-add>summary::-webkit-details-marker,.documents-registry-page .registry-card-actions summary::-webkit-details-marker{display:none}
.documents-registry-page .registry-editor{width:min(780px,92vw);padding:21px;border:1px solid #dfe5ec;border-radius:17px;background:#fff;color:#172033;box-shadow:0 24px 70px rgba(15,23,42,.22)}
.documents-registry-page .registry-add>.registry-editor{position:absolute;right:0;top:calc(100% + 10px);z-index:100}
.documents-registry-page .registry-card-actions details>.registry-editor{position:absolute;right:0;top:calc(100% + 9px);z-index:90}
.documents-registry-page .registry-editor h3{margin:0 0 16px;color:#172033}
.documents-registry-page .registry-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.documents-registry-page .registry-form-grid label{display:flex;flex-direction:column;gap:6px;color:#344054;font-size:12px;font-weight:800}
.documents-registry-page .registry-form-wide{grid-column:1/-1}
.documents-registry-page .empty-state{padding:42px;text-align:center;color:#667085;background:#fff}
@media(max-width:900px){
 .documents-registry-page{padding:18px}
 .documents-registry-page .standalone-topbar{align-items:flex-start;flex-direction:column;padding:22px}
 .documents-registry-page .registry-modern-tools{justify-content:flex-start}
 .documents-registry-page .registry-modern-filter form{grid-template-columns:1fr 1fr}
 .documents-registry-page .registry-card-main{grid-template-columns:1fr 1fr}
 .documents-registry-page .registry-card-main>div:first-child{grid-column:1/-1}
}
@media(max-width:620px){
 .documents-registry-page .registry-modern-filter form,.documents-registry-page .registry-card-main,.documents-registry-page .registry-form-grid{grid-template-columns:1fr}
 .documents-registry-page .registry-form-wide{grid-column:auto}
 .documents-registry-page .registry-add>.registry-editor,.documents-registry-page .registry-card-actions details>.registry-editor{position:fixed;left:12px;right:12px;top:5vh;width:auto;max-height:90vh;overflow:auto}
 .documents-registry-page .registry-card-actions{justify-content:flex-start;flex-wrap:wrap}
}

/* Stage 4.8.49 — light redesign for Contracts registry */
.contracts-registry-page{color-scheme:light;box-sizing:border-box;min-height:100vh;max-width:none;margin:0;padding:28px clamp(18px,3vw,48px) 56px;background:#f4f7fb;color:#172033}
.contracts-registry-page *{box-sizing:border-box}
.contracts-registry-page .standalone-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;min-height:auto;margin:0 0 18px;padding:26px 28px;border:1px solid #e3e8ef;border-radius:20px;background:#fff;box-shadow:0 8px 28px rgba(15,23,42,.06);color:#172033}
.contracts-registry-page .standalone-topbar h1{margin:5px 0 8px;font-size:32px;line-height:1.15;color:#172033}
.contracts-registry-page .standalone-topbar p{margin:0;color:#667085;line-height:1.5}
.contracts-registry-page .back-link{color:#667085;text-decoration:none}.contracts-registry-page .back-link:hover{color:#078c86}
.contracts-registry-page .workspace-kicker{display:block;color:#078c86;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.contracts-registry-page .registry-modern-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.contracts-registry-page .button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;border:1px solid #078c86;border-radius:11px;background:#078c86;color:#fff;font:inherit;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:none}
.contracts-registry-page .button:hover{background:#067b76;border-color:#067b76;color:#fff}
.contracts-registry-page .button--secondary{border-color:#d0d5dd;background:#fff;color:#344054}.contracts-registry-page .button--secondary:hover{border-color:#9ca8b8;background:#f8fafc;color:#172033}
.contracts-registry-page .panel{border:1px solid #e3e8ef;border-radius:17px;background:#fff;box-shadow:0 5px 20px rgba(15,23,42,.045)}
.contracts-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.contracts-summary article{padding:18px 20px;border:1px solid #e3e8ef;border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(15,23,42,.045)}
.contracts-summary small{display:block;margin-bottom:7px;color:#667085;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.contracts-summary strong{color:#172033;font-size:26px}.contracts-summary--approved{border-top:4px solid #35c98b!important}.contracts-summary--active{border-top:4px solid #24a6a1!important}.contracts-summary--revision{border-top:4px solid #f2b84b!important}
.contracts-registry-page .registry-modern-filter{margin:0 0 18px;padding:16px}
.contracts-registry-page .registry-modern-filter form{display:grid;grid-template-columns:minmax(300px,1fr) 260px auto auto;gap:10px;align-items:center}
.contracts-registry-page .registry-modern-filter input,.contracts-registry-page .registry-modern-filter select{width:100%;min-height:42px;padding:10px 12px;border:1px solid #d0d5dd;border-radius:10px;outline:0;background:#fff;color:#172033;font:inherit}
.contracts-registry-page .registry-modern-filter input:focus,.contracts-registry-page .registry-modern-filter select:focus{border-color:#0a9d96;box-shadow:0 0 0 3px rgba(10,157,150,.12)}
.contracts-registry-page .registry-card-list{display:grid;gap:14px}
.contracts-registry-page .registry-modern-card{padding:20px 22px;border:1px solid #e3e8ef;border-radius:18px;background:#fff;box-shadow:0 6px 24px rgba(15,23,42,.05)}
.contracts-registry-page .registry-card-main{display:grid;grid-template-columns:minmax(280px,1.35fr) minmax(220px,1fr) minmax(190px,.8fr) minmax(150px,.65fr) auto;gap:22px;align-items:center}
.contracts-registry-page .registry-card-main h3{margin:8px 0 5px;color:#172033;font-size:18px;overflow-wrap:anywhere}.contracts-registry-page .registry-card-main p{margin:0;color:#667085}
.contracts-registry-page .registry-card-main>div:nth-child(2)>strong,.contracts-registry-page .registry-card-main>div:nth-child(3)>strong{display:block;color:#172033;font-size:17px;margin-bottom:5px}
.contracts-registry-page .registry-card-main small{display:block;color:#667085;line-height:1.45}
.contracts-registry-page .registry-card-label{display:block;margin-bottom:6px;color:#667085;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.contracts-registry-page .registry-source-badge{display:inline-flex;padding:5px 9px;border:1px solid #bfe7e3;border-radius:999px;background:#ecfbf9;color:#087f78;font-size:11px;font-weight:850}
.contracts-registry-page .registry-status{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border:1px solid #d0d5dd;border-radius:999px;background:#f8fafc;color:#475467;font-size:12px;font-weight:850;margin-bottom:7px}
.contracts-registry-page .registry-status--approved{color:#087443;border-color:#b7ebd0;background:#ecfdf3}.contracts-registry-page .registry-status--revision{color:#9a6700;border-color:#f4df9b;background:#fffae8}.contracts-registry-page .registry-status--legal_review,.contracts-registry-page .registry-status--buyer_review,.contracts-registry-page .registry-status--mto_review{color:#175cd3;border-color:#b2ccff;background:#eff8ff}.contracts-registry-page .registry-status--skipped{color:#475467;background:#f2f4f7}.contracts-registry-page .registry-status--draft,.contracts-registry-page .registry-status--buyer_contract{color:#7a2e0e;border-color:#fedf89;background:#fffaeb}
.contracts-registry-page .contract-card-action{display:flex;justify-content:flex-end}.contracts-registry-page .empty-state{padding:42px;text-align:center;color:#667085;background:#fff}.contracts-registry-page .empty-state h3{margin:0 0 7px;color:#172033}
@media(max-width:1050px){.contracts-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.contracts-registry-page .registry-card-main{grid-template-columns:1fr 1fr}.contracts-registry-page .registry-card-main>div:first-child{grid-column:1/-1}.contracts-registry-page .contract-card-action{justify-content:flex-start}}
@media(max-width:760px){.contracts-registry-page{padding:18px}.contracts-registry-page .standalone-topbar{align-items:flex-start;flex-direction:column;padding:22px}.contracts-registry-page .registry-modern-tools{justify-content:flex-start}.contracts-registry-page .registry-modern-filter form{grid-template-columns:1fr 1fr}.contracts-registry-page .registry-card-main{grid-template-columns:1fr}}
@media(max-width:520px){.contracts-summary,.contracts-registry-page .registry-modern-filter form{grid-template-columns:1fr}.contracts-registry-page .button{width:100%}}
/* Stage 4.8.50 — contract registry CRUD */
.contracts-registry-page .registry-modern-tools{align-items:flex-start}.contracts-registry-page .registry-add{position:relative}.contracts-registry-page .registry-add>summary{list-style:none;cursor:pointer}.contracts-registry-page .registry-add>summary::-webkit-details-marker{display:none}.contracts-registry-page .registry-add[open]>summary{background:#087f78;color:#fff}.contracts-registry-page .registry-add .registry-editor{position:absolute;z-index:30;right:0;top:50px;width:min(760px,calc(100vw - 40px));padding:22px;border:1px solid #dfe6ee;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.2)}
.contracts-registry-page .registry-editor h3{margin:0 0 18px;color:#172033}.contracts-registry-page .registry-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contracts-registry-page .registry-form-grid label{display:grid;gap:7px;color:#344054;font-size:12px;font-weight:800}.contracts-registry-page .registry-form-wide{grid-column:1/-1}.contracts-registry-page .registry-editor input,.contracts-registry-page .registry-editor select,.contracts-registry-page .registry-editor textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#172033;font:inherit}.contracts-registry-page .registry-editor textarea{resize:vertical}.contracts-registry-page .registry-editor input:focus,.contracts-registry-page .registry-editor select:focus,.contracts-registry-page .registry-editor textarea:focus{outline:0;border-color:#0a9d96;box-shadow:0 0 0 3px rgba(10,157,150,.12)}
.contracts-registry-page .contract-card-action{gap:8px;flex-wrap:wrap}.contracts-registry-page .contract-amount{margin-top:5px;color:#087f78!important;font-weight:800}.contracts-registry-page .registry-card-comment{margin-top:18px;padding:14px 16px;border:1px solid #e4e7ec;border-radius:12px;background:#f8fafc}.contracts-registry-page .registry-card-comment strong{display:block;margin-bottom:5px;color:#344054;font-size:12px}.contracts-registry-page .registry-card-comment p{margin:0;color:#475467;line-height:1.55}.contracts-registry-page .contract-registry-actions{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding-top:16px;border-top:1px solid #eef1f5}.contracts-registry-page .contract-registry-actions details{position:relative}.contracts-registry-page .contract-registry-actions details>summary{list-style:none;cursor:pointer}.contracts-registry-page .contract-registry-actions details>summary::-webkit-details-marker{display:none}.contracts-registry-page .contract-registry-actions .registry-editor{margin-top:12px;width:min(760px,calc(100vw - 70px));padding:20px;border:1px solid #dfe6ee;border-radius:16px;background:#f9fbfc}.contracts-registry-page .payment-delete-button{min-height:42px;padding:0 16px;border:1px solid #fda29b;border-radius:10px;background:#fff;color:#b42318;font-weight:800;cursor:pointer}.contracts-registry-page .payment-delete-button:hover{background:#fff1f0}
@media(max-width:760px){.contracts-registry-page .registry-add .registry-editor{position:fixed;left:12px;right:12px;top:70px;width:auto;max-height:calc(100vh - 90px);overflow:auto}.contracts-registry-page .registry-form-grid{grid-template-columns:1fr}.contracts-registry-page .registry-form-wide{grid-column:auto}.contracts-registry-page .contract-registry-actions{flex-direction:column}.contracts-registry-page .contract-registry-actions .registry-editor{width:100%;box-sizing:border-box}}

/* Stage 4.8.51 — dashboard and requests control polish */
.dashboard-control-panel{display:grid;grid-template-columns:auto minmax(260px,1fr) minmax(190px,.55fr) minmax(170px,.45fr) auto auto auto;gap:12px;align-items:end;padding:16px;margin-bottom:15px;overflow:visible}
.dashboard-control-panel label,.request-filter-shell label{display:grid;gap:6px;color:#59616a;font-size:12px;font-weight:800}
.dashboard-control-panel input,.dashboard-control-panel select,.request-filter-shell input,.request-filter-shell select{width:100%;box-sizing:border-box;border:1px solid #ddd6c8;border-radius:10px;background:#fff;color:#1d232b;padding:10px 11px;font:inherit}
.dashboard-company-tabs,.request-company-tabs,.request-code-row,.request-quick-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.request-chip{border:1px solid #d8d0c3;border-radius:999px;background:#fff;color:#59616a;padding:9px 13px;font-weight:800;cursor:pointer}
.request-chip.is-active{background:#079fc0;border-color:#079fc0;color:#fff}
.dashboard-report-link{white-space:nowrap}
.dashboard-quick-control{display:grid;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(180px,.55fr));gap:12px;margin-bottom:15px}
.dashboard-quick-control__title,.dashboard-control-card{border:1px solid #ebe5da;border-radius:14px;background:#fff;padding:15px 17px}
.dashboard-quick-control__title span,.dashboard-quick-control__title strong,.dashboard-control-card span,.dashboard-control-card strong{display:block}
.dashboard-quick-control__title span{color:#079fc0;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.dashboard-quick-control__title strong{margin-top:5px;color:#171c22}
.dashboard-control-card{display:flex;align-items:center;justify-content:space-between;color:#303840}.dashboard-control-card strong{font-size:24px}.dashboard-control-card.is-danger{border-color:#efb5b5;background:#fff8f8;color:#a12626}
.request-filter-shell{padding:16px;margin-bottom:16px;display:grid;gap:14px;overflow:visible}
.request-code-row{padding-top:2px}.request-code-row>span{font-size:12px;font-weight:800;color:#59616a;margin-right:2px}
.request-toggle{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important;padding:9px 12px;border:1px solid #ddd6c8;border-radius:999px;background:#fff;cursor:pointer}.request-toggle input{width:auto!important;margin:0}.request-toggle:has(input:checked){border-color:#079fc0;background:#eefafd;color:#087e99}
.request-filter-main{display:grid;grid-template-columns:minmax(260px,1fr) minmax(190px,.45fr) minmax(170px,.4fr) auto;gap:12px;align-items:end}.request-search{min-width:0}
.request-advanced{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;padding-top:14px;border-top:1px solid #ebe5da}.request-advanced[hidden]{display:none}
.request-filter-actions{display:flex;align-items:center;gap:10px;padding-top:2px}.request-found{margin-left:auto;color:#69717a}.request-found strong{color:#171c22}
@media(max-width:1250px){.dashboard-control-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-company-tabs{grid-column:1/-1}.dashboard-report-link{justify-self:start}.request-filter-main{grid-template-columns:repeat(2,minmax(0,1fr))}.request-advanced{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.dashboard-control-panel,.dashboard-quick-control,.request-filter-main,.request-advanced{grid-template-columns:1fr}.dashboard-company-tabs,.request-company-tabs,.request-code-row,.request-quick-filters{align-items:stretch}.request-chip{flex:1}.request-filter-actions{flex-wrap:wrap}.request-found{width:100%;margin-left:0}.dashboard-report-link{justify-self:stretch;text-align:center}}

/* Stage 4.8.52 — cached-style and filter interaction repair */
.dashboard-control-panel *, .request-filter-shell * { box-sizing: border-box; }
.dashboard-control-panel .primary-button,
.dashboard-control-panel .secondary-button,
.dashboard-control-panel .dashboard-report-link,
.request-filter-shell .primary-button,
.request-filter-shell .secondary-button { min-height: 44px; }
.request-filter-main > label,
.dashboard-control-panel > label { min-width: 0; }
.request-filter-main label > span,
.dashboard-control-panel label > span { display: block; }
.request-filter-main select,
.dashboard-control-panel select { min-height: 44px; }
.request-filter-shell [data-advanced-toggle] { white-space: nowrap; }

/* Stage 4.8.54: legacy request archive */
.danger-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid #d7aaa5;border-radius:10px;background:#fff5f4;color:#9b3b31;font:inherit;font-weight:750;cursor:pointer}.danger-button:hover{background:#fbe8e5}.legacy-page-head{align-items:center}.legacy-card-actions{display:flex;flex-wrap:wrap;gap:10px}

/* Stage 4.8.56: simplified supplier offer flow */
.supplier-procurement-summary{margin-bottom:16px}
.supplier-inline-offer{margin-top:16px}
.supplier-inline-offer .supplier-offer-cards{margin-top:18px}
.supplier-push-settings{margin:18px 22px 0;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#fff;overflow:hidden}
.supplier-push-settings>summary{cursor:pointer;padding:15px 18px;font-weight:800;color:#24313d;list-style:none}
.supplier-push-settings>summary::-webkit-details-marker{display:none}
.supplier-push-settings>summary:after{content:'Настроить';float:right;color:#079fc0;font-size:12px}
.supplier-push-settings[open]>summary:after{content:'Скрыть'}
.supplier-push-settings .supplier-content-card{margin:0;border:0;border-top:1px solid #ebe5da;border-radius:0}
@media(max-width:760px){.supplier-push-settings{margin:12px 0 0}.supplier-inline-offer{margin-top:12px}}

/* Stage 4.8.57: separate requested positions and supplier offer names */
.supplier-request-items-list{display:grid;gap:12px;margin-top:18px}.supplier-request-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:start;padding:16px;border:1px solid #ded8cc;border-radius:16px;background:#fff}.supplier-request-item__number{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:#e8f8f6;color:#087f79;font-weight:800}.supplier-request-item__body h3{margin:0 0 6px;font-size:17px}.supplier-request-item__body p{margin:0;color:#5d6873;white-space:normal}.supplier-request-item__qty{min-width:86px;text-align:right}.supplier-request-item__qty strong{display:block;font-size:18px}.supplier-request-item__qty span{color:#697582}.supplier-offered-name{display:block;margin:14px 0}.supplier-offered-name textarea{width:100%;resize:vertical;min-height:76px}.supplier-inline-offer{margin-top:18px}@media(max-width:700px){.supplier-request-item{grid-template-columns:38px minmax(0,1fr)}.supplier-request-item__qty{grid-column:2;text-align:left}}

/* Stage 4.8.58 — VAT input mode on supplier offer */
.supplier-vat-mode{grid-column:1/-1;border:1px solid #d8ddd9;border-radius:16px;padding:16px 18px;margin:0;background:#f8faf9;display:grid;gap:10px}
.supplier-vat-mode legend{font-weight:800;padding:0 8px;color:#12212b}
.supplier-vat-mode label{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #e1e6e3;border-radius:12px;background:#fff;cursor:pointer}
.supplier-vat-mode label:has(input:checked){border-color:#17b8ae;box-shadow:0 0 0 2px rgba(23,184,174,.12)}
.supplier-vat-mode input{margin-top:3px}
.supplier-vat-mode small{color:#66757d;line-height:1.45}

/* Stage 4.8.60 — compact supplier commercial-offer editor */
.supplier-offer-card{padding:0;overflow:hidden;background:#fff}
.supplier-offer-card__head{align-items:center;padding:15px 16px;border-bottom:0;background:#fff;cursor:default}
.supplier-offer-card__title{min-width:0;flex:1}
.supplier-offer-card__title h3{margin:4px 0;font-size:15px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.supplier-offer-card__title p{margin:6px 0 0;color:#607078;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.supplier-offer-card__compact{display:grid;grid-template-columns:auto auto minmax(100px,auto) auto;align-items:center;gap:14px;color:#65717a;font-size:12px}
.supplier-offer-card__compact span{white-space:nowrap}
.supplier-offer-card__compact strong{color:#172129;font-size:16px;text-align:right;white-space:nowrap}
.supplier-position-toggle{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #cbd5da;border-radius:9px;background:#fff;color:#26343d;font:inherit;font-weight:750;cursor:pointer}
.supplier-position-toggle i{font-style:normal;transition:transform .2s ease}.supplier-offer-line.is-expanded .supplier-position-toggle i{transform:rotate(180deg)}
.supplier-offer-card__body{display:none;padding:16px;border-top:1px solid #e3e8ea;background:#faf9f6}
.supplier-offer-line.is-expanded .supplier-offer-card__body{display:block}
.supplier-offer-cards{gap:10px}
.supplier-offer-card__price-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.supplier-calculation-box,.supplier-total-cell--card{padding:10px!important;min-height:auto!important}
.supplier-calculation-box span,.supplier-total-cell--card span{font-size:10px!important}
.supplier-calculation-box output,.supplier-total-cell--card output{font-size:16px!important}
.supplier-position-summary{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}
.supplier-position-summary>div{padding:9px 10px}
.supplier-position-summary strong{font-size:15px}
.supplier-extra-disclosure,.supplier-details-disclosure{margin-top:12px;border:1px solid #d9e0e3;border-radius:11px;background:#fff}
.supplier-extra-disclosure>summary,.supplier-details-disclosure>summary{display:flex;justify-content:space-between;gap:12px;padding:11px 13px;cursor:pointer;color:#26343d;font-weight:800;list-style:none}
.supplier-extra-disclosure>summary::-webkit-details-marker,.supplier-details-disclosure>summary::-webkit-details-marker{display:none}
.supplier-extra-disclosure>summary:after,.supplier-details-disclosure>summary:after{content:'▾';margin-left:auto;color:#16887e;font-size:18px;line-height:1}
.supplier-extra-disclosure[open]>summary:after,.supplier-details-disclosure[open]>summary:after{content:'▴'}
.supplier-extra-disclosure>summary span,.supplier-details-disclosure>summary span{color:#87929a;font-size:11px;font-weight:500}
.supplier-extra-disclosure .supplier-extra-costs{margin:0;border:0;border-top:1px solid #e5e9eb;border-radius:0}
.supplier-details-disclosure .supplier-offer-details-grid{margin-top:0!important;padding:14px!important;border-top:1px solid #e5e9eb!important}
.supplier-vat-mode{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px!important}
.supplier-vat-mode legend{grid-column:1/-1;margin-bottom:2px}
.supplier-vat-mode>label{min-height:46px!important;padding:9px 11px!important}
.supplier-vat-mode>small{grid-column:1/-1}
.supplier-offer-actions--sticky{position:sticky;z-index:30;bottom:10px;align-items:center;margin:16px -8px -8px;padding:12px;border:1px solid #d6e0e3;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 10px 32px rgba(20,31,38,.16);backdrop-filter:blur(10px)}
@media(max-width:900px){.supplier-offer-card__head{align-items:flex-start}.supplier-offer-card__compact{grid-template-columns:auto auto;justify-items:end}.supplier-position-toggle{grid-column:1/-1}.supplier-vat-mode{grid-template-columns:1fr}}
@media(max-width:600px){.supplier-offer-card__head{display:block}.supplier-offer-card__compact{margin-top:12px;grid-template-columns:1fr 1fr 1fr}.supplier-position-toggle{grid-column:1/-1;width:100%;justify-content:center}.supplier-offer-card__price-grid{grid-template-columns:1fr}.supplier-offer-actions--sticky{bottom:4px;display:grid;grid-template-columns:1fr 1fr}.supplier-offer-card__title p{white-space:normal}}


/* STAGE 4.8.61 — dense supplier offer editor without accordion decisions */
.supplier-inline-offer{padding:16px}
.supplier-inline-offer .supplier-section-head{margin-bottom:10px}
.supplier-inline-offer .supplier-section-head h2{margin-bottom:0}
.supplier-offer-cards{gap:8px!important}
.supplier-offer-card{border-radius:10px!important;overflow:visible!important}
.supplier-offer-card__head{padding:10px 12px!important;align-items:flex-start!important;border-bottom:1px solid #e1e5e7!important;background:#f7f9f9!important}
.supplier-offer-card__title h3{margin:2px 0!important;font-size:13px!important;line-height:1.28!important;-webkit-line-clamp:2}
.supplier-offer-card__title small{font-size:10px!important}
.supplier-offer-card__title p,.supplier-offer-card__compact,.supplier-position-toggle{display:none!important}
.supplier-offer-card__body{display:block!important;padding:10px 12px!important;background:#fff!important}
.supplier-offer-card .supplier-field{gap:3px}
.supplier-offer-card .supplier-field>span{font-size:10px!important;margin-bottom:2px!important}
.supplier-offer-card .supplier-field small{display:none!important}
.supplier-offered-name{margin:0 0 8px!important}
.supplier-offered-name textarea{min-height:38px!important;height:38px!important;padding:7px 9px!important;resize:vertical}
.supplier-item-status{max-width:none!important;margin:0!important}
.supplier-offer-card__price-grid{display:grid!important;grid-template-columns:1.15fr 1fr .7fr repeat(4,.9fr)!important;gap:7px!important;margin-top:0!important;align-items:end}
.supplier-offer-card__price-grid input,.supplier-offer-card__price-grid select{height:34px!important;padding:6px 8px!important}
.supplier-calculation-box,.supplier-total-cell--card{min-height:34px!important;padding:6px 8px!important;border-radius:7px!important}
.supplier-calculation-box span,.supplier-total-cell--card span{font-size:8px!important;margin-bottom:2px!important}
.supplier-calculation-box output,.supplier-total-cell--card output{font-size:13px!important;min-width:0!important;padding:0!important;border:0!important;background:transparent!important}
.supplier-position-summary{display:none!important}
.supplier-details-disclosure{margin-top:8px!important;border:0!important}
.supplier-details-disclosure>summary{display:none!important}
.supplier-details-disclosure .supplier-offer-details-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px!important;margin:0!important;padding:8px 0 0!important;border-top:1px dashed #dfe4e6!important}
.supplier-details-disclosure input,.supplier-details-disclosure select{height:32px!important;padding:5px 7px!important}
.supplier-field--comment{grid-column:span 2!important}
.supplier-field--checkbox label{min-height:32px!important;padding:5px 7px!important}
.supplier-extra-disclosure{margin-top:8px!important;border-radius:8px!important}
.supplier-extra-disclosure>summary{padding:7px 9px!important;font-size:10px!important}
.supplier-extra-disclosure>summary span{display:inline!important;margin-left:8px!important;font-size:9px!important}
.supplier-offer-terms{gap:8px!important;margin-top:12px!important}
.supplier-offer-terms .supplier-field small{display:none!important}
.supplier-offer-terms textarea{min-height:54px!important;height:54px!important}
.supplier-vat-mode{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:6px!important;padding:8px!important}
.supplier-vat-mode legend{font-size:11px!important}
.supplier-vat-mode label{min-height:34px!important;padding:7px 9px!important;font-size:10px!important}
.supplier-vat-mode>small{display:none!important}
.supplier-offer-summary{gap:7px!important;margin-top:10px!important;padding:9px!important}
.supplier-offer-summary>div{padding:8px!important}
.supplier-offer-summary span{font-size:8px!important}
.supplier-offer-summary strong{font-size:14px!important;margin-top:3px!important}
.supplier-offer-summary>small{display:none!important}
.supplier-offer-actions--sticky{margin-top:10px!important;padding:8px!important}
@media(max-width:1200px){.supplier-offer-card__price-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.supplier-details-disclosure .supplier-offer-details-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:760px){.supplier-inline-offer{padding:12px}.supplier-offer-card__price-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.supplier-details-disclosure .supplier-offer-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.supplier-vat-mode{grid-template-columns:1fr!important}.supplier-field--comment{grid-column:1/-1!important}}


.supplier-field>span{
display:block;
white-space:normal!important;
word-break:break-word;
overflow-wrap:anywhere;
line-height:1.2;
font-size:12px;
min-height:30px;
}

/* STAGE 4.8.64: real collapsed supplier details and no duplicated request item title */
.supplier-details-disclosure{margin-top:8px!important;border:1px solid #d9e0e3!important;border-radius:11px!important;background:#fff!important}
.supplier-details-disclosure>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:10px 12px!important;cursor:pointer!important;list-style:none!important;color:#26343d!important}
.supplier-details-disclosure>summary::-webkit-details-marker{display:none!important}
.supplier-details-disclosure>summary [data-details-label]{color:#16887e!important;font-size:13px!important;font-weight:800!important}
.supplier-details-disclosure>summary small{margin-left:auto;color:#87929a!important;font-size:11px!important;font-weight:500!important}
.supplier-details-disclosure>summary:after{content:'▾'!important;color:#16887e!important;font-size:18px!important;line-height:1!important}
.supplier-details-disclosure[open]>summary:after{content:'▴'!important}
.supplier-details-disclosure:not([open])>.supplier-offer-details-grid{display:none!important}
.supplier-details-disclosure[open]>.supplier-offer-details-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0!important;padding:10px 12px 12px!important;border-top:1px solid #e5e9eb!important}
.supplier-offer-card__title>h3{display:none!important}
@media(max-width:760px){.supplier-details-disclosure>summary small{display:none}.supplier-details-disclosure[open]>.supplier-offer-details-grid{grid-template-columns:1fr!important}}

/* Stage 4.8.66 — working item characteristics editor */
.item-characteristics{margin-top:8px;padding:8px;border:1px solid #dde3ea;border-radius:8px;background:#f8fafc;min-width:310px}
.item-characteristics__head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:12px;font-weight:700;color:#475569}
.item-characteristics__head button{position:relative;z-index:2;border:0;background:transparent;color:#2563eb;font-weight:700;cursor:pointer;padding:4px 6px;pointer-events:auto}
.item-characteristic-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(110px,1fr) 30px;gap:6px;margin-top:6px}
.item-characteristic-row input{min-width:0;width:100%;padding:7px 8px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a}
.item-characteristic-row button{border:0;border-radius:6px;background:#fee2e2;color:#b91c1c;cursor:pointer;font-size:18px;line-height:1}
.item-characteristics-view{display:grid;gap:4px;margin-top:7px;padding:8px 10px;border-left:3px solid #94a3b8;background:#f8fafc;color:#334155;font-size:12px}
.item-characteristics-view strong{color:#0f172a}
@media(max-width:700px){.item-characteristics{min-width:0}.item-characteristic-row{grid-template-columns:1fr 1fr 28px}}

/* Stage 4.8.76 — supplier workspace: corporate hero, process line and work center */
.supplier-workspace-hero--corporate{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;padding:34px;background:linear-gradient(135deg,#11181e 0%,#182329 62%,#123c39 100%);color:#fff;border-bottom:0}.supplier-workspace-hero--corporate .supplier-workspace-hero__eyebrow{margin-bottom:12px;color:#65ddd2;font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.supplier-workspace-hero--corporate h1{max-width:760px;margin:0 0 20px;color:#fff;font-size:clamp(28px,3.4vw,44px);line-height:1.08;letter-spacing:-.035em}.supplier-workspace-hero--corporate .supplier-state-pill{background:rgba(47,211,197,.14);border:1px solid rgba(83,225,214,.34);color:#b9fff8}.supplier-workspace-hero--corporate .supplier-workspace-hero__meta{display:grid;gap:0;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(7,14,18,.35);box-shadow:0 18px 40px rgba(0,0,0,.18);backdrop-filter:blur(10px)}.supplier-workspace-hero--corporate .supplier-workspace-hero__meta div{display:grid;gap:5px;padding:17px 19px;border-bottom:1px solid rgba(255,255,255,.1)}.supplier-workspace-hero--corporate .supplier-workspace-hero__meta div:last-child{border-bottom:0}.supplier-workspace-hero--corporate .supplier-workspace-hero__meta small{color:#91a3aa;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.supplier-workspace-hero--corporate .supplier-workspace-hero__meta strong{color:#f7fbfc;font-size:14px;line-height:1.35}.supplier-stage-card--modern{margin:24px 24px 0;padding:22px 24px;border:1px solid #ddd8ce;border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(30,40,45,.06)}.supplier-stage-card--modern .supplier-stage-line{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:0;padding:0;list-style:none}.supplier-stage-card--modern .supplier-stage-line li{position:relative;display:grid;justify-items:center;gap:9px;color:#8a9499;font-size:11px;font-weight:800;text-align:center}.supplier-stage-card--modern .supplier-stage-line li:before{content:"";position:absolute;z-index:0;top:17px;right:50%;width:100%;height:2px;background:#dfe4e4}.supplier-stage-card--modern .supplier-stage-line li:first-child:before{display:none}.supplier-stage-card--modern .supplier-stage-line i{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;border:2px solid #d7dede;border-radius:50%;background:#fff;color:#8a9499;font-style:normal}.supplier-stage-card--modern .supplier-stage-line .is-done{color:#227b72}.supplier-stage-card--modern .supplier-stage-line .is-done:before,.supplier-stage-card--modern .supplier-stage-line .is-current:before{background:#39cfc2}.supplier-stage-card--modern .supplier-stage-line .is-done i{border-color:#39cfc2;background:#39cfc2;color:#082724}.supplier-stage-card--modern .supplier-stage-line .is-current{color:#17252a}.supplier-stage-card--modern .supplier-stage-line .is-current i{border-color:#2dc9bc;background:#e8fbf9;color:#14796f;box-shadow:0 0 0 5px rgba(45,201,188,.13)}.supplier-now-card--workspace{display:grid;grid-template-columns:170px minmax(0,1fr) 150px auto;align-items:center;gap:22px;margin:18px 24px 24px;padding:24px;border:1px solid #d8ddd8;border-radius:18px;background:#fff;color:#1d282e;box-shadow:0 10px 30px rgba(30,40,45,.07)}.supplier-now-card--workspace>div{min-width:0}.supplier-now-card--workspace .supplier-now-card__status,.supplier-now-card--workspace .supplier-now-card__deadline{display:grid;gap:6px;padding:14px 16px;border-radius:13px;background:#f3f5f3}.supplier-now-card--workspace span{color:#78848a;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.supplier-now-card--workspace strong{color:#1d292e;font-size:15px}.supplier-now-card--workspace h2{margin:5px 0 7px;color:#152127;font-size:23px}.supplier-now-card--workspace p{margin:0;color:#657178;line-height:1.5}.supplier-now-card--workspace.supplier-now-card--success{border-color:#b9ded7}.supplier-now-card--workspace.supplier-now-card--attention{border-color:#efd49d}.supplier-now-card--workspace.supplier-now-card--waiting{border-color:#cfdce0}
@media(max-width:980px){.supplier-workspace-hero--corporate{grid-template-columns:1fr}.supplier-now-card--workspace{grid-template-columns:1fr 1fr}.supplier-now-card--workspace .supplier-now-card__action{grid-column:1/-1;grid-row:1}.supplier-now-card--workspace .primary-button{grid-column:1/-1}}
@media(max-width:700px){.supplier-workspace-hero--corporate{padding:25px 18px}.supplier-workspace-hero--corporate h1{font-size:29px}.supplier-stage-card--modern{margin:14px 12px 0;padding:18px 10px;overflow-x:auto}.supplier-stage-card--modern .supplier-stage-line{min-width:620px}.supplier-now-card--workspace{grid-template-columns:1fr;margin:14px 12px 18px;padding:18px}.supplier-now-card--workspace .supplier-now-card__action,.supplier-now-card--workspace .primary-button{grid-column:auto}.supplier-now-card--workspace .supplier-now-card__action{grid-row:auto}}


/* Stage 4.8.78 — supplier workspace content cards, submitted offer and timeline */
.supplier-object-documents--workspace{margin-top:18px}
.supplier-object-documents__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.supplier-object-document{display:flex;flex-direction:column;justify-content:space-between;min-height:210px;padding:22px;border:1px solid #dce3e3;border-radius:18px;background:linear-gradient(145deg,#fff 0%,#f7faf9 100%);box-shadow:0 10px 26px rgba(27,43,49,.06)}
.supplier-object-document__body h3{margin:0 0 10px;color:#17262c;font-size:20px}
.supplier-object-document__body p{margin:0;color:#6a767c;line-height:1.55}
.supplier-object-document__actions{display:flex;gap:10px;margin-top:24px}
.supplier-object-document__actions .primary-button,.supplier-object-document__actions .secondary-button{flex:1;justify-content:center}
.supplier-object-document.is-unavailable{opacity:.72;background:#f5f6f5}
.supplier-document-unavailable{display:flex;align-items:center;justify-content:center;min-height:42px;width:100%;border:1px dashed #cbd3d3;border-radius:10px;color:#7b878c;font-weight:700}
.supplier-submitted-offer-card{overflow:hidden;border:1px solid #c9dedb;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(25,54,58,.07)}
.supplier-submitted-offer-card__head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:linear-gradient(135deg,#14312f,#1b4945);color:#fff}
.supplier-submitted-offer-card__head span{display:block;margin-bottom:5px;color:#9ee8df;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.supplier-submitted-offer-card__head h3{margin:0;color:#fff;font-size:22px}
.supplier-submitted-offer-card__head>strong{white-space:nowrap;color:#fff;font-size:24px}
.supplier-submitted-offer-card__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.supplier-submitted-offer-card__facts>div{display:grid;gap:7px;padding:20px 22px;border-right:1px solid #e6eceb;border-bottom:1px solid #e6eceb}
.supplier-submitted-offer-card__facts>div:nth-child(3){border-right:0}
.supplier-submitted-offer-card__facts>div.wide{grid-column:1/-1;border-right:0}
.supplier-submitted-offer-card__facts span{color:#7c888d;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.supplier-submitted-offer-card__facts strong{color:#1d2b31;font-size:15px;line-height:1.45}
.supplier-submitted-offer-card__footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 22px;background:#f4f7f6;color:#66747a;font-size:12px;font-weight:700}.supplier-submitted-offer-card__footer .secondary-button{min-height:38px;padding:8px 15px}
.supplier-workspace-timeline-card{margin-top:18px}
.supplier-workspace-timeline{position:relative;display:grid;gap:0;padding:4px 0}
.supplier-workspace-timeline article{position:relative;display:grid;grid-template-columns:38px 1fr;gap:14px;min-height:66px;padding:4px 0}
.supplier-workspace-timeline article:not(:last-child):after{content:"";position:absolute;left:18px;top:38px;bottom:-4px;width:2px;background:#dfe5e5}
.supplier-workspace-timeline i{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border:2px solid #d9e0e0;border-radius:50%;background:#fff;color:#a1abad;font-style:normal;font-weight:900}
.supplier-workspace-timeline div{display:grid;align-content:start;gap:4px;padding-top:2px}
.supplier-workspace-timeline strong{color:#26343a;font-size:15px}
.supplier-workspace-timeline span{color:#8a9599;font-size:12px}
.supplier-workspace-timeline article.is-done i{border-color:#38cfc2;background:#38cfc2;color:#092825}
.supplier-workspace-timeline article.is-done:not(:last-child):after{background:#38cfc2}
.supplier-workspace-timeline article.is-current i{border-color:#2bc7ba;background:#e8fbf9;color:#14796f;box-shadow:0 0 0 5px rgba(43,199,186,.12)}
.supplier-workspace-timeline article.is-current strong{color:#14796f}
@media(max-width:760px){.supplier-object-documents__grid{grid-template-columns:1fr}.supplier-object-document{min-height:180px}.supplier-submitted-offer-card__head{align-items:flex-start;flex-direction:column}.supplier-submitted-offer-card__facts{grid-template-columns:1fr}.supplier-submitted-offer-card__facts>div,.supplier-submitted-offer-card__facts>div:nth-child(3){border-right:0}.supplier-submitted-offer-card__facts>div.wide{grid-column:auto}}

/* Stage 4.8.80 — dynamic supplier route and compact submitted offer */
.supplier-stage-line--dynamic{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));overflow-x:auto;scrollbar-width:thin}
.supplier-stage-line--dynamic li{min-width:112px}
.supplier-submitted-offer-card{max-width:100%}
.supplier-submitted-offer-card__head{padding:16px 18px}
.supplier-submitted-offer-card__head h3{font-size:18px}
.supplier-submitted-offer-card__head>strong{font-size:20px}
.supplier-submitted-offer-card__facts>div{padding:13px 16px}
.supplier-submitted-offer-card__items{display:grid;border-top:1px solid #e5ecea;background:#fff}
.supplier-submitted-offer-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:11px 16px;border-bottom:1px solid #edf1f0;color:#52616b;font-size:13px}
.supplier-submitted-offer-item>span:first-child{display:flex;min-width:0;gap:10px;align-items:center;color:#263b49;overflow-wrap:anywhere}
.supplier-submitted-offer-item b{flex:0 0 auto;color:#0a8b83;font-size:11px}
.supplier-submitted-offer-item>strong{white-space:nowrap;color:#17324d;font-size:13px}
@media(max-width:760px){.supplier-stage-line--dynamic{display:flex}.supplier-stage-line--dynamic li{flex:0 0 126px}.supplier-submitted-offer-item{grid-template-columns:1fr auto;gap:7px 12px}.supplier-submitted-offer-item>span:first-child{grid-column:1/-1}.supplier-submitted-offer-card__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-submitted-offer-card__facts .wide{grid-column:1/-1}}

/* Stage 4.8.81 — full submitted supplier offer view */
.supplier-submitted-offer-card--full{display:grid;gap:20px}
.supplier-submitted-offer-card__head p{margin:6px 0 0;color:var(--muted,#667085);font-size:14px;line-height:1.5}
.supplier-submitted-offer-card__items--detailed{display:grid;gap:12px}
.supplier-submitted-offer-position{border:1px solid rgba(15,23,42,.09);border-radius:16px;background:#fff;overflow:hidden}
.supplier-submitted-offer-position>header{display:flex;justify-content:space-between;gap:16px;padding:16px 18px;background:#f8fafc;border-bottom:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-position>header span{display:block;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.supplier-submitted-offer-position>header h4{margin:4px 0 0;font-size:16px;color:#0f172a}
.supplier-submitted-offer-position>header em{align-self:flex-start;border-radius:999px;padding:6px 10px;background:#e8f7f4;color:#0f766e;font-style:normal;font-size:12px;font-weight:700;white-space:nowrap}
.supplier-submitted-offer-position__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(15,23,42,.07)}
.supplier-submitted-offer-position__grid>div{padding:13px 15px;background:#fff;min-width:0}
.supplier-submitted-offer-position__grid>div.wide{grid-column:1/-1}
.supplier-submitted-offer-position__grid span,.supplier-submitted-offer-card__facts--terms span{display:block;color:#64748b;font-size:12px;margin-bottom:5px}
.supplier-submitted-offer-position__grid strong,.supplier-submitted-offer-card__facts--terms strong{display:block;color:#172033;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.supplier-submitted-offer-extras{padding:14px 18px;border-top:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-extras>span{display:block;margin-bottom:8px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase}
.supplier-submitted-offer-extras>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-top:1px dashed rgba(15,23,42,.09);font-size:13px}
.supplier-submitted-offer-card__facts--terms{grid-template-columns:repeat(4,minmax(0,1fr))}
.supplier-submitted-offer-card__totals{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid rgba(15,23,42,.09);border-radius:16px;overflow:hidden;background:#fff}
.supplier-submitted-offer-card__totals>div{padding:14px;border-right:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-card__totals>div:last-child{border-right:0}
.supplier-submitted-offer-card__totals span{display:block;color:#64748b;font-size:12px;margin-bottom:5px}
.supplier-submitted-offer-card__totals strong{font-size:15px;color:#172033}
.supplier-submitted-offer-card__totals .grand{background:#effaf8}
.supplier-submitted-offer-card__totals .grand strong{color:#0f766e;font-size:18px}
@media(max-width:900px){.supplier-submitted-offer-position__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-submitted-offer-card__facts--terms{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-submitted-offer-card__totals{grid-template-columns:repeat(2,minmax(0,1fr))}.supplier-submitted-offer-card__totals .grand{grid-column:1/-1}}
@media(max-width:560px){.supplier-submitted-offer-position>header{display:block}.supplier-submitted-offer-position>header em{display:inline-block;margin-top:10px}.supplier-submitted-offer-position__grid,.supplier-submitted-offer-card__facts--terms,.supplier-submitted-offer-card__totals{grid-template-columns:1fr}.supplier-submitted-offer-position__grid>div.wide,.supplier-submitted-offer-card__facts--terms>div.wide,.supplier-submitted-offer-card__totals .grand{grid-column:auto}}

/* Stage 4.8.83 — понятное отображение отправленного КП */
.supplier-submitted-offer-card--clear{display:grid;gap:16px}
.supplier-submitted-offer-card__head--clear{align-items:stretch}
.supplier-submitted-offer-card__amount{min-width:260px;padding:16px 18px;border-radius:16px;background:#effaf8;border:1px solid rgba(15,118,110,.14)}
.supplier-submitted-offer-card__amount span{display:block;color:#64748b;font-size:12px;margin-bottom:6px}
.supplier-submitted-offer-card__amount strong{display:block;color:#0f766e;font-size:24px;line-height:1.15;white-space:nowrap}
.supplier-submitted-offer-card__items--clear{display:grid;gap:12px}
.supplier-submitted-offer-position--clear>header{padding:15px 18px}
.supplier-submitted-offer-position__primary{display:grid;grid-template-columns:1fr 1.25fr 1.4fr;border-bottom:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-position__primary>div{padding:16px 18px;border-right:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-position__primary>div:last-child{border-right:0}
.supplier-submitted-offer-position__primary span,.supplier-submitted-offer-position__details span,.supplier-submitted-offer-card__conditions span,.supplier-submitted-offer-card__summary span,.supplier-submitted-offer-position__comment span{display:block;color:#64748b;font-size:12px;margin-bottom:5px}
.supplier-submitted-offer-position__primary strong{font-size:17px;color:#172033}
.supplier-submitted-offer-position__primary .total{background:#f8fafc}
.supplier-submitted-offer-position__primary .total strong{color:#0f766e;font-size:19px}
.supplier-submitted-offer-position__details{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-position__details>div{min-width:170px;flex:1;padding:13px 18px;border-right:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-position__details strong,.supplier-submitted-offer-card__conditions strong{font-size:14px;color:#172033;line-height:1.45}
.supplier-submitted-offer-position__comment{padding:14px 18px;background:#fbfcfd}
.supplier-submitted-offer-position__comment p{margin:0;color:#172033;font-size:14px;line-height:1.5}
.supplier-submitted-offer-card__conditions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid rgba(15,23,42,.09);border-radius:16px;overflow:hidden;background:#fff}
.supplier-submitted-offer-card__conditions>div{padding:15px 18px;border-right:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-card__conditions>div.wide{grid-column:1/-1;border-top:1px solid rgba(15,23,42,.07);border-right:0}
.supplier-submitted-offer-card__summary{display:flex;justify-content:flex-end;align-items:stretch;border:1px solid rgba(15,23,42,.09);border-radius:16px;overflow:hidden;background:#fff}
.supplier-submitted-offer-card__summary>div{min-width:220px;padding:14px 18px;border-left:1px solid rgba(15,23,42,.07)}
.supplier-submitted-offer-card__summary .grand{background:#effaf8}
.supplier-submitted-offer-card__summary strong{display:block;color:#172033;font-size:16px}
.supplier-submitted-offer-card__summary .grand strong{color:#0f766e;font-size:20px}
@media(max-width:760px){.supplier-submitted-offer-card__head--clear{display:block}.supplier-submitted-offer-card__amount{margin-top:14px;min-width:0}.supplier-submitted-offer-position__primary{grid-template-columns:1fr}.supplier-submitted-offer-position__primary>div{border-right:0;border-bottom:1px solid rgba(15,23,42,.07)}.supplier-submitted-offer-position__primary>div:last-child{border-bottom:0}.supplier-submitted-offer-card__conditions{grid-template-columns:1fr}.supplier-submitted-offer-card__conditions>div,.supplier-submitted-offer-card__conditions>div.wide{grid-column:auto;border-right:0;border-top:1px solid rgba(15,23,42,.07)}.supplier-submitted-offer-card__conditions>div:first-child{border-top:0}.supplier-submitted-offer-card__summary{display:grid}.supplier-submitted-offer-card__summary>div{min-width:0;border-left:0;border-top:1px solid rgba(15,23,42,.07)}.supplier-submitted-offer-card__summary>div:first-child{border-top:0}}

/* Stage 4.8.84 — attached signed commercial offer */
.supplier-signed-offer-upload{margin:22px 0;padding:20px;border:1px solid #cfe5e2;border-radius:18px;background:#f5fbfa;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 22px;align-items:center}.supplier-signed-offer-upload div>span,.supplier-signed-offer-files__title span{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.supplier-signed-offer-upload div>strong{display:block;margin:5px 0;font-size:18px}.supplier-signed-offer-upload p{margin:0;color:#64748b}.supplier-signed-offer-upload label{display:inline-flex;position:relative;overflow:hidden}.supplier-signed-offer-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.supplier-signed-offer-upload label span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:12px;background:#087f78;color:#fff;font-weight:800;cursor:pointer}.supplier-signed-offer-upload small{grid-column:1/-1;color:#64748b}.supplier-signed-offer-files{margin:18px 0;padding:18px;border:1px solid #dbe7e5;border-radius:16px;background:#fff}.supplier-signed-offer-files__title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.supplier-signed-offer-files__list{display:grid;gap:10px}.supplier-signed-offer-files__list button{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:14px 16px;border:1px solid #dbe7e5;border-radius:13px;background:#f8fbfb;cursor:pointer}.supplier-signed-offer-files__list button strong,.supplier-signed-offer-files__list button span{display:block}.supplier-signed-offer-files__list button span{margin-top:3px;color:#64748b;font-size:12px}.supplier-signed-offer-files__list button em{font-style:normal;font-weight:800;color:#087f78}@media(max-width:700px){.supplier-signed-offer-upload{grid-template-columns:1fr}.supplier-signed-offer-upload label span{width:100%}}

.supplier-signed-offer-upload--form{margin:0 0 24px;border-width:2px;background:linear-gradient(135deg,#f3fbfa,#fff)}
.supplier-signed-offer-upload--form .supplier-signed-offer-upload__current{grid-column:1/-1;padding-top:14px;border-top:1px solid #dbe7e5;display:grid;gap:8px}
.supplier-signed-offer-upload__current>span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.supplier-signed-offer-upload__current button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 14px;border:1px solid #dbe7e5;border-radius:12px;background:#fff;text-align:left;cursor:pointer}
.supplier-signed-offer-upload__current button em{font-style:normal;color:#087f78;font-weight:800}
.supplier-signed-offer-upload__selected{grid-column:1/-1;padding:11px 14px;border-radius:11px;background:#e8f7f5;color:#066b65;font-weight:800}

/* Stage 4.8.87 — supplier stage screens part 2 */
.supplier-stage-screen{display:grid;gap:22px}.supplier-stage-documents{margin-top:0}.supplier-stage-form{padding:22px;border:1px solid #e6eaf0;border-radius:18px;background:#f8fafc}.supplier-stage-waiting{padding:28px;border-radius:20px;background:linear-gradient(135deg,#f5f9ff,#eef4ff);border:1px solid #dce7f7}.supplier-stage-waiting strong{display:block;font-size:22px;margin-bottom:8px}.supplier-stage-waiting p{margin:0;color:#596579;line-height:1.6}

/* Stage 4.8.88 — supplier delivery, acceptance and closure screens */
.supplier-delivery-form{display:grid;gap:22px}.supplier-delivery-documents{margin-top:4px;padding:22px;border:1px solid rgba(15,23,42,.10);border-radius:18px;background:#f8fafc}.supplier-delivery-documents h3,.supplier-delivery-summary h3,.supplier-delivery-doc-list h3,.supplier-delivery-issues h3{margin:0;font-size:18px;color:#0f172a}.supplier-original-documents-confirm{margin-top:18px;background:#fff;border:1px solid rgba(13,148,136,.25);border-radius:14px;padding:15px}.supplier-original-documents-confirm span{line-height:1.5}.supplier-stage-result{padding:22px;border-radius:18px;border:1px solid transparent;margin-bottom:20px}.supplier-stage-result>strong{display:block;font-size:22px;margin-bottom:6px}.supplier-stage-result>p{margin:0;line-height:1.55}.supplier-stage-result--waiting{background:#f8fafc;border-color:#cbd5e1}.supplier-stage-result--accepted,.supplier-stage-result--closed{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.supplier-stage-result--issue{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.supplier-stage-result__comment{margin-top:15px;padding:14px 16px;border-radius:13px;background:rgba(255,255,255,.72);border:1px solid rgba(15,23,42,.08)}.supplier-stage-result__comment span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:5px}.supplier-stage-result__comment p{margin:0;color:#334155}.supplier-delivery-summary,.supplier-delivery-doc-list,.supplier-delivery-issues{margin-top:20px;padding:20px;border:1px solid rgba(15,23,42,.09);border-radius:18px;background:#fff}.supplier-delivery-summary .supplier-info-grid{margin-top:15px}.supplier-delivery-doc-list .supplier-document-list{margin-top:15px}.supplier-delivery-issues{display:grid;gap:14px}.supplier-delivery-issue{padding:18px;border-radius:15px;border:1px solid #fed7aa;background:#fffaf5}.supplier-delivery-issue.is-resolved{border-color:#bbf7d0;background:#f0fdf4}.supplier-delivery-issue p{margin:7px 0}.supplier-delivery-issue small{display:block;color:#64748b;margin-top:4px}.supplier-delivery-issue form{margin-top:16px}.supplier-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.supplier-info-grid>div{padding:13px 14px;border-radius:12px;background:#f8fafc;border:1px solid rgba(15,23,42,.07)}.supplier-info-grid span{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.supplier-info-grid strong{font-size:14px;color:#0f172a}@media(max-width:720px){.supplier-delivery-documents,.supplier-delivery-summary,.supplier-delivery-doc-list,.supplier-delivery-issues{padding:16px}.supplier-info-grid{grid-template-columns:1fr}.supplier-stage-result{padding:18px}.supplier-stage-result>strong{font-size:19px}}

/* Stage 4.8.95 — automatic conversion of linear metres to square metres in supplier offers */
.supplier-area-conversion{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;margin-bottom:2px;border:1px solid rgba(13,148,136,.24);border-radius:14px;background:linear-gradient(135deg,rgba(240,253,250,.98),rgba(236,254,255,.92));color:#0f172a}
.supplier-area-conversion strong{font-size:14px;color:#0f766e}
.supplier-area-conversion span{font-size:13px;color:#526174;text-align:right}
@media(max-width:760px){.supplier-area-conversion{align-items:flex-start;flex-direction:column;gap:6px}.supplier-area-conversion span{text-align:left}}

/* Stage 4.8.96 — предварительный отчёт конъюнктурного анализа */
.analysis-report-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:16px 18px;border:1px solid #cfe5e3;border-radius:16px;background:linear-gradient(135deg,#f3fbfa,#fff);box-shadow:0 8px 22px rgba(15,118,110,.07)}
.analysis-report-actions>div:first-child{display:flex;flex-direction:column;gap:3px}.analysis-report-actions strong{font-size:16px;color:#102a32}.analysis-report-actions span{font-size:13px;color:#657b83}.analysis-report-actions>div:last-child{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:760px){.analysis-report-actions{align-items:stretch;flex-direction:column}.analysis-report-actions>div:last-child>a{flex:1;text-align:center}}
.protocol-sheet .protocol-number{color:#0f766e}.protocol-sheet .protocol-decision .protocol-winner strong{color:#0f766e}

/* Stage 4.8.102 — personal task control for vramsag */
.task-control-page{background:#f4f7f8}.task-control{display:grid;gap:22px}.task-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;border-radius:24px;background:linear-gradient(135deg,#063d43,#087e83);color:#fff;box-shadow:0 18px 45px rgba(5,76,80,.2)}.task-hero span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;opacity:.78}.task-hero h2{margin:7px 0 8px;font-size:28px}.task-hero p{margin:0;opacity:.84}.task-hero .button{background:#fff;color:#075f64;border-color:#fff}.task-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.task-stat{display:flex;align-items:flex-end;justify-content:space-between;min-height:115px;padding:20px;border:1px solid #dfe8e9;border-radius:20px;background:#fff;color:#1c2a2d;text-decoration:none;box-shadow:0 10px 28px rgba(25,52,56,.07)}.task-stat span{font-weight:700}.task-stat strong{font-size:34px}.task-stat--danger{border-top:4px solid #d95757}.task-stat--warning{border-top:4px solid #e7a62b}.task-stat--info{border-top:4px solid #1c8ea0}.task-stat--success{border-top:4px solid #36a66b}.task-filters{display:grid;grid-template-columns:minmax(260px,1fr) 190px 190px auto auto;gap:10px;padding:16px;border:1px solid #dfe8e9;border-radius:18px;background:#fff}.task-filters input,.task-filters select,.task-editor input,.task-editor select,.task-editor textarea,.task-notes-card textarea{width:100%;border:1px solid #cfdcde;border-radius:12px;background:#fff;color:#172427;padding:12px 13px}.task-list-panel{overflow:hidden;border:1px solid #dfe8e9;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(25,52,56,.07)}.task-list-panel>header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid #e5eded}.task-list-panel h2{margin:3px 0 0}.task-list-panel>header>strong{display:grid;place-items:center;min-width:42px;height:42px;border-radius:14px;background:#e8f4f4;color:#07676b}.task-list{display:grid}.task-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:17px 20px;border-bottom:1px solid #edf2f2}.task-row:last-child{border-bottom:0}.task-row:hover{background:#f7fbfb}.task-row.is-overdue{box-shadow:inset 4px 0 #d95757}.task-row__main{text-decoration:none;color:inherit}.task-row__title{display:flex;align-items:center;gap:12px}.task-row__title h3{margin:0;font-size:16px}.task-category{padding:5px 9px;border-radius:999px;background:#e7f3f3;color:#096f73;font-size:11px;font-weight:800}.task-row__meta{display:flex;gap:18px;margin-top:9px;color:#6c7d80;font-size:13px}.task-row__side{display:flex;align-items:center;gap:8px}.task-priority,.task-status{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.task-priority--urgent{background:#ffe5e5;color:#a42e2e}.task-priority--high{background:#fff0d8;color:#9a6500}.task-priority--normal{background:#edf3f4;color:#506568}.task-priority--low{background:#eef0ff;color:#545fa1}.task-status--new{background:#e9f1ff;color:#36639d}.task-status--in_progress{background:#fff0cf;color:#8a6200}.task-status--waiting{background:#e4f4f6;color:#08717a}.task-status--done{background:#e2f5e9;color:#247146}.task-status--cancelled{background:#eef0f1;color:#677477}.task-done-button{width:34px;height:34px;border:0;border-radius:11px;background:#def2e6;color:#247146;font-weight:900;cursor:pointer}.task-empty{text-align:center;padding:54px 20px}.task-empty strong{font-size:20px}.task-empty p{color:#708083}.task-form-page,.task-detail-page{max-width:1180px;margin:0 auto;padding-bottom:50px}.task-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:24px;border:1px solid #dfe8e9;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(25,52,56,.08)}.task-editor label{display:grid;gap:8px;font-weight:700}.task-editor__wide{grid-column:1/-1}.task-editor__actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;padding-top:6px}.task-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);gap:20px}.task-detail-card,.task-notes-card{padding:24px;border:1px solid #dfe8e9;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(25,52,56,.07)}.task-detail-description{font-size:16px;line-height:1.65}.task-detail-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task-detail-card dl div{padding:13px;border-radius:14px;background:#f5f8f8}.task-detail-card dt{font-size:12px;color:#708083}.task-detail-card dd{margin:5px 0 0;font-weight:800}.task-status-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.task-notes-card h2{margin-top:0}.task-notes-card form{display:grid;gap:10px}.task-notes{display:grid;gap:10px;margin-top:18px}.task-notes article{padding:13px;border-radius:14px;background:#f5f8f8}.task-notes article strong{display:block}.task-notes article time{font-size:11px;color:#7a898b}.task-notes article p{margin:8px 0 0}.task-delete-form{margin-top:22px;padding-top:16px;border-top:1px solid #e7eded}.task-delete-form button{border:0;background:none;color:#b64040;cursor:pointer}.task-control-nav-link{border:1px solid rgba(41,180,181,.2);background:rgba(34,151,154,.08)}
@media(max-width:900px){.task-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.task-filters{grid-template-columns:1fr 1fr}.task-filters input{grid-column:1/-1}.task-detail-grid{grid-template-columns:1fr}}@media(max-width:620px){.task-hero{align-items:flex-start;flex-direction:column}.task-stats{grid-template-columns:1fr}.task-filters,.task-editor{grid-template-columns:1fr}.task-editor__wide,.task-editor__actions{grid-column:auto}.task-row{grid-template-columns:1fr}.task-row__side{flex-wrap:wrap}.task-detail-card dl{grid-template-columns:1fr}}

/* Stage 4.8.103 — task form contrast fix */
.task-control-page{
  background:#f4f7f8;
  color:#172427;
}
.task-form-page{
  color:#172427;
}
.task-form-page .standalone-topbar{
  color:#f8fafc;
}
.task-form-page .standalone-topbar .workspace-kicker,
.task-form-page .standalone-topbar h1{
  color:#f8fafc;
}
.task-form-page .standalone-topbar .back-link{
  color:#a9b7c2;
}
.task-form-page .standalone-topbar .back-link:hover{
  color:#ffffff;
}
.task-editor label,
.task-editor label > span{
  color:#3d5156;
  opacity:1;
}
.task-editor label > span{
  display:block;
  font-size:14px;
  font-weight:800;
  line-height:1.35;
}
.task-editor input,
.task-editor select,
.task-editor textarea{
  color:#172427 !important;
  background:#ffffff !important;
  -webkit-text-fill-color:#172427;
  opacity:1;
}
.task-editor input::placeholder,
.task-editor textarea::placeholder{
  color:#87979b !important;
  -webkit-text-fill-color:#87979b;
  opacity:1;
}
.task-editor input:focus,
.task-editor select:focus,
.task-editor textarea:focus{
  border-color:#0aa9b5;
  outline:3px solid rgba(10,169,181,.13);
  box-shadow:none;
}
.task-editor__actions .button--secondary{
  color:#42565b;
  background:#ffffff;
  border-color:#cfdcde;
}
.task-editor__actions .button--secondary:hover{
  color:#172427;
  background:#f1f6f6;
}
@media (prefers-color-scheme: dark){
  .task-control-page{
    background:#f4f7f8;
    color:#172427;
  }
  .task-editor{
    background:#ffffff;
  }
  .task-editor label,
  .task-editor label > span{
    color:#3d5156;
  }
}

/* Stage 4.8.104: task attachments */
.task-upload-field small{color:#708083;font-size:12px;font-weight:500}.task-upload-field input[type=file]{padding:10px}.task-attachments{margin-top:22px;padding-top:20px;border-top:1px solid #e5eded}.task-attachments h2{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:18px}.task-attachments h2 span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:#e8f4f4;color:#07676b;font-size:12px}.task-attachment-list{display:grid;gap:9px}.task-attachment-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid #dfe8e9;border-radius:14px;background:#f8fbfb}.task-attachment-list strong{display:block;word-break:break-word}.task-attachment-list small{display:block;margin-top:4px;color:#708083}.task-attachment-actions{display:flex;align-items:center;gap:8px}.task-attachment-actions form{display:block}.task-attachment-actions button{border:0;background:none;color:#b64040;cursor:pointer}@media(max-width:620px){.task-attachment-list article{align-items:flex-start;flex-direction:column}.task-attachment-actions{width:100%}}


/* Stage 4.8.106 — visible task edit action */
.task-detail-page .standalone-topbar .task-edit-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid #24c5c7;border-radius:12px;background:#12a9b1;color:#fff!important;font-weight:800;text-decoration:none;box-shadow:0 8px 22px rgba(18,169,177,.22)}
.task-detail-page .standalone-topbar .task-edit-button:hover{background:#0b8e96;border-color:#0b8e96;color:#fff!important}
.task-detail-card{position:relative}
.task-detail-card-actions{display:flex;justify-content:flex-end;margin:-4px 0 14px}
.task-detail-card-actions .task-edit-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid #0b9298;border-radius:11px;background:#0b9298;color:#fff!important;font-weight:800;text-decoration:none}
.task-detail-card-actions .task-edit-button:hover{background:#08777c;border-color:#08777c}
@media(max-width:620px){.task-detail-page .standalone-topbar{align-items:flex-start;flex-direction:column}.task-detail-header-actions,.task-detail-header-actions .task-edit-button,.task-detail-card-actions .task-edit-button{width:100%}.task-detail-card-actions{margin-top:0}}

/* Stage 4.8.107 — daily task focus and waiting control */
.task-waiting-panel{padding:22px;border:1px solid #cfe7e8;border-radius:22px;background:linear-gradient(135deg,#f3fbfb,#fff);box-shadow:0 12px 34px rgba(25,52,56,.06)}
.task-waiting-panel>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.task-waiting-panel h2{margin:3px 0 4px}.task-waiting-panel p{margin:0;color:#6b7e82}.task-waiting-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.task-waiting-card{display:grid;gap:7px;padding:16px;border:1px solid #dbe9ea;border-radius:16px;background:#fff;color:#172427;text-decoration:none}.task-waiting-card:hover{border-color:#26aeb3;box-shadow:0 8px 22px rgba(13,119,124,.1)}.task-waiting-card span{color:#08717a;font-size:11px;font-weight:800;text-transform:uppercase}.task-waiting-card strong{line-height:1.4}.task-waiting-card small{color:#728386}
.dashboard-task-alert{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px;padding:18px 22px;border:1px solid rgba(216,87,87,.28);border-left:5px solid #d95757;border-radius:18px;background:#fff7f7;box-shadow:0 8px 24px rgba(125,49,49,.06)}.dashboard-task-alert span{display:block;color:#ad3f3f;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.dashboard-task-alert strong{display:block;margin-top:4px;font-size:18px}.dashboard-task-alert p{margin:4px 0 0;color:#6f5959}.dashboard-task-alert a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border-radius:12px;background:#a83e3e;color:#fff;text-decoration:none;font-weight:800;white-space:nowrap}
.dashboard-task-center{margin-bottom:15px;padding:22px;border:1px solid #dce9ea;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(25,52,56,.07)}.dashboard-task-center>header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.dashboard-task-center h2{margin:3px 0 0}.dashboard-task-center__actions{display:flex;align-items:center;gap:10px}.dashboard-task-center__actions>a:first-child{display:inline-flex;align-items:center;gap:8px;color:#08757a;font-weight:800;text-decoration:none}.dashboard-task-center__actions b{display:grid;place-items:center;min-width:26px;height:26px;border-radius:9px;background:#e4f4f6}.dashboard-task-mini-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.dashboard-task-mini-stats a{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border:1px solid #e0e9ea;border-radius:14px;background:#f8fbfb;color:#27383c;text-decoration:none}.dashboard-task-mini-stats span{font-size:12px;font-weight:750}.dashboard-task-mini-stats strong{font-size:22px}.dashboard-task-mini-stats .is-danger{border-left:4px solid #d95757}.dashboard-task-mini-stats .is-warning{border-left:4px solid #e7a62b}.dashboard-task-mini-stats .is-info{border-left:4px solid #1c8ea0}.dashboard-task-mini-stats .is-success{border-left:4px solid #36a66b}.dashboard-task-list{display:grid;border:1px solid #e5eded;border-radius:16px;overflow:hidden}.dashboard-task-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid #edf2f2;color:#172427;text-decoration:none}.dashboard-task-item:last-child{border-bottom:0}.dashboard-task-item:hover{background:#f6fbfb}.dashboard-task-item.is-overdue{box-shadow:inset 4px 0 #d95757}.dashboard-task-item>div{display:grid;gap:3px}.dashboard-task-item span{color:#08717a;font-size:10px;font-weight:850;text-transform:uppercase}.dashboard-task-item small{color:#738487}.dashboard-task-item time{color:#596d70;font-size:12px;font-weight:800;white-space:nowrap}.dashboard-task-item.is-overdue time{color:#b33f3f}.dashboard-task-empty{display:grid;gap:4px;padding:22px;border:1px dashed #cfdfe0;border-radius:16px;text-align:center;color:#65787b}.dashboard-task-empty strong{color:#25373a}
@media(max-width:900px){.task-waiting-grid{grid-template-columns:1fr 1fr}.dashboard-task-mini-stats{grid-template-columns:1fr 1fr}.dashboard-task-center>header,.dashboard-task-alert{align-items:flex-start;flex-direction:column}.dashboard-task-center__actions{width:100%;justify-content:space-between}}
@media(max-width:620px){.task-waiting-grid,.dashboard-task-mini-stats{grid-template-columns:1fr}.task-waiting-panel>header{align-items:flex-start;flex-direction:column}.dashboard-task-center__actions{align-items:stretch;flex-direction:column}.dashboard-task-center__actions .primary-button{width:100%;text-align:center}.dashboard-task-item{align-items:flex-start;flex-direction:column}.dashboard-task-alert a{width:100%}}

/* Stage 4.8.113 — readable external supplier workflow */
.external-offer-panel{margin-top:18px;border:1px solid #cfe3e4;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(31,58,61,.06)}
.external-offer-panel>details>summary,.external-route-card>summary{cursor:pointer;list-style:none}.external-offer-panel>details>summary::-webkit-details-marker,.external-route-card>summary::-webkit-details-marker{display:none}
.external-offer-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 22px;background:linear-gradient(135deg,#f7fcfc,#fff);color:#173b3d;transition:background .18s ease}
.external-offer-summary:hover{background:#f0f9f9}.external-offer-summary__main{display:flex;align-items:center;gap:14px;min-width:0}.external-offer-summary__icon{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:12px;background:#0d979c;color:#fff;font-size:22px;font-weight:500;line-height:1}.external-offer-summary__main>div{min-width:0;display:grid;gap:4px}.external-offer-summary__main strong{color:#173033;font-size:17px;line-height:1.25}.external-offer-summary__main small{color:#6a7b7e;font-size:12px;font-weight:600}.external-offer-summary__action{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border:1px solid #c9dcde;border-radius:10px;background:#fff;color:#527074;font-size:12px;font-weight:800}.external-offer-panel details[open] .external-offer-summary__action{background:#e9f7f7;color:#08777c;border-color:#b9dcdd}
.external-offer-form{display:grid;gap:16px;padding:0 22px 24px;border-top:1px solid #e5eeee;background:#fbfdfd}
.external-offer-form__intro{display:flex;align-items:flex-start;gap:13px;margin-top:20px;padding:15px 17px;border:1px solid #cfe8e7;border-radius:14px;background:#edf9f8}.external-offer-form__intro-icon{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:10px;background:#d7f2ef;color:#08777c;font-size:18px;font-weight:900}.external-offer-form__intro strong{display:block;color:#195154;font-size:14px}.external-offer-form__intro p{margin:4px 0 0;color:#5f7376;font-size:13px;line-height:1.5}
.external-offer-section{padding:18px;border:1px solid #dfe9ea;border-radius:16px;background:#fff}.external-offer-section--items{padding-bottom:8px}.external-offer-section__header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid #edf2f2}.external-offer-section__number{display:grid;place-items:center;flex:0 0 auto;width:30px;height:30px;border-radius:9px;background:#0d979c;color:#fff;font-size:13px;font-weight:900}.external-offer-section__header h4{margin:0;color:#1d3033;font-size:15px}.external-offer-section__header p{margin:3px 0 0;color:#78888b;font-size:12px;line-height:1.4}
.external-offer-form__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 14px}.external-offer-form__grid--terms{grid-template-columns:repeat(4,minmax(0,1fr))}.external-offer-form__grid--bottom{grid-template-columns:repeat(2,minmax(0,1fr))}.external-field-span-2{grid-column:span 2}.external-field-span-3{grid-column:1/-1}.external-offer-form label,.external-offer-item label,.external-route-card label,.external-confirmation-form label{display:flex;flex-direction:column;gap:6px;min-width:0;color:#405457;font-size:12px;font-weight:800}.external-offer-form label>span,.external-offer-item label>span{line-height:1.25}.external-offer-form input,.external-offer-form select,.external-offer-form textarea,.external-offer-item input,.external-offer-item select,.external-route-card input,.external-route-card select,.external-route-card textarea,.external-confirmation-form input,.external-confirmation-form select{width:100%;box-sizing:border-box;min-height:43px;padding:9px 11px;border:1px solid #cddadb;border-radius:10px;outline:0;background:#fff;color:#17272a;font:inherit;font-weight:500;transition:border-color .16s ease,box-shadow .16s ease}.external-offer-form textarea,.external-route-card textarea{min-height:80px;resize:vertical}.external-offer-form input::placeholder,.external-offer-form textarea::placeholder,.external-offer-item input::placeholder{color:#a0aaac}.external-offer-form input:focus,.external-offer-form select:focus,.external-offer-form textarea:focus,.external-offer-item input:focus,.external-offer-item select:focus{border-color:#0d9ba0;box-shadow:0 0 0 3px rgba(13,155,160,.11)}.external-file-field{padding:11px 12px;border:1px dashed #bdd7d8;border-radius:12px;background:#f7fbfb}.external-file-field input[type=file]{padding:7px;background:#fff}.external-file-field small{color:#75878a;font-size:11px;font-weight:500;line-height:1.35}
.external-offer-items{display:grid;gap:12px;margin:0}.external-offer-item{padding:0;border:1px solid #dce7e8;border-radius:15px;background:#fff;overflow:hidden}.external-offer-item__header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0!important;padding:13px 15px;border-bottom:1px solid #e8eeee;background:#f8fbfb}.external-offer-item__header>div{display:grid;gap:3px;min-width:0}.external-offer-item__line{color:#0b858a!important;font-size:10px!important;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.external-offer-item__header strong{color:#223437;font-size:14px;line-height:1.35}.external-offer-item__need{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border-radius:9px;background:#eaf6f5;color:#5a7073!important;font-size:11px!important;white-space:nowrap}.external-offer-item__need b{color:#16777c}.external-offer-item__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px;padding:15px}.external-offer-item__wide{grid-column:1/-1}.external-price-field input{font-weight:800;color:#153f42;background:#fbffff}
.external-offer-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 18px;border:1px solid #cfe4e4;border-radius:15px;background:#eff9f8}.external-offer-submit>div{display:grid;gap:3px}.external-offer-submit strong{color:#204548;font-size:13px}.external-offer-submit span{max-width:720px;color:#687b7e;font-size:11px;line-height:1.4}.external-offer-submit .primary-button{flex:0 0 auto;min-width:210px;margin:0;padding:0 18px}
/* Other "outside the system" stages use the same visual language. */
.external-offer-origin{margin:10px 0;padding:10px 12px;border:1px solid #d5e9e8;border-radius:10px;background:#f1f9f8;color:#527072;font-size:12px}.external-offer-hint{display:block;max-width:440px;color:#68797c;font-size:12px;line-height:1.4}.external-route-choice{display:grid;gap:12px}.external-route-card{margin-top:12px;border:1px solid #d8e4e6;border-radius:14px;background:#fbfefe;overflow:hidden}.external-route-card>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;color:#244548;font-size:13px;font-weight:800}.external-route-card>form{display:grid;gap:12px;padding:0 14px 14px}.external-route-card--inline{margin:14px 0}.external-confirmation-form{margin-top:12px;padding:14px;border:1px solid #d8e4e6;border-radius:14px;background:#fbfefe;display:grid;grid-template-columns:1fr 1fr;gap:10px}.external-confirmation-form>div{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.external-route-card--delivery{margin-top:14px}.external-delivery-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.external-delivery-form>button{grid-column:1/-1}
@media(max-width:1100px){.external-offer-form__grid,.external-offer-form__grid--terms,.external-offer-item__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.external-field-span-3{grid-column:1/-1}.external-offer-form__grid--terms .external-file-field{grid-column:1/-1}}
@media(max-width:720px){.external-offer-summary{align-items:flex-start;flex-direction:column}.external-offer-summary__action{align-self:stretch}.external-offer-form{padding:0 12px 16px}.external-offer-section{padding:14px}.external-offer-form__grid,.external-offer-form__grid--terms,.external-offer-form__grid--bottom,.external-offer-item__grid,.external-confirmation-form,.external-delivery-form{grid-template-columns:1fr}.external-field-span-2,.external-field-span-3,.external-offer-item__wide,.external-confirmation-form>div,.external-delivery-form>button{grid-column:1}.external-offer-item__header{align-items:flex-start;flex-direction:column}.external-offer-item__need{white-space:normal}.external-offer-submit{align-items:stretch;flex-direction:column}.external-offer-submit .primary-button{width:100%;min-width:0}}

/* Stage 4.8.114 — existing/new supplier chooser for external commercial offers */
.external-supplier-manager{display:grid;gap:13px;margin-bottom:16px;padding:14px;border:1px solid #dce8e9;border-radius:14px;background:#f8fbfb}
.external-supplier-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.external-supplier-mode__option{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;min-height:72px;padding:13px 14px;border:1px solid #cfdddf;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.external-supplier-mode__option:has(input:checked){border-color:#0d979c;background:#f0fbfa;box-shadow:0 0 0 2px rgba(13,151,156,.08)}
.external-supplier-mode__option input{width:18px!important;min-height:18px!important;height:18px;margin:2px 0 0;padding:0;accent-color:#0d979c;flex:0 0 auto}
.external-supplier-mode__option>span{display:grid;gap:3px}.external-supplier-mode__option strong{color:#1d3e41;font-size:13px}.external-supplier-mode__option small{color:#718286;font-size:11px;line-height:1.35;font-weight:500}
.external-supplier-registry{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(300px,1.3fr);gap:12px;align-items:end;padding-top:2px}
.external-supplier-registry__hint{grid-column:1/-1;padding:10px 12px;border-radius:10px;background:#edf7f7;color:#567276;font-size:12px;line-height:1.4}
.external-supplier-registry__hint.is-selected{background:#e9f8f5;color:#315f61}.external-supplier-registry__hint.is-already{border:1px solid #bdded9;background:#effaf7}
.external-supplier-new-note{display:grid;gap:3px;padding:11px 13px;border:1px solid #cde7df;border-radius:11px;background:#eefaf6}.external-supplier-new-note strong{color:#23625b;font-size:12px}.external-supplier-new-note span{color:#5f7775;font-size:11px;line-height:1.4}
.external-supplier-fields-note{margin:11px 0 0;padding:9px 11px;border-left:3px solid #9acfd0;background:#f7fbfb;color:#667b7e;font-size:11px;line-height:1.45}
.external-offer-form input.is-registry-value{background:#f4f8f8;color:#516669;border-style:dashed}
@media(max-width:820px){.external-supplier-mode,.external-supplier-registry{grid-template-columns:1fr}}
/* Stage 4.8.115 — external supplier registry live-search empty state. */
.external-supplier-registry__hint.is-empty{border:1px solid #efd0d0;background:#fff6f6;color:#9a4545}

/* Stage 4.8.116 — supplier-specific product names for externally registered offers. */
.external-offered-name-field{padding:12px 13px;border:1px solid #cfe4e3;border-radius:12px;background:#f4fbfa}.external-offered-name-field span{color:#176f73!important}.external-offered-name-field input{font-weight:800;color:#193d40;background:#fff}.external-offered-name-field small{display:block;margin-top:6px;color:#728589;line-height:1.35}
.analysis-offered-product{margin:12px 0 0;padding:11px 12px;border:1px solid #dbe8e7;border-radius:11px;background:#f7fbfa}.analysis-offered-product span{display:block;color:#8a969c;font-size:10px;text-transform:uppercase;letter-spacing:.04em}.analysis-offered-product strong{display:block;margin-top:4px;color:#20373a;line-height:1.35}.analysis-offered-product small{display:block;margin-top:4px;color:#829094;font-size:11px}
.analysis-comparison-row{grid-template-columns:1.15fr 1.4fr repeat(6,minmax(90px,1fr))}

/* Stage 4.8.117 — literal external-KP transcription; request data is reference only. */
.external-offer-item__header{background:#f6f8f8}
.external-offer-item__line{color:#74878a!important}
.external-offer-item__need{background:#f0f3f3;color:#65777a!important}
.external-offer-item__need b{color:#3b5558}
.external-offer-item__grid small,.external-offer-form__grid small{display:block;color:#7b8b8e;font-size:11px;font-weight:500;line-height:1.35}
.external-offer-item select[name^="status"]{background:#f8fbfb}
.external-offer-reconcile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;padding:14px 16px;border:1px solid #d9e4e5;border-radius:14px;background:#f8fbfb}
.external-offer-reconcile>div{display:grid;gap:4px}.external-offer-reconcile span{color:#7d8d90;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.external-offer-reconcile strong{color:#263a3d;font-size:18px}.external-offer-reconcile p{grid-column:1/-1;margin:0;color:#6f8083;font-size:12px}
.external-offer-reconcile.is-match{border-color:#bfe3d8;background:#f3fbf8}.external-offer-reconcile.is-match p{color:#28705d}
.external-offer-reconcile.is-mismatch{border-color:#efcfb8;background:#fff9f4}.external-offer-reconcile.is-mismatch p{color:#9a5b2d}
.offer-detail-summary__source-total{display:grid;gap:3px;padding:12px;border-radius:12px;background:#f7fafb}.offer-detail-summary__source-total small{font-size:10px;color:#718184}.offer-detail-summary__source-total.is-match{background:#f0faf6}.offer-detail-summary__source-total.is-mismatch{background:#fff7f1}.offer-detail-item__head>div{display:grid;gap:3px}.offer-detail-item__head>div small{color:#7b898c;font-size:11px;font-weight:500}
@media(max-width:720px){.external-offer-reconcile{grid-template-columns:1fr}.external-offer-reconcile p{grid-column:1}}

/* Stage 4.8.118 — safe deletion of employee-registered external offers */
.external-offer-delete-form{display:inline-flex;margin:0}.buyer-offer-card__actions .external-offer-delete-form .danger-outline-button{min-height:42px}

/* Stage 4.8.119 — live per-line preview before external offer registration. */
.external-line-preview{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px 18px;align-items:center;margin-top:2px;padding:13px 14px;border:1px solid #cfe0e1;border-radius:12px;background:#f7fbfb}
.external-line-preview__metric{display:grid;gap:4px}.external-line-preview__metric span{color:#718487;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.external-line-preview__metric strong{color:#244548;font-size:16px;line-height:1.2}.external-line-preview__metric--total strong{color:#0d777c;font-size:20px}
.external-line-preview p{grid-column:1/-1;margin:0;padding-top:8px;border-top:1px dashed #d6e3e4;color:#64797c;font-size:11px;line-height:1.4}
.external-line-preview.is-ready{border-color:#acd9d4;background:#f1faf8}.external-line-preview.is-ready .external-line-preview__metric--total strong{color:#08776f}
.external-line-preview.is-warning{border-color:#e9c5a8;background:#fff8f1}.external-line-preview.is-warning p{color:#965b2f;border-top-color:#ead5c3}
.external-line-preview.is-muted{background:#f5f7f7;border-color:#dde4e5}.external-line-preview.is-muted strong{color:#829093}.external-line-preview.is-muted p{color:#879396}
@media(max-width:720px){.external-line-preview{grid-template-columns:1fr}.external-line-preview p{grid-column:1}.external-line-preview__metric--total strong{font-size:18px}}

/* Stage 4.8.120 — supplier rows may differ from request rows; long request links stay inside the layout. */
.request-items-scroll{overflow-x:hidden}
.request-items-table{width:100%;min-width:0;table-layout:fixed}
.request-items-table th:nth-child(1),.request-items-table td:nth-child(1){width:5%}
.request-items-table th:nth-child(2),.request-items-table td:nth-child(2){width:18%}
.request-items-table th:nth-child(3),.request-items-table td:nth-child(3){width:57%}
.request-items-table th:nth-child(4),.request-items-table td:nth-child(4){width:8%}
.request-items-table th:nth-child(5),.request-items-table td:nth-child(5){width:12%}
.request-items-table td,.request-items-table td *{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.request-characteristics-view{display:grid;gap:5px;min-width:0}.request-characteristics-view span{min-width:0;overflow-wrap:anywhere;word-break:break-word}

.external-request-reference{margin-bottom:18px;border:1px solid #d9e5e6;border-radius:14px;background:#f8fbfb;overflow:hidden}
.external-request-reference__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-bottom:1px solid #e2ebec;background:#f0f6f6}.external-request-reference__head strong{color:#29484b;font-size:13px}.external-request-reference__head span{color:#77878a;font-size:11px;text-align:right}
.external-request-reference__list{display:grid}.external-request-reference__row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:11px;align-items:start;padding:11px 14px;border-top:1px solid #e8eeee}.external-request-reference__row:first-child{border-top:0}.external-request-reference__number{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#e6f4f3;color:#0b777b;font-size:11px;font-weight:900}.external-request-reference__row>div{min-width:0}.external-request-reference__row strong{display:block;color:#2b3d40;font-size:12px;line-height:1.35}.external-request-reference__row small{display:block;margin-top:4px;color:#76878a;font-size:10px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.external-request-reference__row>b{color:#456064;font-size:11px;white-space:nowrap}
.external-offer-lines-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 12px;padding:13px 14px;border:1px solid #cfe2e2;border-radius:13px;background:#f3faf9}.external-offer-lines-toolbar>div{display:grid;gap:3px;min-width:0}.external-offer-lines-toolbar strong{color:#24474a;font-size:13px}.external-offer-lines-toolbar span{color:#6d8083;font-size:11px;line-height:1.4}.external-offer-lines-toolbar .secondary-button{flex:0 0 auto;margin:0}
.external-offer-line-remove{flex:0 0 auto;padding:7px 9px;border:1px solid #e4c9c9;border-radius:9px;background:#fff;color:#a34e4e;font:inherit;font-size:10px;font-weight:800;cursor:pointer}.external-offer-line-remove:hover{border-color:#dbaaaa;background:#fff6f6;color:#913939}
.external-offer-link-field{padding:12px 13px;border:1px solid #d6e5e5;border-radius:12px;background:#f8fbfb}.external-offer-link-field select{background:#fff}.external-offer-link-field small{display:block;color:#76878a!important;font-weight:500!important}

.request-template-items{table-layout:fixed!important;width:100%!important;max-width:100%!important}
.request-template-items th,.request-template-items td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
.request-template-items td strong,.request-template-items td small{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
.request-template-items th:nth-child(1){width:5%!important}.request-template-items th:nth-child(2){width:38%!important}.request-template-items th:nth-child(3){width:9%!important}.request-template-items th:nth-child(4){width:9%!important}.request-template-items th:nth-child(5){width:39%!important}
.request-form-template{max-width:100%;box-sizing:border-box;overflow:hidden}
@media(max-width:720px){.request-items-scroll{overflow-x:auto}.request-items-table{min-width:720px;table-layout:auto}.external-request-reference__head,.external-offer-lines-toolbar{align-items:flex-start;flex-direction:column}.external-request-reference__head span{text-align:left}.external-offer-lines-toolbar .secondary-button{width:100%}.external-request-reference__row{grid-template-columns:32px minmax(0,1fr)}.external-request-reference__row>b{grid-column:2;white-space:normal}}
@media print{.request-print-sheet,.request-form-template{width:100%!important;max-width:100%!important;overflow:visible!important}.request-template-items{width:100%!important;max-width:100%!important;table-layout:fixed!important}.request-template-items th,.request-template-items td,.request-template-items td *{max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}}
/* Stage 4.8.120 — dynamic external rows keep the same neutral status control styling. */
.external-offer-item [data-external-line-status]{background:#f8fbfb}

/* Stage 4.8.122 — external offer validation must never wipe entered data. */
.external-offer-form-feedback{display:none;margin-top:18px;padding:13px 15px;border:1px solid #d8e5e6;border-radius:12px;background:#f7fbfb;color:#36565a;font-size:13px;font-weight:700;line-height:1.45}
.external-offer-form-feedback.is-visible{display:block}
.external-offer-form-feedback.is-error{border-color:#efb7b7;background:#fff4f4;color:#8b2929}
.external-offer-form-feedback.is-warning{border-color:#ead7a1;background:#fffaf0;color:#7a5a10}
.external-offer-form-feedback.is-success{border-color:#acd9ce;background:#f1fbf7;color:#23634f}
.external-offer-form-feedback[hidden]{display:none!important}

/* Stage 4.8.123 — keep market-analysis protocols inside the page with long specifications/URLs */
.protocol-sheet,
.protocol-section,
.protocol-section table,
.protocol-section th,
.protocol-section td{min-width:0}
.protocol-section table.protocol-table{width:100%;max-width:100%;table-layout:fixed}
.protocol-section table.protocol-table th,
.protocol-section table.protocol-table td{white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.protocol-subject-table .protocol-col-no{width:44px}
.protocol-subject-table .protocol-col-name{width:24%}
.protocol-subject-table .protocol-col-spec{width:auto}
.protocol-subject-table .protocol-col-qty{width:96px}
.protocol-subject-table .protocol-col-unit{width:64px}
.protocol-subject-table th:nth-child(1),
.protocol-subject-table td:nth-child(1),
.protocol-subject-table th:nth-child(4),
.protocol-subject-table td:nth-child(4),
.protocol-subject-table th:nth-child(5),
.protocol-subject-table td:nth-child(5){white-space:nowrap;text-align:center}
.protocol-ranking-table .protocol-col-place{width:58px}
.protocol-ranking-table .protocol-col-supplier{width:24%}
.protocol-ranking-table .protocol-col-total{width:19%}
.protocol-ranking-table .protocol-col-score{width:13%}
.protocol-ranking-table .protocol-col-reasons{width:auto}
.protocol-award-table .protocol-col-award-supplier{width:28%}
.protocol-award-table .protocol-col-award-items{width:auto}
.protocol-award-table .protocol-col-award-total{width:20%}

/* The final procurement dossier contains the same source-request data; protect it too. */
.final-report-section table{max-width:100%}
.final-report-section th,
.final-report-section td{min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.final-report-subject-table{width:100%;max-width:100%;table-layout:fixed}
.final-report-subject-table .final-report-col-no{width:44px}
.final-report-subject-table .final-report-col-name{width:24%}
.final-report-subject-table .final-report-col-spec{width:auto}
.final-report-subject-table .final-report-col-qty{width:96px}
.final-report-subject-table .final-report-col-unit{width:64px}
.final-report-subject-table th:nth-child(1),
.final-report-subject-table td:nth-child(1),
.final-report-subject-table th:nth-child(4),
.final-report-subject-table td:nth-child(4),
.final-report-subject-table th:nth-child(5),
.final-report-subject-table td:nth-child(5){white-space:nowrap;text-align:center}

@media print{
  .protocol-sheet{max-width:100%;overflow:visible}
  .protocol-section{overflow:visible!important}
  .protocol-section table.protocol-table{width:100%!important;max-width:100%!important;table-layout:fixed!important}
  .protocol-section table.protocol-table th,
  .protocol-section table.protocol-table td{padding:5px 6px;font-size:9.5px;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
  .protocol-subject-table .protocol-col-no{width:8mm}
  .protocol-subject-table .protocol-col-name{width:38mm}
  .protocol-subject-table .protocol-col-qty{width:18mm}
  .protocol-subject-table .protocol-col-unit{width:12mm}
  .protocol-section tr{break-inside:avoid;page-break-inside:avoid}
  .final-report-subject-table{width:100%!important;max-width:100%!important;table-layout:fixed!important}
  .final-report-subject-table th,
  .final-report-subject-table td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
}

/* Stage 4.8.125 — position-first market analysis and mixed supplier recommendation */
.analysis-plan-card{display:block}.analysis-plan-main{max-width:none}.analysis-plan-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:14px}.analysis-plan-groups article{padding:13px 14px;border:1px solid #cde7e3;border-radius:13px;background:#fff}.analysis-plan-groups article strong,.analysis-plan-groups article span,.analysis-plan-groups article small{display:block}.analysis-plan-groups article strong{font-size:15px;color:#173238}.analysis-plan-groups article span{margin-top:4px;color:#167f77;font-weight:800}.analysis-plan-groups article small{margin-top:6px;color:#6e7b80;line-height:1.45}.analysis-plan-groups article.is-warning{border-color:#f1cf98;background:#fff9ef}.analysis-plan-groups article.is-warning span{color:#9b6515}
.analysis-position-recommendation{margin:0 0 14px;padding:13px 15px;border:1px solid #a7ddd6;border-radius:14px;background:#eefaf7}.analysis-position-recommendation span{display:block;color:#6f7e82;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.analysis-position-recommendation strong{display:block;margin-top:3px;color:#126f69;font-size:17px}.analysis-position-recommendation p{margin:5px 0 0;color:#59696e;font-size:13px}.analysis-position-recommendation.is-warning{border-color:#edcf9d;background:#fff8ed}.analysis-position-recommendation.is-warning strong{color:#945e12}
.analysis-supplier-card.is-position-recommended{border-color:#5cc8bb;box-shadow:0 8px 24px rgba(21,125,116,.10)}.analysis-supplier-card.is-partial{border-color:#e9c98c}.analysis-supplier-card.is-unknown{border-color:#e6b399}.analysis-offered-lines{margin:12px 0;padding:12px;border-radius:12px;background:#f6f8f8}.analysis-offered-lines>span{display:block;margin-bottom:7px;color:#89959a;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.analysis-offered-lines>div{padding:7px 0;border-top:1px solid #e5ebeb}.analysis-offered-lines>div:first-of-type{border-top:0;padding-top:0}.analysis-offered-lines>div:last-child{padding-bottom:0}.analysis-offered-lines strong,.analysis-offered-lines small{display:block;overflow-wrap:anywhere}.analysis-offered-lines strong{color:#26363d;font-size:13px}.analysis-offered-lines small{margin-top:3px;color:#78858a;font-size:11px}.analysis-offered-lines .is-empty strong{color:#7b868b}.analysis-position-reasons{margin:-5px 0 14px;color:#65747a;font-size:12px;line-height:1.45}.analysis-comparison-table--position .analysis-comparison-row{grid-template-columns:1.15fr 1.25fr 2fr 1fr .75fr .7fr}.analysis-comparison-row.is-position-recommended{border-color:#75cfc4;background:#effaf8}
.analysis-rank-row{grid-template-columns:42px minmax(180px,1fr) 110px 145px 90px minmax(165px,auto)}.analysis-rank-coverage strong,.analysis-rank-total strong{display:block}.analysis-rank-coverage small,.analysis-rank-total small{display:block;margin-top:3px;color:#859196;font-size:10px;text-transform:uppercase}.analysis-rank-coverage strong{font-size:18px;color:#167f77}.analysis-rank-total{font-weight:800;color:#2a373d}.analysis-rank-total small{font-weight:600}
.protocol-explain{margin:-4px 0 12px;color:#5f6d72;line-height:1.5}.protocol-coverage-table th:nth-child(1){width:22%}.protocol-coverage-table th:nth-child(2){width:14%}.protocol-coverage-table th:nth-child(3){width:17%}.protocol-coverage-table th:nth-child(4){width:15%}.protocol-coverage-table th:nth-child(5){width:17%}.protocol-coverage-table th:nth-child(6){width:15%}.protocol-position-block{margin:0 0 18px;break-inside:avoid-page}.protocol-position-block h3{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin:0 0 8px}.protocol-position-block h3 small{font-size:11px;font-weight:600;color:#68777c}.protocol-position-best{display:flex;gap:10px;align-items:baseline;margin:0 0 8px;padding:8px 10px;border-radius:8px;background:#eef8f6}.protocol-position-best span{font-size:10px;text-transform:uppercase;color:#718085}.protocol-position-best strong{color:#116f68}.protocol-position-best small{color:#637177}.protocol-position-best.is-warning{background:#fff7e9}.protocol-position-best.is-warning strong{color:#95600f}.protocol-position-table th:nth-child(1){width:17%}.protocol-position-table th:nth-child(2){width:18%}.protocol-position-table th:nth-child(3){width:30%}.protocol-position-table th:nth-child(4){width:14%}.protocol-position-table th:nth-child(5){width:9%}.protocol-position-table th:nth-child(6){width:12%}.protocol-position-table tr.is-recommended td{background:#effaf7}.protocol-plan-table th:nth-child(1){width:18%}.protocol-plan-table th:nth-child(2){width:37%}.protocol-plan-table th:nth-child(3){width:15%}.protocol-plan-table th:nth-child(4){width:13%}.protocol-plan-table th:nth-child(5){width:17%}.protocol-warning{margin-top:10px;padding:9px 11px;border:1px solid #edcf9d;border-radius:8px;background:#fff8ed;color:#825714}
@media(max-width:1100px){.analysis-rank-row{grid-template-columns:36px minmax(180px,1fr) 95px 120px 80px}.analysis-winner-details{grid-column:2/6}.analysis-comparison-table--position{overflow-x:auto}.analysis-comparison-table--position .analysis-comparison-row{min-width:850px}}
@media(max-width:640px){.analysis-rank-row{grid-template-columns:34px 1fr}.analysis-rank-coverage,.analysis-rank-total,.analysis-rank-score,.analysis-winner-details{grid-column:2}.analysis-plan-groups{grid-template-columns:1fr}}
@media print{.protocol-position-block{break-inside:auto}.protocol-position-block h3,.protocol-position-best{break-after:avoid}.protocol-position-table{break-inside:auto}.protocol-position-table tr{break-inside:avoid}.protocol-position-best{font-size:9.5px}.protocol-coverage-table th,.protocol-coverage-table td,.protocol-position-table th,.protocol-position-table td,.protocol-plan-table th,.protocol-plan-table td{font-size:8.8px!important;padding:4px 5px!important}}

/* Stage 4.8.126 — compare procurement scenarios before any supplier is asked to revise an invoice. */
.analysis-scenarios{margin:18px 0;padding:20px;border:1px solid rgba(25,53,61,.14);border-radius:18px;background:#fbfdfd}
.analysis-scenarios-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}.analysis-scenarios-head>div:first-child{min-width:0}.analysis-scenarios-head span,.analysis-scenario-conclusion span,.analysis-scenario-card header span,.analysis-scenario-numbers span,.analysis-scenario-threshold span{display:block;color:#819095;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.analysis-scenarios-head h4{margin:4px 0 0;color:#1c3135;font-size:21px}.analysis-scenarios-head p{margin:6px 0 0;color:#6a7a7f;font-size:13px;line-height:1.45}
.analysis-scenario-threshold{flex:0 0 230px;padding:12px 14px;border-radius:13px;background:#eef7f6}.analysis-scenario-threshold strong{display:block;margin-top:4px;color:#147b74;font-size:17px}.analysis-scenario-threshold small{display:block;margin-top:3px;color:#7b898d;font-size:10px}
.analysis-scenario-conclusion{margin-bottom:14px;padding:14px 16px;border:1px solid #8bd4cb;border-radius:14px;background:#eefaf8}.analysis-scenario-conclusion strong{display:block;margin-top:3px;color:#126f68;font-size:18px}.analysis-scenario-conclusion p{margin:5px 0 0;color:#586b6f;font-size:12px;line-height:1.45}
.analysis-scenario-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.analysis-scenario-card{min-width:0;padding:15px;border:1px solid #d8e4e4;border-radius:15px;background:#fff}.analysis-scenario-card.is-recommended{border-color:#54c8bb;box-shadow:0 8px 24px rgba(18,126,116,.10)}.analysis-scenario-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.analysis-scenario-card header strong{display:block;margin-top:3px;color:#22383c;font-size:16px}.analysis-scenario-card header b{padding:5px 8px;border-radius:999px;background:#edf4f3;color:#49666a;font-size:10px;white-space:nowrap}.analysis-scenario-card.is-recommended header b{background:#def5f0;color:#126f68}
.analysis-scenario-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.analysis-scenario-numbers>div{min-width:0;padding:9px;border-radius:10px;background:#f5f8f8}.analysis-scenario-numbers strong{display:block;margin-top:4px;color:#263b3e;font-size:13px;overflow-wrap:anywhere}.analysis-scenario-workload{padding:9px 10px;border-radius:10px;background:#fff8ed;color:#795827;font-size:11px;line-height:1.4}.analysis-scenario-workload strong{color:#6c4c1f}
.analysis-scenario-groups{display:grid;gap:7px;margin-top:10px}.analysis-scenario-groups>div{display:grid;gap:2px;padding:8px 9px;border:1px solid #e5ecec;border-radius:9px;background:#fafcfc}.analysis-scenario-groups strong{color:#30464a;font-size:12px}.analysis-scenario-groups span{color:#718085;font-size:10px;line-height:1.4;overflow-wrap:anywhere}.analysis-scenario-delta{margin:10px 0 0;font-size:10px;line-height:1.4}.analysis-scenario-delta.is-saving{color:#16735e}.analysis-scenario-delta.is-cost{color:#99602c}.analysis-scenario-footnote{margin-top:12px;padding:10px 12px;border-radius:10px;background:#f0f3f3;color:#5d6d71;font-size:11px;line-height:1.45}.analysis-scenario-footnote strong{color:#2f4c50}
@media(max-width:760px){.analysis-scenarios-head{flex-direction:column}.analysis-scenario-threshold{flex-basis:auto;width:100%;box-sizing:border-box}.analysis-scenario-grid{grid-template-columns:1fr}.analysis-scenario-numbers{grid-template-columns:1fr}}

.protocol-scenario-table th:nth-child(1){width:20%}.protocol-scenario-table th:nth-child(2){width:10%}.protocol-scenario-table th:nth-child(3){width:17%}.protocol-scenario-table th:nth-child(4){width:15%}.protocol-scenario-table th:nth-child(5){width:14%}.protocol-scenario-table th:nth-child(6){width:24%}.protocol-scenario-table tr.is-recommended td{background:#eefaf7}.protocol-scenario-note{margin:10px 0;padding:9px 11px;border:1px solid #cde3df;border-radius:8px;background:#f3f9f8;color:#50676b;line-height:1.45}.protocol-scenario-note strong{color:#166f68}
@media print{.analysis-scenarios{display:none!important}.protocol-scenario-table th,.protocol-scenario-table td{font-size:8.6px!important;padding:4px 5px!important}.protocol-scenario-note{font-size:9px}}
/* Stage 4.8.127 — несколько строк КП на одну позицию заявки */
.multi-winner-help{display:grid;gap:5px;margin:0 0 16px;padding:14px 16px;border:1px solid #b9dde0;border-radius:14px;background:#f2fbfb;color:#24464a}.multi-winner-help strong{font-size:14px;color:#173a3e}.multi-winner-help span{font-size:13px;line-height:1.45}
.multi-winner-table--lines td:first-child{min-width:220px;width:220px}.multi-winner-table--lines td:nth-child(2){min-width:560px}.multi-winner-table--lines td:nth-child(3){min-width:180px;width:180px}.multi-winner-table--lines td:nth-child(4){min-width:150px;width:150px}
.award-choice-list{display:grid;gap:9px}.award-choice{display:grid;grid-template-columns:minmax(0,1fr) 155px 140px;gap:12px;align-items:center;padding:11px 12px;border:1px solid #dbe3e8;border-radius:12px;background:#fff;transition:.15s ease}.award-choice:hover{border-color:#a9cbd0}.award-choice.is-selected{border-color:#77c9c1;background:#f2fbf9;box-shadow:0 0 0 1px rgba(48,160,148,.08)}
.award-choice-main{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:start;cursor:pointer}.award-choice-main input{margin-top:3px;width:17px;height:17px}.award-choice-main span{display:grid;gap:2px;min-width:0}.award-choice-main strong{font-size:14px;color:#1f2933}.award-choice-main b{font-size:13px;color:#30434c;overflow-wrap:anywhere}.award-choice-main small{font-size:12px;line-height:1.35;color:#788995;overflow-wrap:anywhere}
.award-choice-qty{display:grid;grid-template-columns:auto minmax(70px,1fr) auto;gap:6px;align-items:center}.award-choice-qty span,.award-choice-qty em{font-size:12px;color:#667883;font-style:normal}.award-choice-qty input{width:100%!important;min-width:0}.award-choice-total{text-align:right;font-weight:700;font-size:13px;white-space:nowrap;color:#24333b}.award-choice-empty{padding:12px;border:1px dashed #ccd7dd;border-radius:10px;color:#7a8992;background:#fafcfd}
.award-distribution-status strong,.award-position-total strong{display:block;font-size:14px}.award-distribution-status small{display:block;margin-top:5px;font-size:12px}.multi-winner-table--lines tr.is-complete .award-distribution-status strong{color:#167260}.multi-winner-table--lines tr.is-complete .award-distribution-status small{color:#2f7c70}.multi-winner-table--lines tr.is-under .award-distribution-status strong{color:#9a6700}.multi-winner-table--lines tr.is-under .award-distribution-status small{color:#8a6c2b}.multi-winner-table--lines tr.is-over .award-distribution-status strong,.multi-winner-table--lines tr.is-over .award-distribution-status small{color:#b42318}
@media(max-width:980px){.award-choice{grid-template-columns:1fr}.award-choice-total{text-align:left}.multi-winner-table--lines td:nth-child(2){min-width:430px}}
@media(max-width:760px){.multi-winner-table--lines td:first-child{min-width:190px}.multi-winner-table--lines td:nth-child(2){min-width:360px}.award-choice{padding:10px}.award-choice-qty{grid-template-columns:auto 110px auto}}


/* Stage 4.8.129 — зафиксированный анализ остаётся доступным после перехода дальше. */
.request-process-step.is-completed.is-reviewable{cursor:pointer;text-decoration:none;transition:.15s ease}
.request-process-step.is-completed.is-reviewable:hover,.request-process-step.is-completed.is-reviewable.is-selected{background:#edf8f5;color:#146b5c}
.analysis-workspace--readonly{position:relative}
.analysis-readonly-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:14px 16px;border:1px solid #a9d9ce;border-radius:14px;background:#f1faf7}
.analysis-readonly-banner>div{min-width:0}.analysis-readonly-banner span{display:block;color:#68817c;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.analysis-readonly-banner strong{display:block;margin-top:3px;color:#145f54;font-size:15px}.analysis-readonly-banner p{margin:4px 0 0;color:#60736f;font-size:12px;line-height:1.4}
.analysis-supplier-card.is-awarded{border-color:#43b697!important;background:#edf9f4!important;box-shadow:0 0 0 2px rgba(32,154,121,.10),0 8px 24px rgba(32,154,121,.08)}
.analysis-badges span.is-awarded{background:#d6f2e8;color:#11654f;border:1px solid #83cfb7;font-weight:900}
.analysis-comparison-row.is-awarded{background:#eaf8f2!important;box-shadow:inset 4px 0 0 #35a982}
.analysis-table-award{display:block;margin-top:3px;color:#117258;font-size:10px;font-weight:850}
.protocol-position-table tr.is-selected-award td{background:#dff4ea!important;border-color:#9bcfbb!important}
.protocol-position-table tr.is-selected-award td:first-child{box-shadow:inset 4px 0 0 #2c9b73}
.protocol-selected-badge{display:block;width:max-content;max-width:100%;margin-top:4px;padding:2px 6px;border:1px solid #64b795;border-radius:999px;background:#cfeedd;color:#0f684d;font-size:8px;font-weight:900;line-height:1.25;white-space:normal}
@media(max-width:760px){.analysis-readonly-banner{align-items:flex-start;flex-direction:column}}
@media print{
  .protocol-sheet,.protocol-sheet *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .protocol-position-table tr.is-selected-award td{background:#dff4ea!important}
  .protocol-selected-badge{background:#cfeedd!important;border-color:#64b795!important;color:#0f684d!important}
}
