/* Tender workspace: the same petroleum blue, cyan and quiet surfaces as the public landing page. */
.pp-tender-screen {
    --tender-ink: #122f3b;
    --tender-muted: #5b7680;
    --tender-line: #dce8e9;
    --tender-surface: #fff;
    --tender-cyan: #65d5ca;
    width: 100%;
    padding-bottom: 2rem;
}

.pp-tender-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 0 0 1.35rem;
    padding: 1.6rem 1.8rem;
    border: 1px solid rgba(151, 221, 220, .18);
    border-radius: 18px;
    color: #f4fbfa;
    background: radial-gradient(circle at 3% 100%, rgba(38, 125, 143, .35), transparent 43%),
        linear-gradient(125deg, #071b2a 6%, #0a2b3a 66%, #0d3948);
    box-shadow: 0 18px 42px rgba(7, 35, 48, .12);
}

.pp-tender-hero::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    content: "";
    pointer-events: none;
    opacity: .55;
    background-image: linear-gradient(rgba(135, 219, 217, .075) 1px, transparent 1px),
        linear-gradient(90deg, rgba(135, 219, 217, .075) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: linear-gradient(90deg, transparent, #000 20%, #000 75%, transparent);
}

.pp-tender-hero::after {
    position: absolute;
    z-index: -1;
    width: 430px;
    height: 430px;
    left: -140px;
    bottom: -350px;
    content: "";
    pointer-events: none;
    border: 1px solid rgba(118, 215, 214, .16);
    border-radius: 50%;
    box-shadow: 0 0 0 68px rgba(88, 187, 195, .04), 0 0 0 145px rgba(88, 187, 195, .025);
}

.pp-tender-eyebrow {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin-bottom: .65rem;
    color: #a3d7d7;
    font-size: .73rem;
    font-weight: 700;
}

.pp-tender-eyebrow-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--tender-cyan);
    box-shadow: 0 0 0 5px rgba(101, 213, 202, .12);
}

.pp-tender-eyebrow-line { width: 20px; height: 1px; background: rgba(163, 215, 215, .48); }
.pp-tender-hero .page-header { align-items: flex-end; margin: 0; }
.pp-tender-hero .page-title { color: #f7fcfa; font-size: clamp(1.65rem, 2.4vw, 2.25rem); letter-spacing: -.02em; }
.pp-tender-hero .page-header .mud-typography-body2 { color: #b9d3d5 !important; line-height: 1.9; }
.pp-tender-hero .page-actions { position: relative; z-index: 1; }
.pp-tender-hero .mud-button-filled-primary,
.pp-tender-screen .pp-tender-filters .mud-button-filled-primary {
    color: #092e3b !important;
    background: var(--tender-cyan) !important;
    box-shadow: 0 10px 24px rgba(62, 193, 183, .18);
}
.pp-tender-hero .mud-button-filled-primary:hover,
.pp-tender-screen .pp-tender-filters .mud-button-filled-primary:hover { background: #87e7dd !important; }
.pp-tender-hero .mud-button-outlined-success { color: #bce9da !important; border-color: rgba(188, 233, 218, .45) !important; }
.pp-tender-hero .mud-button-outlined-error { color: #ffd1cf !important; border-color: rgba(255, 209, 207, .45) !important; }
.pp-tender-hero .mud-button { border-radius: 8px; font-weight: 700; }

.pp-tender-highlights {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    margin-top: 1.35rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(188, 228, 229, .17);
}
.pp-tender-highlights > div { display: grid; align-content: start; gap: .25rem; min-width: 0; padding-inline: 1rem; border-inline-start: 1px solid rgba(188, 228, 229, .15); }
.pp-tender-highlights > div:first-child { padding-right: 0; }
.pp-tender-highlights > div:last-child { border-inline-start: 0; }
.pp-tender-highlights span { color: #98bcc2; font-size: .7rem; }
.pp-tender-highlights strong { overflow: hidden; color: #effaf9; font-size: .98rem; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }

.pp-tender-section-heading { display: flex; flex-wrap: wrap; align-items: baseline; gap: .45rem 1rem; margin: 0 0 .7rem; }
.pp-tender-section-heading > span { color: var(--tender-ink); font-size: 1.07rem; font-weight: 800; }
.pp-tender-section-heading > span::before { display: inline-block; width: 5px; height: 16px; margin-left: .55rem; border-radius: 3px; background: #35b9af; vertical-align: -.2rem; content: ""; }
.pp-tender-section-heading small { color: var(--tender-muted); font-size: .74rem; }
.pp-tender-filters { margin-bottom: 1.4rem; }
.pp-tender-filters .filter-panel { border-color: var(--tender-line); border-radius: 12px; background: var(--tender-surface) !important; box-shadow: 0 9px 27px rgba(21, 70, 81, .045); }
.pp-tender-filters .mud-input-control { margin-bottom: 0; }

.pp-tender-results .mud-table,
.pp-tender-workspace .mud-tabs {
    overflow: hidden;
    border: 1px solid var(--tender-line);
    border-radius: 12px;
    background: var(--tender-surface);
    box-shadow: 0 12px 28px rgba(21, 70, 81, .055);
}
.pp-tender-results .mud-table-head { background: #eff7f7; }
.pp-tender-results .mud-table-head .mud-table-cell { color: #385b64; font-size: .73rem; font-weight: 800; }
.pp-tender-results .mud-table-row:hover { background: #f4fafa !important; }
.pp-tender-results .mud-table-body .mud-table-row:first-child .mud-table-cell:first-child { color: #0b7977; font-weight: 800; }
.pp-tender-results .mud-table-cell { border-bottom-color: #e8f0f0; }
.pp-tender-results .mud-table-pagination { border-top: 1px solid var(--tender-line); }
.pp-tender-results .mud-button-text-primary { color: #087c78 !important; }

.pp-tender-workspace .mud-tabs-toolbar { border-bottom: 1px solid var(--tender-line); background: #f3f9f8; }
.pp-tender-workspace .mud-tab { color: #52717a; font-weight: 700; }
.pp-tender-workspace .mud-tab.mud-tab-active { color: #0d7774; }
.pp-tender-workspace .mud-tabs-slider { background: #43bdb3 !important; }
.pp-tender-workspace .mud-tabs-panels { background: var(--tender-surface); }
.pp-tender-workspace .mud-tabs-panels .mud-paper-outlined { border-color: var(--tender-line); border-radius: 9px; background: #f8fbfb; }
.pp-tender-workspace .mud-tabs-panels .mud-typography-caption { color: var(--tender-muted); }
.pp-tender-workspace .mud-table-head { background: #eff7f7; }
.pp-tender-workspace .mud-table-head .mud-table-cell { color: #385b64; font-size: .74rem; font-weight: 800; }
.pp-tender-workspace .mud-alert-info { border-color: #cce9e6; background: #eefaf7; color: #205c63; }
.pp-tender-workspace .mud-button-outlined-primary { color: #087c78; border-color: #89cfc9; }
.pp-tender-screen :is(a, button, .mud-button-root, .mud-tab):focus-visible { outline: 2px solid #29b9b0; outline-offset: 3px; }

body.pp-dark .pp-tender-screen { --tender-ink: #e9f4f4; --tender-muted: #a6c1c6; --tender-line: #31515c; --tender-surface: #153440; }
body.pp-dark .pp-tender-filters .filter-panel,
body.pp-dark .pp-tender-results .mud-table,
body.pp-dark .pp-tender-workspace .mud-tabs { color: #e7f3f2; }
body.pp-dark .pp-tender-results .mud-table-head,
body.pp-dark .pp-tender-workspace .mud-table-head,
body.pp-dark .pp-tender-workspace .mud-tabs-toolbar { background: #1c424b; }
body.pp-dark .pp-tender-results .mud-table-head .mud-table-cell,
body.pp-dark .pp-tender-workspace .mud-table-head .mud-table-cell { color: #c9e3e3; }
body.pp-dark .pp-tender-results .mud-table-row:hover { background: #1b414a !important; }
body.pp-dark .pp-tender-workspace .mud-tabs-panels .mud-paper-outlined { background: #1b3c47; }
body.pp-dark .pp-tender-workspace .mud-alert-info { background: #194650; color: #d8f2ee; }

@media (max-width: 960px) {
    .pp-tender-highlights { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem 0; }
    .pp-tender-highlights > div:nth-child(2) { border-inline-start: 0; }
}
@media (max-width: 600px) {
    .pp-tender-hero { padding: 1.2rem; border-radius: 12px; }
    .pp-tender-hero .page-header { align-items: stretch; }
    .pp-tender-hero .page-title { font-size: 1.5rem; }
    .pp-tender-highlights > div { padding-inline: .65rem; }
    .pp-tender-highlights > div:nth-child(odd) { padding-right: 0; }
    .pp-tender-highlights strong { font-size: .84rem; }
    .pp-tender-workspace .mud-tabs .mud-tabs-panels { padding: .15rem; }
}
