body{margin:0}#root{min-height:100vh}@layer rdg{@layer Defaults,CheckboxInput,CheckboxIcon,CheckboxLabel,Cell,HeaderCell,SummaryCell,EditCell,Row,HeaderRow,SummaryRow,GroupedRow,Root;}@layer rdg.MeasuringCell{.rdg-7-0-0-beta-60-fa71d63e{contain:strict;visibility:hidden;grid-row:1}}@layer rdg.Cell{.rdg-7-0-0-beta-60-85c48527{border-inline-end:var(--rdg-border-width) solid var(--rdg-border-color);border-block-end:var(--rdg-border-width) solid var(--rdg-border-color);background-color:inherit;white-space:nowrap;text-overflow:ellipsis;outline:none;align-content:center;padding-block:0;padding-inline:8px;position:relative;overflow:clip}.rdg-7-0-0-beta-60-85c48527[aria-selected=true]{outline:var(--rdg-selection-width) solid var(--rdg-selection-color);outline-offset:calc(var(--rdg-selection-width) * -1)}}@layer rdg.Cell{.rdg-7-0-0-beta-60-203d9925{z-index:1;position:sticky}}@layer rdg.DragHandle{.rdg-7-0-0-beta-60-bfba19bc{--rdg-drag-handle-size:8px;z-index:0;cursor:move;inline-size:var(--rdg-drag-handle-size);block-size:var(--rdg-drag-handle-size);background-color:var(--rdg-selection-color);place-self:end}.rdg-7-0-0-beta-60-bfba19bc:hover{--rdg-drag-handle-size:16px;border:2px solid var(--rdg-selection-color);background-color:var(--rdg-background-color)}}@layer rdg.DragHandle{.rdg-7-0-0-beta-60-7abddb3e{z-index:1;position:sticky}}@layer rdg.CheckboxInput{.rdg-7-0-0-beta-60-3b807ead{block-size:20px;inline-size:20px;margin:auto;display:block}.rdg-7-0-0-beta-60-3b807ead:focus-visible{outline:2px solid var(--rdg-checkbox-focus-color);outline-offset:-3px}.rdg-7-0-0-beta-60-3b807ead:enabled{cursor:pointer}}@layer rdg.GroupCellContent{.rdg-7-0-0-beta-60-07919382{outline:none}}@layer rdg.GroupCellCaret{.rdg-7-0-0-beta-60-02a50147{stroke:currentColor;stroke-width:1.5px;fill:#0000;vertical-align:middle;margin-inline-start:4px}.rdg-7-0-0-beta-60-02a50147>path{transition:d .1s}}@layer rdg.SortableHeaderCell{.rdg-7-0-0-beta-60-56a248e4{display:flex}}@layer rdg.SortableHeaderCellName{.rdg-7-0-0-beta-60-7fad8c83{text-overflow:ellipsis;flex-grow:1;overflow:clip}}@layer rdg.Cell{.rdg-7-0-0-beta-60-35ccb4c8{background-color:#ccf}}@layer rdg.EditCell{.rdg-7-0-0-beta-60-46f9ea88{padding:0}}@layer rdg.HeaderRow{.rdg-7-0-0-beta-60-0dbd5994{background-color:var(--rdg-header-background-color);font-weight:700;display:contents}.rdg-7-0-0-beta-60-0dbd5994>.rdg-7-0-0-beta-60-85c48527{z-index:2;position:sticky}.rdg-7-0-0-beta-60-0dbd5994>.rdg-7-0-0-beta-60-203d9925{z-index:3}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-2a7e240d{cursor:pointer}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-1893dc0f{touch-action:none}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-4e60db91{cursor:col-resize;inline-size:10px;position:absolute;inset-block:0;inset-inline-end:0}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-f2d18717{background-color:var(--rdg-header-draggable-background-color)}}@layer rdg.HeaderCell{.rdg-7-0-0-beta-60-3d12c7ae{outline-offset:-2px;border-radius:4px;outline:2px solid #008cff;width:fit-content}}@layer rdg.Row{.rdg-7-0-0-beta-60-3c083f1b{grid-column:1/-1;grid-template:subgrid / subgrid;background-color:var(--rdg-background-color);display:grid}.rdg-7-0-0-beta-60-3c083f1b:hover{background-color:var(--rdg-row-hover-background-color)}.rdg-7-0-0-beta-60-3c083f1b:focus{outline:none}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]:after{content:"";z-index:1;pointer-events:none;border:var(--rdg-selection-width) solid var(--rdg-selection-color);grid-column:1/-1}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-start:first-child:before,.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-end:last-child:after{content:"";display:inline-block;position:absolute;inset-block:0}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-start:first-child:before{border-inline-start:var(--rdg-selection-width) solid var(--rdg-selection-color);inset-inline-start:0}.rdg-7-0-0-beta-60-3c083f1b[tabindex="0"]>.rdg-cell-frozen-end:last-child:after{border-inline-end:var(--rdg-selection-width) solid var(--rdg-selection-color);inset-inline-end:0}.rdg-7-0-0-beta-60-3c083f1b[aria-selected=true]{background-color:var(--rdg-row-selected-background-color)}.rdg-7-0-0-beta-60-3c083f1b[aria-selected=true]:hover{background-color:var(--rdg-row-selected-hover-background-color)}}@layer rdg.SortIcon{.rdg-7-0-0-beta-60-3d5115f3{fill:currentColor}.rdg-7-0-0-beta-60-3d5115f3>path{transition:d .1s}}@layer rdg.Defaults{.rdg-7-0-0-beta-60-ccd2e5d9 *,.rdg-7-0-0-beta-60-ccd2e5d9 :before,.rdg-7-0-0-beta-60-ccd2e5d9 :after{box-sizing:inherit}}@layer rdg.Root{.rdg-7-0-0-beta-60-ccd2e5d9{--rdg-selection-width:2px;--rdg-selection-color:#67afe9;--rdg-font-size:14px;--rdg-border-width:1px;--rdg-summary-border-width:calc(var(--rdg-border-width) * 2);--rdg-color:var(--lightningcss-light,#000)var(--lightningcss-dark,#ddd);--rdg-border-color:var(--lightningcss-light,#ddd)var(--lightningcss-dark,#444);--rdg-summary-border-color:var(--lightningcss-light,#aaa)var(--lightningcss-dark,#555);--rdg-background-color:var(--lightningcss-light,#fff)var(--lightningcss-dark,#212121);--rdg-header-background-color:var(--lightningcss-light,#f9f9f9)var(--lightningcss-dark,#1b1b1b);--rdg-header-draggable-background-color:var(--lightningcss-light,#e7e7e7)var(--lightningcss-dark,#2d2d2d);--rdg-row-hover-background-color:var(--lightningcss-light,#f5f5f5)var(--lightningcss-dark,#171717);--rdg-row-selected-background-color:var(--lightningcss-light,#dbecfa)var(--lightningcss-dark,#1a73bc);--rdg-row-selected-hover-background-color:var(--lightningcss-light,#c9e3f8)var(--lightningcss-dark,#1768ab);--rdg-checkbox-focus-color:#61b8ff}.rdg-7-0-0-beta-60-ccd2e5d9.rdg-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.rdg-7-0-0-beta-60-ccd2e5d9.rdg-light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.rdg-7-0-0-beta-60-ccd2e5d9{accent-color:var(--lightningcss-light,#005194)var(--lightningcss-dark,#94cfff);contain:content;content-visibility:auto;border:1px solid var(--rdg-border-color);box-sizing:border-box;background-color:var(--rdg-background-color);block-size:350px;color:var(--rdg-color);font-size:var(--rdg-font-size);font-variant-numeric:tabular-nums;display:grid;overflow:auto;container:rdg-root/scroll-state}.rdg-7-0-0-beta-60-ccd2e5d9:before{content:"";grid-area:-2/-2/-1/-1}.rdg-7-0-0-beta-60-ccd2e5d9>:nth-last-child(1 of .rdg-top-summary-row)>.rdg-7-0-0-beta-60-85c48527{border-block-end:var(--rdg-summary-border-width) solid var(--rdg-summary-border-color)}.rdg-7-0-0-beta-60-ccd2e5d9>:nth-child(1 of .rdg-bottom-summary-row)>.rdg-7-0-0-beta-60-85c48527{border-block-start:var(--rdg-summary-border-width) solid var(--rdg-summary-border-color)}}@layer rdg.Root{.rdg-7-0-0-beta-60-e9b0e1c9{-webkit-user-select:none;user-select:none}.rdg-7-0-0-beta-60-e9b0e1c9 .rdg-7-0-0-beta-60-3c083f1b{cursor:move}}.rdg-7-0-0-beta-60-2e639f12{pointer-events:none;z-index:1;opacity:1;width:10px;transition:opacity .1s;position:sticky}.rdg-7-0-0-beta-60-2e639f12:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){transform:scaleX(-1)}.rdg-7-0-0-beta-60-86aef152{background-image:linear-gradient(90deg,var(--lightningcss-light,#00000026)var(--lightningcss-dark,#0006),#0000)}@container rdg-root not scroll-state(scrollable:inline-start){.rdg-7-0-0-beta-60-86aef152{opacity:0}}.rdg-7-0-0-beta-60-7689f238{background-image:linear-gradient(270deg,var(--lightningcss-light,#00000026)var(--lightningcss-dark,#0006),#0000)}@container rdg-root not scroll-state(scrollable:inline-end){.rdg-7-0-0-beta-60-7689f238{opacity:0}}.rdg-7-0-0-beta-60-487ac462{z-index:2}@layer rdg.SummaryRow{.rdg-7-0-0-beta-60-0b90c82c{z-index:2;position:sticky}}@layer rdg.GroupedRow{.rdg-7-0-0-beta-60-e74a2be3:not([aria-selected=true]){background-color:var(--rdg-header-background-color)}.rdg-7-0-0-beta-60-e74a2be3>.rdg-7-0-0-beta-60-85c48527:not(:last-child,.rdg-7-0-0-beta-60-203d9925),.rdg-7-0-0-beta-60-e74a2be3>:nth-last-child(n+2 of .rdg-cell-frozen-start),.rdg-7-0-0-beta-60-e74a2be3>:nth-last-child(n+2 of .rdg-cell-frozen-end){border-inline-end:none}}@layer rdg.TextEditor{.rdg-7-0-0-beta-60-2f8db206{appearance:none;box-sizing:border-box;vertical-align:top;block-size:100%;inline-size:100%;color:var(--rdg-color);background-color:var(--rdg-background-color);font-family:inherit;font-size:var(--rdg-font-size);border:2px solid #ccc;padding-block:0;padding-inline:6px}.rdg-7-0-0-beta-60-2f8db206:focus{border-color:var(--rdg-selection-color);outline:none}.rdg-7-0-0-beta-60-2f8db206::placeholder{color:#999;opacity:1}}:root{--color-bg:#f3f5f7;--color-surface:#fff;--color-border:#e3e7ec;--color-border-strong:#d3d9e0;--color-text:#1c2530;--color-text-muted:#667085;--color-text-faint:#98a2b3;--color-navy:#1f2b3d;--color-navy-light:#2c3c53;--color-accent:#219653;--color-accent-dark:#197a44;--color-accent-bg:#eafaf1;--color-info:#2980b9;--color-info-bg:#eaf3fa;--color-warning:#e67e22;--color-warning-bg:#fdf1e6;--color-danger:#c0392b;--color-danger-bg:#fdecea;--color-neutral:#64748b;--color-neutral-bg:#eef1f5;--radius-sm:5px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #1018280f;--shadow-md:0 2px 10px #10182814;--shadow-lg:0 8px 28px #10182824;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}h1,h2,h3,h4{color:var(--color-text);margin:0;font-weight:700}h2{font-size:21px}h3{color:#333;margin-bottom:12px;font-size:15px}p{margin:0 0 8px}a{color:var(--color-info)}button,input,textarea,select{font-family:inherit;font-size:14px}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ccd3db;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#b3bcc7}.app{flex-direction:column;min-height:100vh;display:flex}.app-loading{min-height:100vh;color:var(--color-text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.header{background:var(--color-navy);color:#fff;z-index:20;height:56px;box-shadow:var(--shadow-md);flex-shrink:0;align-items:center;gap:28px;padding:0 24px;display:flex;position:sticky;top:0}.header .brand{color:#fff;white-space:nowrap;letter-spacing:.2px;font-size:16px;font-weight:700;text-decoration:none}.header nav{scrollbar-width:none;flex:1;gap:4px;min-width:0;display:flex;overflow-x:auto}.header nav::-webkit-scrollbar{display:none}.header nav a{color:#b8c4d4;border-radius:var(--radius-sm);white-space:nowrap;padding:8px 14px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .12s,color .12s}.header nav a:hover{color:#fff;background:#ffffff0f}.header nav a.active{color:#fff;background:#ffffff1f}.header-user{color:#cdd7e4;white-space:nowrap;align-items:center;gap:10px;font-size:13px;display:flex}.header-user button{color:#dbe3ec;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #45566e;padding:5px 12px;font-size:12.5px;transition:background .12s,border-color .12s}.header-user button:hover{background:#ffffff14;border-color:#5b6f89}main{flex:1;width:100%;min-width:0;max-width:1320px;margin:0 auto;padding:28px 24px 60px}.page-header{margin-bottom:20px}.page-header h2{margin-bottom:4px}.page-header__subtitle{color:var(--color-text-muted);max-width:760px;font-size:13.5px}.back-link{color:var(--color-text-muted);font-size:13px;font-weight:500;text-decoration:none}.back-link:hover{color:var(--color-text);text-decoration:underline}.file-list{flex-direction:column;gap:6px;margin:0 0 20px;padding:0;list-style:none;display:flex}.file-list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:9px 13px;font-size:13.5px}.file-status{color:var(--color-text-muted);font-size:12.5px}.file-status.ok{color:var(--color-accent-dark);font-weight:600}.login-page{background:linear-gradient(160deg, var(--color-navy) 0%, #16202e 55%, #0f1620 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-form{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;gap:14px;width:100%;max-width:340px;padding:36px 32px;display:flex}.login-form h1{text-align:center;margin:0 0 4px;font-size:19px}.login-form__subtitle{text-align:center;color:var(--color-text-muted);margin:0 0 8px;font-size:13px}.login-form input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);outline:none;padding:11px 13px;font-size:14px;transition:border-color .12s,box-shadow .12s}.login-form input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-bg)}.login-form button{background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;margin-top:4px;padding:11px;font-size:14px;font-weight:600;transition:background .12s}.login-form button:hover{background:var(--color-accent-dark)}.error{color:var(--color-danger);background:var(--color-danger-bg);border-radius:var(--radius-sm);padding:8px 10px;font-size:13px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:18px 20px}.tabs{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:2px;margin-bottom:18px;display:flex}.tab{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:13.5px;font-weight:500;transition:color .12s}.tab:hover{color:var(--color-text)}.tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:700}.search,.filters-row input,.cpv-search{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);outline:none;padding:9px 12px;transition:border-color .12s,box-shadow .12s}.search:focus,.filters-row input:focus,.cpv-search:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-bg)}.search{width:100%;max-width:420px;margin-bottom:18px;display:block}.table-scroll{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow-x:auto}.tender-table{border-collapse:collapse;width:100%;min-width:640px}.tender-table th,.tender-table td{text-align:left;white-space:nowrap;padding:10px;font-size:13.5px}.tender-table td{border-top:1px solid var(--color-border);color:#333}.tender-table th{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);z-index:1;background:#f8f9fb;font-size:12px;font-weight:600;position:sticky;top:0}.tender-table tbody tr{transition:background .1s}.tender-table tbody tr:hover{background:#f8fafb}.tender-table a{color:var(--color-info);font-weight:500;text-decoration:none}.tender-table a:hover{text-decoration:underline}.tender-table td.title-cell{white-space:normal;min-width:180px;max-width:290px;line-height:1.4}.tender-table td.buyer-cell{white-space:normal;min-width:120px;max-width:170px;color:var(--color-text-muted);line-height:1.4}.tender-table td.nowrap-cell{white-space:nowrap}.empty{color:var(--color-text-faint);padding:28px 4px;font-style:italic}.table-scroll .empty{text-align:center;padding:32px 20px}.badge{color:#fff;background:var(--color-neutral);white-space:nowrap;letter-spacing:.01em;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.badge-new{background:var(--color-neutral)}.badge-needs_review{background:var(--color-warning)}.badge-approved{background:var(--color-accent)}.badge-sent{background:var(--color-info)}.badge-rejected{background:var(--color-danger)}.process-btn{border:1px solid var(--color-info);color:var(--color-info);border-radius:var(--radius-sm);cursor:pointer;background:#fff;padding:5px 11px;font-size:12px;font-weight:600;transition:background .12s}.process-btn:hover{background:var(--color-info-bg)}.priority-badge{color:var(--color-warning);white-space:nowrap;font-size:11.5px;font-weight:600}.tender-meta{gap:8px;font-size:13.5px;display:grid}.tender-meta>div{flex-wrap:wrap;gap:6px;display:flex}.tender-meta b{color:var(--color-text-muted);flex-shrink:0;min-width:190px;font-weight:600}.detail-info-table td{vertical-align:top;white-space:normal;padding:10px 14px;font-size:13.5px}.detail-info-table td.detail-info-label{white-space:nowrap;width:1%}.detail-info-label{color:var(--color-text-muted);font-weight:600}.timeline{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px 0;display:grid}.timeline-stage{border-left:2px solid var(--color-border);gap:10px;min-width:0;padding:0 16px;display:flex}.timeline-stage:first-child{border-left:none;padding-left:0}.timeline-stage__marker{background:var(--color-neutral-bg);width:22px;height:22px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:11.5px;font-weight:700;display:flex}.timeline-stage.is-current .timeline-stage__marker{background:var(--color-accent);color:#fff;box-shadow:0 0 0 3px var(--color-accent-bg)}.timeline-stage__body{min-width:0}.timeline-stage__title{color:#333;margin-bottom:3px;font-size:13px;font-weight:600}.timeline-stage.is-current .timeline-stage__title{color:var(--color-accent-dark)}.timeline-stage__date{color:var(--color-text-muted);font-size:12px}.timeline-stage__days{color:var(--color-warning);margin-top:3px;font-size:12px;font-weight:700}.comment-list{flex-direction:column;gap:10px;max-height:340px;margin:0 0 14px;padding:0;list-style:none;display:flex;overflow-y:auto}.comment-item{border-radius:var(--radius-sm);border-left:3px solid var(--color-accent);background:#f8f9fb;padding:11px 14px}.comment-item__meta{color:var(--color-text-muted);margin-bottom:4px;font-size:12px}.comment-item__meta b{color:var(--color-text)}.comment-item__date{color:var(--color-text-faint)}.comment-item__text{white-space:pre-wrap;word-break:break-word;font-size:13.5px}.comment-form{flex-direction:column;gap:8px;display:flex}.comment-form .notes-input{min-height:54px;margin-bottom:0}.comment-form button{align-self:flex-end}.notes-input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);resize:vertical;outline:none;width:100%;min-height:64px;margin-bottom:12px;padding:10px 12px;font-family:inherit;transition:border-color .12s,box-shadow .12s}.notes-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-bg)}.offer-section__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.offer-section__header h3{margin-bottom:0}.offer-section__header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.undo-toggle,.fullscreen-toggle{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-muted);white-space:nowrap;background:#fff;padding:7px 13px;font-size:12.5px;font-weight:500;transition:background .12s,color .12s}.undo-toggle:hover:not(:disabled),.fullscreen-toggle:hover{color:var(--color-text);background:#f4f6f8}.undo-toggle:disabled{opacity:.45;cursor:default}body.no-scroll{overflow:hidden}.offer-section.is-fullscreen{z-index:100;background:var(--color-bg);box-sizing:border-box;padding:20px 32px 48px;position:fixed;inset:0;overflow-y:auto}.offer-section.is-fullscreen .offer-section__header{background:var(--color-bg);z-index:2;border-bottom:1px solid var(--color-border);margin:-20px -32px 16px;padding:16px 32px;position:sticky;top:-20px}.offer-section.is-fullscreen .fullscreen-toggle{background:var(--color-navy);color:#fff;border-color:var(--color-navy);font-weight:600}.offer-section.is-fullscreen .fullscreen-toggle:hover{background:var(--color-navy-light)}.offer-section__title{color:var(--color-text-muted);margin:-8px 0 16px;font-size:13.5px}.lot-section{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:18px 20px}.lot-section h4{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 12px;font-size:14.5px;display:flex}.lot-budget{color:var(--color-text-muted);font-size:13px;font-weight:400}.grand-total{text-align:right;padding:4px 2px;font-size:15.5px;font-weight:700}.grid-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow-x:auto}.grid-wrapper [role=columnheader]{line-height:1.25;white-space:normal!important}.grid-wrapper [role=gridcell]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cell-tip{text-overflow:ellipsis;display:block;overflow:hidden}.grid-wrapper [role=gridcell].cell-editable{background:var(--color-accent-bg)}.grid-wrapper [role=gridcell].cell-primary{background:#d9f2e3;font-weight:600}.grid-wrapper [role=gridcell].cell-locked{background:var(--color-neutral-bg);color:var(--color-text-muted)}.grid-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.grid-toolbar button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;background:#fff;padding:7px 13px;font-size:13px;transition:background .12s}.grid-toolbar button:hover:not(:disabled){background:#f4f6f8}.grid-toolbar button:disabled{opacity:.5;cursor:default}.total{margin-left:auto;font-size:13.5px;font-weight:700}.filters-form{flex-direction:column;gap:8px;max-width:720px;display:flex}.filters-form>label:not(.checkbox-label){color:#333;margin-top:10px;font-size:13.5px;font-weight:700}.filters-form code{background:var(--color-neutral-bg);border-radius:3px;padding:1px 5px;font-size:12.5px}.filters-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.filters-row label{color:var(--color-text-muted);flex-direction:column;gap:5px;font-size:12.5px;font-weight:500;display:flex}.filters-row input{width:100%}.status-checkboxes{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);flex-wrap:wrap;gap:8px;padding:14px;display:flex}.checkbox-label{border-radius:var(--radius-sm);align-items:center;gap:7px;padding:5px 10px;font-size:13px;font-weight:400;transition:background .12s;display:flex}.checkbox-label:hover{background:#f4f6f8}.checkbox-label input{accent-color:var(--color-accent);cursor:pointer;width:15px;height:15px}.cpv-tree-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px}.cpv-search{width:100%;margin-bottom:10px}.cpv-tree{max-height:360px;padding-right:4px;font-size:13px;overflow:hidden auto}.cpv-node-row{align-items:flex-start;gap:4px;min-width:0;padding:2px 0;display:flex}.cpv-node-row .checkbox-label{min-width:0;padding:2px 6px}.cpv-node-row .checkbox-label span:last-child{overflow-wrap:anywhere;min-width:0}.cpv-toggle{cursor:pointer;width:18px;color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;padding:3px 0 0;font-size:12px}.cpv-toggle-spacer{flex-shrink:0;width:18px;display:inline-block}.cpv-children{border-left:1px solid var(--color-border);margin-left:20px;padding-left:4px}.cpv-code{color:var(--color-text-faint);margin-right:4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.cpv-selected{border-top:1px solid var(--color-border);color:var(--color-text-muted);word-break:break-word;margin-top:10px;padding-top:10px;font-size:12px}.actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.actions button,.actions .button,.filters-form button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text);background:#fff;align-items:center;gap:6px;padding:10px 18px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.actions button:hover:not(:disabled),.actions .button:hover,.filters-form button:hover:not(:disabled){background:#f4f6f8}.actions button:disabled{opacity:.55;cursor:default}.actions .primary,.filters-form button.primary,.filters-form button[type=submit]{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.actions .primary:hover:not(:disabled),.filters-form button.primary:hover:not(:disabled),.filters-form button[type=submit]:hover:not(:disabled){background:var(--color-accent-dark);border-color:var(--color-accent-dark)}.filters-form button{align-self:flex-start;margin-top:6px}.message{color:var(--color-accent-dark);background:var(--color-accent-bg);border-radius:var(--radius-sm);margin-top:12px;padding:9px 13px;font-weight:600;display:inline-block}.message-warning{color:#92400e;background:var(--color-warning-bg);margin:0 0 14px;display:block}.search-price-btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;background:#fff;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:13px;line-height:1;display:flex}.search-price-btn:hover{background:#f4f6f8}.search-price-btn.is-warning{background:var(--color-warning-bg);border-color:var(--color-warning)}.search-price-btn.is-warning:hover{background:#fce3c4}.modal-overlay{z-index:200;background:#10182873;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;gap:12px;width:100%;max-width:480px;max-height:80vh;padding:20px 22px;display:flex}.modal-box h3{margin:0}.modal-subtitle{color:var(--color-text-muted);margin:-6px 0 0;font-size:13px}.modal-search{max-width:none;margin:0}.picker-list{flex-direction:column;flex:1;gap:6px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.picker-list li{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:9px 12px;transition:background .12s,border-color .12s}.picker-list li:hover{background:var(--color-accent-bg);border-color:var(--color-accent)}.picker-list li.empty{cursor:default;color:var(--color-text-faint);text-align:center;padding:20px;font-style:italic}.picker-list li.empty:hover{border-color:var(--color-border);background:0 0}.picker-item__name{font-size:13.5px;font-weight:600}.picker-item__meta{color:var(--color-text-muted);margin-top:2px;font-size:12px}.modal-close{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;background:#fff;align-self:flex-end;padding:7px 15px;font-size:13px}.modal-close:hover{background:#f4f6f8}.doc-preview-overlay{z-index:150;background:var(--color-bg);padding:0 0 48px;position:fixed;inset:0;overflow-y:auto}.doc-preview-header{z-index:2;background:var(--color-navy);color:#fff;box-shadow:var(--shadow-md);justify-content:space-between;align-items:center;gap:16px;padding:16px 32px;display:flex;position:sticky;top:0}.doc-preview-header h3{color:#fff;margin-bottom:4px}.doc-preview-hint{color:#b8c4d4;font-size:12.5px}.doc-preview-header .fullscreen-toggle{color:#fff;background:#ffffff14;border-color:#ffffff40}.doc-preview-header .fullscreen-toggle:hover{color:#fff;background:#ffffff29}.doc-preview-body{background:#6b7280;max-width:1200px;min-height:calc(100vh - 60px);margin:0 auto;padding:28px 24px 48px}.doc-sheet{color:#000;background:#fff;border:1px solid #ccc;max-width:1000px;margin:0 auto 32px;padding:28px 34px 34px;font-family:Times New Roman,Times,serif;box-shadow:0 2px 10px #00000040}.doc-sheet__stamp{text-align:right;margin-bottom:10px;font-size:12px;font-weight:700;line-height:1.3}.doc-sheet__title{text-align:center;margin-bottom:8px;font-family:Calibri,Times New Roman,serif;font-size:17px;font-weight:700}.doc-sheet__note{margin-bottom:10px;font-size:13px;font-style:italic;font-weight:700}.doc-sheet__meta{margin-bottom:4px;font-size:13px;font-weight:700}.doc-sheet__meta:last-of-type{margin-bottom:14px}.doc-table{border-collapse:collapse;width:100%;min-width:760px;font-family:inherit;font-size:12px}.doc-table th,.doc-table td{text-align:left;vertical-align:middle;border:1px solid #000;padding:5px 7px}.doc-table th{text-align:center;background:#fff;font-size:11px;font-weight:700}.doc-lot-row td{text-align:center;background:#f0f0f0;font-weight:700}.doc-center{text-align:center}.doc-num{text-align:right;font-variant-numeric:tabular-nums}.doc-muted{color:#555}.doc-edit-field{cursor:text;border-bottom:1px dashed #9aa0a6;min-width:12px;padding-bottom:1px;display:inline-block}.doc-edit-field:hover{border-bottom-color:var(--color-accent);background:var(--color-accent-bg)}.doc-edit-placeholder{color:#999;font-style:italic}.doc-edit-input{border:1px solid var(--color-accent);width:100%;box-shadow:0 0 0 2px var(--color-accent-bg);border-radius:2px;outline:none;padding:2px 4px;font-family:inherit;font-size:12px}.upload-row{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:6px;display:flex}input[type=file]{border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;padding:8px;font-size:13px}@media (width<=720px){.header{gap:14px;padding:0 14px}main{padding:20px 14px 40px}.tender-meta b{width:100%;min-width:0}}
