:root {
    --navy:#06283f;
    --navy-2:#0b3550;
    --ink:#0b2a40;
    --muted:#627486;
    --line:#dce6ec;
    --bg:#f4f7f8;
    --card:#ffffff;
    --cyan:#12a9c3;
    --cyan-dark:#07859b;
    --blue:#0878c9;
    --lime:#c8e02e;
    --orange:#ef6c35;
    --soft-cyan:#eaf8fb;
    --soft-blue:#eaf3fb;
    --soft-lime:#f5f8df;
    --soft-orange:#fff1ea;
    --danger:#a83b3b;
    --shadow:0 18px 50px rgba(4,39,62,.08);
    --radius:22px;
    --radius-sm:13px;
}

* {
    box-sizing:border-box;
}

html {
    scroll-behavior:smooth;
}

body {
    margin:0;
    font:15px/1.55 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    color:var(--ink);
    background:var(--bg);
}

a {
    color:var(--blue);
    text-decoration:none;
}

a:hover {
    text-decoration:none;
}

button,input,select,textarea {
    font:inherit;
}

.top {
    position:sticky;
    top:0;
    z-index:50;
    min-height:78px;
    background:var(--navy);
    color:#fff;
    padding:0 34px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    box-shadow:0 1px 0 rgba(255,255,255,.08);
}

.brand {
    display:flex;
    align-items:center;
    gap:18px;
    color:#fff;
    font-weight:800;
    letter-spacing:-.02em;
}

.brand img {
    height:34px;
    width:auto;
    display:block;
}

.brand-mark {
    font-size:19px;
    white-space:nowrap;
}

.brand-sub {
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.18em;
    color:#91c6d5;
    font-weight:700;
    margin-top:2px;
}

.top nav {
    display:flex;
    align-items:center;
    gap:6px;
}

.top nav a {
    color:#fff;
    padding:10px 13px;
    border-radius:10px;
    font-weight:650;
    opacity:.9;
}

.top nav a:hover,.top nav a.active {
    background:rgba(255,255,255,.10);
    opacity:1;
}

.user-chip {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border-radius:50%;
    background:var(--cyan);
    color:#fff;
    font-weight:800;
    margin-left:6px;
}

.wrap {
    max-width:1320px;
    margin:0 auto;
    padding:42px 30px 70px;
}

.hero {
    position:relative;
    overflow:hidden;
    background:var(--navy);
    color:#fff;
    border-radius:28px;
    padding:46px 50px;
    margin-bottom:30px;
    box-shadow:var(--shadow);
}

.hero:after {
    content:"";
    position:absolute;
    width:380px;
    height:380px;
    border-radius:50%;
    right:-115px;
    top:-185px;
    background:radial-gradient(circle,rgba(18,169,195,.45),rgba(18,169,195,0) 68%);
}

.hero:before {
    content:"";
    position:absolute;
    width:230px;
    height:230px;
    border-radius:50%;
    right:180px;
    bottom:-150px;
    background:radial-gradient(circle,rgba(200,224,46,.23),rgba(200,224,46,0) 70%);
}

.eyebrow {
    position:relative;
    z-index:1;
    text-transform:uppercase;
    letter-spacing:.19em;
    font-size:12px;
    font-weight:850;
    color:#80d5e3;
    margin-bottom:12px;
}

.hero h1,.page-title h1 {
    position:relative;
    z-index:1;
    margin:0;
    letter-spacing:-.045em;
    line-height:1.02;
    font-size:clamp(38px,5vw,68px);
    font-weight:850;
}

.hero p {
    position:relative;
    z-index:1;
    margin:17px 0 0;
    color:#c9d9e2;
    font-size:18px;
    max-width:720px;
}

.hero-actions {
    position:relative;
    z-index:1;
    margin-top:26px;
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.page-title {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:26px;
}

.page-title h1 {
    font-size:44px;
    color:var(--navy);
}

.page-title p {
    margin:9px 0 0;
    color:var(--muted);
    font-size:16px;
}

.card {
    background:var(--card);
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:28px;
    box-shadow:0 10px 35px rgba(4,39,62,.045);
    margin-bottom:22px;
}

.card.flush {
    padding:0;
    overflow:hidden;
}

.card-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:20px;
}

.card h2,.card h3 {
    margin:0;
    color:var(--navy);
    letter-spacing:-.025em;
}

.card h2 {
    font-size:25px;
}

.card h3 {
    font-size:18px;
}

.muted {
    color:var(--muted);
}

.grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}

.grid3 {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.grid4 {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}

.full {
    grid-column:1/-1;
}

.stat {
    background:#fff;
    border:1px solid var(--line);
    border-radius:18px;
    padding:22px;
    box-shadow:0 8px 25px rgba(4,39,62,.035);
}

.stat-label {
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-weight:800;
    color:var(--muted);
}

.stat-value {
    font-size:34px;
    font-weight:850;
    color:var(--navy);
    letter-spacing:-.04em;
    margin-top:5px;
}

.stat-accent {
    width:34px;
    height:4px;
    border-radius:4px;
    background:var(--cyan);
    margin-top:15px;
}

label {
    font-weight:750;
    display:block;
    margin-bottom:7px;
    color:var(--navy);
}

.field-help {
    font-size:12px;
    color:var(--muted);
    margin-top:6px;
}

input,select,textarea {
    width:100%;
    padding:12px 13px;
    border:1px solid #bfd0da;
    border-radius:11px;
    background:#fff;
    color:var(--ink);
    outline:0;
    transition:.15s border,.15s box-shadow;
}

input:focus,select:focus,textarea:focus {
    border-color:var(--cyan);
    box-shadow:0 0 0 4px rgba(18,169,195,.12);
}

input[type=checkbox] {
    width:auto;
    transform:scale(1.15);
    margin-right:9px;
    accent-color:var(--cyan);
}

.btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:0;
    border-radius:12px;
    background:var(--cyan);
    color:white;
    padding:12px 18px;
    font-weight:800;
    cursor:pointer;
    transition:.16s transform,.16s background,.16s box-shadow;
    box-shadow:0 7px 18px rgba(18,169,195,.18);
}

.btn:hover {
    background:var(--cyan-dark);
    transform:translateY(-1px);
    color:#fff;
}

.btn.secondary {
    background:var(--navy);
    box-shadow:none;
}

.btn.secondary:hover {
    background:var(--navy-2);
}

.btn.light {
    background:#edf4f7;
    color:var(--navy);
    box-shadow:none;
}

.btn.light:hover {
    background:#dfecef;
    color:var(--navy);
}

.btn.outline {
    background:transparent;
    color:var(--navy);
    border:1px solid #bcd0da;
    box-shadow:none;
}

.btn.outline:hover {
    background:#edf5f7;
    color:var(--navy);
}

.btn.small {
    padding:9px 12px;
    font-size:13px;
    border-radius:10px;
}

.actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.summary-table {
    width:100%;
    border-collapse:collapse;
}

.summary-table th {
    padding:14px 18px;
    text-align:left;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.11em;
    color:#6b7f8d;
    background:#f8fafb;
    border-bottom:1px solid var(--line);
}

.summary-table td {
    padding:16px 18px;
    border-bottom:1px solid var(--line);
    vertical-align:middle;
}

.summary-table tbody tr:last-child td {
    border-bottom:0;
}

.summary-table tbody tr:hover {
    background:#fbfdfe;
}

.summary-table td.num,.summary-table th.num {
    text-align:right;
}

.quote-link {
    font-weight:850;
    color:var(--blue);
}

.row-actions {
    display:flex;
    justify-content:flex-end;
    gap:8px;
}

.pill {
    display:inline-flex;
    align-items:center;
    padding:5px 9px;
    border-radius:999px;
    background:var(--soft-blue);
    color:#19587b;
    font-size:12px;
    font-weight:800;
    text-transform:capitalize;
}

.pill.final {
    background:var(--soft-lime);
    color:#556414;
}

.pill.review {
    background:var(--soft-orange);
    color:#9e4a20;
}

.money {
    font-size:38px;
    font-weight:850;
    letter-spacing:-.045em;
    color:var(--navy);
}

.kpi {
    background:#fff;
    border:1px solid var(--line);
    border-radius:18px;
    padding:22px;
    position:relative;
    overflow:hidden;
}

.kpi:after {
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:4px;
    background:var(--cyan);
}

.kpi:nth-child(2):after {
    background:var(--lime);
}

.kpi:nth-child(3):after {
    background:var(--orange);
}

.component {
    border:1px solid var(--line);
    border-radius:15px;
    padding:17px 18px;
    margin:11px 0;
    background:#fff;
    transition:.16s border,.16s background;
}

.component:hover {
    border-color:#b6d9e2;
    background:#fbfeff;
}

.component-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:22px;
}

.component-name {
    font-weight:800;
    font-size:16px;
    color:var(--navy);
}

.desc {
    font-size:13px;
    color:var(--muted);
    max-width:760px;
    margin-top:4px;
}

.component-control {
    min-width:200px;
}

.wizard-shell {
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    gap:24px;
    align-items:start;
}

.wizard-nav {
    position:sticky;
    top:105px;
    background:var(--navy);
    border-radius:20px;
    padding:18px;
    color:#fff;
    box-shadow:var(--shadow);
}

.wizard-nav-title {
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:#8ec6d5;
    font-weight:800;
    padding:4px 9px 11px;
}

.wizard-step-link {
    display:flex;
    gap:11px;
    align-items:center;
    color:#b8cad5;
    padding:10px 9px;
    border-radius:10px;
    font-weight:700;
    font-size:13px;
    cursor:pointer;
}

.wizard-step-link:hover {
    background:rgba(255,255,255,.07);
    color:#fff;
}

.wizard-step-link.active {
    background:#fff;
    color:var(--navy);
}

.step-num {
    width:25px;
    height:25px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.11);
    font-size:12px;
    flex:none;
}

.wizard-step-link.active .step-num {
    background:var(--cyan);
    color:#fff;
}

.wizard-panel {
    display:none;
}

.wizard-panel.active {
    display:block;
}

.step-kicker {
    text-transform:uppercase;
    letter-spacing:.13em;
    color:var(--cyan-dark);
    font-size:12px;
    font-weight:850;
    margin-bottom:8px;
}

.step-heading {
    font-size:35px;
    line-height:1.08;
    letter-spacing:-.04em;
    margin:0 0 8px;
    color:var(--navy);
}

.step-intro {
    color:var(--muted);
    font-size:16px;
    margin-bottom:24px;
    max-width:780px;
}

.wizard-actions {
    position:sticky;
    bottom:0;
    background:rgba(244,247,248,.94);
    backdrop-filter:blur(10px);
    padding:16px 0 2px;
    display:flex;
    justify-content:space-between;
    gap:12px;
    margin-top:8px;
}

.login-page {
    min-height:100vh;
    background:var(--navy);
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr);
}

.login-art {
    position:relative;
    overflow:hidden;
    padding:65px;
    color:#fff;
    background:linear-gradient(145deg,#06283f 0%,#0a425d 100%);
}

.login-art:before {
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 70% 20%,rgba(18,169,195,.48),transparent 30%),radial-gradient(circle at 20% 80%,rgba(200,224,46,.16),transparent 28%);
}

.login-art-inner {
    position:relative;
    z-index:1;
    max-width:620px;
}

.login-art h1 {
    font-size:64px;
    line-height:.98;
    letter-spacing:-.055em;
    margin:100px 0 20px;
}

.login-art p {
    font-size:19px;
    color:#c8d8e1;
    max-width:520px;
}

.login-side {
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f6f8f9;
    padding:40px;
}

.login {
    width:100%;
    max-width:470px;
    background:#fff;
    border-radius:24px;
    border:1px solid var(--line);
    padding:38px;
    box-shadow:var(--shadow);
}

.login h2 {
    font-size:34px;
    letter-spacing:-.04em;
    margin:0;
    color:var(--navy);
}

.login .login-sub {
    color:var(--muted);
    margin:8px 0 26px;
}

.error {
    background:#fdeeee;
    color:#8a2929;
    padding:11px 13px;
    border-radius:10px;
    margin:14px 0;
}

.notice {
    padding:13px 15px;
    border-radius:12px;
    background:var(--soft-cyan);
    color:#24566b;
}

.warn {
    background:#fff5df;
    color:#795d17;
}

.good {
    background:#edf7e8;
    color:#446229;
}

.quote-meta {
    display:flex;
    gap:10px;
    align-items:center;
    flex-wrap:wrap;
    margin-top:15px;
}

.scope-heading {
    display:flex;
    align-items:center;
    gap:12px;
}

.scope-number {
    width:34px;
    height:34px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--navy);
    color:#fff;
    font-size:12px;
    font-weight:850;
}

.empty {
    padding:50px 25px;
    text-align:center;
    color:var(--muted);
}

.admin-note {
    border-left:4px solid var(--cyan);
    padding-left:15px;
}

@media(max-width:1050px) {
    .wizard-shell {
        grid-template-columns:1fr;
    }

    .wizard-nav {
        position:relative;
        top:auto;
        display:flex;
        overflow:auto;
        gap:6px;
    }

    .wizard-nav-title {
        display:none;
    }

    .wizard-step-link {
        min-width:max-content;
    }

    .grid4 {
        grid-template-columns:repeat(2,1fr);
    }

    .login-page {
        grid-template-columns:1fr;
    }

    .login-art {
        display:none;
    }

}

@media(max-width:760px) {
    .wrap {
        padding:25px 16px 55px;
    }

    .top {
        padding:13px 16px;
        min-height:auto;
        align-items:flex-start;
        gap:12px;
    }

    .top nav {
        flex-wrap:wrap;
        justify-content:flex-end;
    }

    .brand-sub {
        display:none;
    }

    .brand-mark {
        font-size:15px;
    }

    .hero {
        padding:34px 26px;
        border-radius:20px;
    }

    .hero h1 {
        font-size:42px;
    }

    .page-title {
        align-items:flex-start;
        flex-direction:column;
    }

    .page-title h1 {
        font-size:38px;
    }

    .grid,.grid3,.grid4 {
        grid-template-columns:1fr;
    }

    .component-head {
        display:block;
    }

    .component-control {
        min-width:0;
        margin-top:13px;
    }

    .summary-table {
        min-width:800px;
    }

    .card.flush {
        overflow:auto;
    }

    .row-actions {
        justify-content:flex-start;
    }

    .wizard-actions {
        position:relative;
        flex-wrap:wrap;
    }

    .login-side {
        padding:20px;
    }

    .login {
        padding:28px 24px;
    }

    .top .brand img {
        height:27px;
    }

}

/* 2026-08 branded workflow update */
.brand {
    gap:14px;
}

.brand img {
    height:32px;
    max-width:210px;
}

.brand-sub {
    display:block;
    margin:0;
    padding-left:14px;
    border-left:1px solid rgba(255,255,255,.22);
    white-space:nowrap;
}

.login-logo {
    width:min(420px,80%);
    height:auto;
    display:block;
    margin-bottom:46px;
}

.check-label {
    margin:0;
    display:flex;
    align-items:center;
    white-space:nowrap;
}

.info-scope {
    margin-top:14px;
    padding:20px;
    border:1px solid #cfe5eb;
    background:var(--soft-cyan);
    border-radius:16px;
}

.custom-scope-box {
    margin-top:24px;
    padding-top:22px;
    border-top:1px solid var(--line);
}

.custom-scope-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}

.custom-items {
    display:grid;
    gap:14px;
    margin-top:14px;
}

.custom-item-row {
    padding:18px;
    border:1px dashed #a9c9d4;
    background:#f9fcfd;
    border-radius:14px;
}

.custom-item-top {
    display:grid;
    grid-template-columns:minmax(0,1.8fr) minmax(120px,.45fr) auto;
    gap:14px;
    align-items:end;
    margin-bottom:13px;
}

.remove-custom {
    border:0;
    background:transparent;
    color:#9b4a3b;
    font-weight:800;
    cursor:pointer;
    padding:12px 4px;
}

.remove-custom:hover {
    text-decoration:underline;
}

.info-card {
    border-left:5px solid var(--cyan);
}

.scope-card {
    background:#fff;
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:0 10px 35px rgba(4,39,62,.045);
    margin-bottom:18px;
    overflow:hidden;
}

.scope-card summary {
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:22px 28px;
    background:#fff;
}

.scope-card summary::-webkit-details-marker {
    display:none;
}

.scope-card[open] summary {
    border-bottom:1px solid var(--line);
}

.scope-card summary:hover {
    background:#fbfdfe;
}

.scope-card h2 {
    margin:0;
    font-size:24px;
    color:var(--navy);
    letter-spacing:-.025em;
}

.scope-totals {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:16px;
    white-space:nowrap;
    color:var(--navy);
}

.scope-totals span {
    color:var(--muted);
    font-weight:700;
}

.scope-totals .chevron {
    font-size:20px;
    color:var(--cyan);
    transition:transform .15s ease;
}

.scope-card[open] .chevron {
    transform:rotate(180deg);
}

.scope-body {
    background:#fff;
}

.summary-table tfoot td {
    padding:15px 18px;
    border-top:2px solid var(--line);
    background:#f8fafb;
}

.custom-summary-row {
    background:#fbfeff;
}

.custom-pill {
    background:var(--soft-cyan);
    color:#0a7181;
}

textarea {
    resize:vertical;
    min-height:92px;
}

@media(max-width:900px) {
    .brand-sub {
        display:none;
    }

    .custom-item-top {
        grid-template-columns:1fr 160px;
    }

    .remove-custom {
        grid-column:1/-1;
        justify-self:start;
        padding:0;
    }

    .scope-card summary {
        align-items:flex-start;
        flex-direction:column;
    }

    .scope-totals {
        width:100%;
        justify-content:flex-start;
    }

}

@media(max-width:620px) {
    .brand img {
        height:27px;
        max-width:180px;
    }

    .custom-scope-head {
        align-items:flex-start;
        flex-direction:column;
    }

    .custom-item-top {
        grid-template-columns:1fr;
    }

    .scope-totals {
        gap:10px;
        flex-wrap:wrap;
    }

}

/* Draft editing + custom scope visibility */
.custom-scope-box {
    margin-top:30px;
    padding:22px;
    border:2px dashed #8bc5d2;
    border-radius:16px;
    background:linear-gradient(135deg,#f7fcfd 0%,#eef9fb 100%);
}

.custom-scope-head {
    align-items:center;
}

.custom-kicker {
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--cyan);
    margin-bottom:5px;
}

.custom-scope-box .component-name {
    font-size:18px;
}

.custom-scope-box .desc {
    max-width:760px;
    margin-top:5px;
}

/* Draft editing controls */
.wizard-save-panel {
    margin-top:18px;
    padding:16px 9px 5px;
    border-top:1px solid rgba(255,255,255,.14);
    display:grid;
    gap:9px;
}

.save-state {
    display:flex;
    align-items:center;
    gap:8px;
    font-size:12px;
    font-weight:800;
    padding:0 3px 5px;
    color:#c7d9df;
}

.save-state-dot {
    width:8px;
    height:8px;
    border-radius:50%;
    background:#74c69d;
    box-shadow:0 0 0 3px rgba(116,198,157,.12);
}

.save-state.dirty {
    color:#fff3c4;
}

.save-state.dirty .save-state-dot {
    background:#ffc857;
    box-shadow:0 0 0 3px rgba(255,200,87,.14);
}

.wizard-save-panel .sidebar-save {
    width:100%;
    justify-content:center;
}

.wizard-save-panel .btn.light {
    background:#fff;
    color:var(--navy);
    border-color:#fff;
}

.sidebar-cancel {
    display:block;
    text-align:center;
    color:#a9c1ca;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
    padding:7px 4px 2px;
}

.sidebar-cancel:hover {
    color:#fff;
}

@media(max-width:1050px) {
    .wizard-save-panel {
        min-width:210px;
        margin-top:0;
        border-top:0;
        border-left:1px solid rgba(255,255,255,.14);
        padding:4px 0 4px 14px;
        grid-template-columns:1fr;
    }

    .save-state {
        display:none;
    }

}

.quote-list-section {
    margin-bottom:28px;
}

.section-count {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:30px;
    height:30px;
    padding:0 9px;
    margin-left:8px;
    border-radius:999px;
    background:var(--surface-2,#eef3f5);
    font-size:14px;
    vertical-align:middle;
}

.quote-list-section .row-actions form {
    margin:0;
}

.quote-list-section .row-actions {
    flex-wrap:wrap;
    justify-content:flex-end;
}

.inline-action {
    display:inline-flex;
    margin:0;
}

.finalize-btn {
    background:var(--lime,#b7d532);
    color:var(--navy,#102b3a);
}

.success-banner {
    margin:0 0 22px;
    padding:16px 18px;
    border-radius:12px;
    background:#eef8df;
    border:1px solid #c9df99;
    color:#29421f;
}

.finalize-btn {
    background:#12a9c3 !important;
    color:#fff !important;
    border-color:#12a9c3 !important;
}

.finalize-btn:hover {
    background:#182852 !important;
    color:#fff !important;
    border-color:#182852 !important;
}

.email-banner {
    margin-bottom:16px;
}

.email-recipient-panel {
    display:none;
    margin:-4px 0 24px;
    padding:22px 24px;
    background:#fff;
    border:1px solid #dfe8eb;
    border-radius:14px;
    box-shadow:0 14px 36px rgba(24,40,82,.08);
}

.email-recipient-panel.open {
    display:block;
}

.email-recipient-panel h3 {
    margin:4px 0 4px;
    font-size:22px;
}

.email-recipient-panel textarea {
    width:100%;
    margin-top:7px;
}

.email-panel-head {
    margin-bottom:18px;
}

.recipient-check {
    display:flex;
    gap:10px;
    align-items:flex-start;
    padding:14px 16px;
    background:#f4f8f9;
    border-radius:10px;
    margin-bottom:16px;
}

.recipient-check input {
    margin-top:3px;
}

.recipient-help {
    margin-top:6px;
    font-size:12px;
}

.email-panel-actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:18px;
}

.saved-recipients {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin:12px 0 18px;
}

.saved-recipients span {
    display:inline-flex;
    padding:7px 10px;
    border-radius:999px;
    background:#eef6f7;
    color:#182852;
    font-size:13px;
    font-weight:700;
}

.admin-email-card {
    margin-top:28px;
}

.admin-email-card select {
    width:100%;
}

.secret-field {
    margin:8px 0 18px;
}

.test-email-box {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-top:28px;
    padding-top:22px;
    border-top:1px solid #dfe8eb;
}

.test-email-box h3 {
    margin:0 0 4px;
}

.test-email-form {
    display:flex;
    align-items:center;
    gap:10px;
    min-width:420px;
}

.test-email-form input {
    margin:0;
    flex:1;
}

@media(max-width:800px) {
    .test-email-box {
        display:block;
    }

    .test-email-form {
        min-width:0;
        margin-top:14px;
        display:block;
    }

    .test-email-form button {
        margin-top:10px;
        width:100%;
    }

}

.estimate-notes-field {
    margin-top:22px;
}

.estimate-notes-field textarea {
    width:100%;
}

.estimate-notes-card {
    margin-bottom:22px;
    border-left:4px solid #f0a43c;
    background:#fffaf0;
}

.estimate-notes-copy {
    margin-top:8px;
    line-height:1.55;
    font-size:15px;
}

.email-history-card {
    margin-bottom:22px;
}

.email-history-list {
    border-top:1px solid #dfe8eb;
}

.email-history-row {
    display:flex;
    justify-content:space-between;
    gap:24px;
    padding:14px 0;
    border-bottom:1px solid #dfe8eb;
}

.email-history-meta {
    text-align:right;
    white-space:nowrap;
    font-size:13px;
}

@media(max-width:700px) {
    .email-history-row {
        display:block;
    }

    .email-history-meta {
        text-align:left;
        white-space:normal;
        margin-top:6px;
    }

}

.required-component {
    background:#f7fbfc;
    border-color:#cfe7eb;
}

.required-lock {
    display:inline-flex;
    align-items:center;
    padding:7px 10px;
    border-radius:999px;
    background:#e4f4f6;
    color:#182852;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.required-lock:before {
    content:"✓";
    margin-right:6px;
    color:#12a9c3;
    font-weight:900;
}

.choice-component {
    padding:20px;
}

.choice-heading {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:14px;
}

.choice-required {
    display:inline-flex;
    padding:6px 9px;
    border-radius:999px;
    background:#eef6f7;
    color:#182852;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
    white-space:nowrap;
}

.choice-options {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.choice-card {
    display:flex;
    align-items:flex-start;
    gap:11px;
    padding:14px 15px;
    border:1px solid #d7e4e8;
    border-radius:12px;
    background:#fff;
    cursor:pointer;
    transition:.15s ease;
}

.choice-card:hover {
    border-color:#12a9c3;
    background:#f8fcfd;
}

.choice-card:has(input:checked) {
    border-color:#12a9c3;
    box-shadow:0 0 0 2px rgba(18,169,195,.12);
    background:#f4fbfc;
}

.choice-card input {
    margin-top:3px;
    flex:0 0 auto;
}

.choice-card span {
    display:block;
}

.choice-card strong {
    display:block;
    color:#182852;
}

.choice-card small {
    display:block;
    margin-top:4px;
    color:#65757d;
    line-height:1.4;
}

@media(max-width:720px) {
    .choice-options {
        grid-template-columns:1fr;
    }

    .choice-heading {
        display:block;
    }

    .choice-required {
        margin-top:8px;
    }

}

/* Search / Reporting choice-card layout fix */
.choice-card {
    display:flex !important;
    align-items:flex-start !important;
    gap:12px !important;
    margin-bottom:0 !important;
    text-transform:none !important;
    letter-spacing:normal !important;
    font-size:14px !important;
}

.choice-card input[type=radio] {
    width:auto !important;
    min-width:16px;
    height:16px;
    margin:2px 0 0 !important;
    padding:0 !important;
    flex:0 0 auto !important;
    accent-color:var(--cyan);
}

.choice-card > span {
    display:block !important;
    flex:1 1 auto !important;
    min-width:0 !important;
}

.choice-card strong {
    display:block;
    font-size:15px;
    line-height:1.3;
    text-transform:none;
    letter-spacing:normal;
}

.choice-card small {
    display:block;
    margin-top:5px;
    font-size:13px;
    line-height:1.45;
    font-weight:400;
    text-transform:none;
    letter-spacing:normal;
    overflow-wrap:anywhere;
}

/* Security, roles, expiration and admin controls */
.estimate-validity {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding:13px 16px;
    margin-bottom:18px;
    border:1px solid #cfe5eb;
    border-radius:12px;
    background:#f4fbfc;
    color:var(--navy);
}

.estimate-validity.expired {
    border-color:#efc7c7;
    background:#fff5f5;
}

.admin-password-reset,.admin-role-form {
    display:flex;
    gap:8px;
    align-items:center;
    justify-content:flex-end;
    margin-top:8px;
}

.admin-password-reset input,.admin-role-form select {
    width:190px;
    min-width:150px;
}

.password-change-form {
    max-width:760px;
}

@media(max-width:720px) {
    .admin-password-reset,.admin-role-form {
        display:block;
    }

    .admin-password-reset input,.admin-role-form select {
        width:100%;
        margin-bottom:8px;
    }

}

/* Admin Users - structured user cards */
.admin-users-card {
    overflow:hidden;
}

.admin-user-count {
    border-left:4px solid var(--cyan);
    padding:5px 0 5px 16px;
    font-weight:700;
    white-space:nowrap;
}

.admin-user-list {
    border-top:1px solid #dfe8eb;
}

.admin-user-item {
    padding:0;
    border-bottom:1px solid #dfe8eb;
}

.admin-user-item:last-child {
    border-bottom:0;
}

.admin-user-summary {
    display:grid;
    grid-template-columns:1.15fr 2fr 1fr .8fr;
    gap:24px;
    align-items:center;
    padding:20px 18px;
}

.admin-user-field {
    min-width:0;
}

.admin-user-label,.admin-control-label {
    display:block;
    margin-bottom:6px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#6d8293;
}

.admin-user-name strong {
    display:inline-block;
    margin-right:6px;
}

.admin-user-protected {
    padding:0 18px 20px;
}

.admin-user-manage {
    margin:0 18px 22px;
    padding:18px;
    border:1px solid #d8e4e8;
    border-radius:14px;
    background:#f7fafb;
}

.admin-user-manage-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:16px;
}

.admin-user-controls {
    display:grid;
    grid-template-columns:.85fr 1.15fr 1.5fr;
    gap:14px;
}

.admin-control-block {
    padding:15px;
    border:1px solid #dfe8eb;
    border-radius:11px;
    background:#fff;
}

.admin-control-help {
    min-height:38px;
    margin-bottom:12px;
    font-size:12px;
    line-height:1.45;
    color:#647786;
}

.admin-control-block form {
    margin:0;
}

.admin-control-block select,.admin-control-block input[type=password] {
    width:100%;
    margin:0 0 9px;
}

.admin-control-block .btn {
    width:100%;
    justify-content:center;
}

@media(max-width:900px) {
    .admin-user-summary {
        grid-template-columns:1fr 1fr;
    }

    .admin-user-controls {
        grid-template-columns:1fr;
    }

    .admin-control-help {
        min-height:0;
    }

}

@media(max-width:600px) {
    .admin-user-summary {
        grid-template-columns:1fr;
        gap:14px;
    }

    .admin-user-manage {
        margin-left:0;
        margin-right:0;
        border-left:0;
        border-right:0;
        border-radius:0;
    }

}

/* Admin Users accordion */
.admin-user-table-head,
.admin-user-row {
    display:grid;
    grid-template-columns:1.2fr 2fr 1fr .85fr .7fr 34px;
    gap:20px;
    align-items:center;
}

.admin-user-table-head {
    padding:0 18px 10px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#6d8293;
}

.admin-user-accordion {
    border-top:1px solid #dfe8eb;
}

.admin-user-accordion-item {
    border-bottom:1px solid #dfe8eb;
}

.admin-user-accordion-item:last-child {
    border-bottom:0;
}

.admin-user-row {
    width:100%;
    padding:18px;
    border:0;
    background:#fff;
    color:var(--navy);
    text-align:left;
    cursor:pointer;
}

.admin-user-row:hover {
    background:#f8fbfc;
}

.admin-user-row[aria-expanded=true] {
    background:#f4f8f9;
}

.admin-user-cell {
    min-width:0;
    overflow-wrap:anywhere;
}

.user-name-cell {
    display:flex;
    gap:7px;
    align-items:center;
}

.admin-user-chevron {
    font-size:22px;
    line-height:1;
    text-align:center;
    transition:transform .15s ease;
}

.admin-user-row[aria-expanded=true] .admin-user-chevron {
    transform:rotate(180deg);
}

.admin-user-panel {
    background:#f7fafb;
}

.admin-user-panel-inner {
    padding:20px 18px 22px;
    border-top:1px solid #dfe8eb;
}

.admin-user-activity {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-bottom:18px;
    padding:15px 16px;
    border:1px solid #dfe8eb;
    border-radius:12px;
    background:#fff;
}

.admin-estimate-count {
    font-size:28px;
    font-weight:800;
    color:var(--navy);
    line-height:1.1;
}

.admin-user-controls {
    display:grid;
    grid-template-columns:.9fr 1.15fr 1.5fr;
    gap:14px;
}

.admin-control-block {
    padding:15px;
    border:1px solid #dfe8eb;
    border-radius:11px;
    background:#fff;
}

.admin-control-help {
    min-height:38px;
    margin-bottom:12px;
    font-size:12px;
    line-height:1.45;
    color:#647786;
}

.admin-control-block form {
    margin:0;
}

.admin-control-block select,.admin-control-block input[type=password] {
    width:100%;
    margin:0 0 9px;
}

.admin-control-block .btn {
    width:100%;
    justify-content:center;
}

.admin-user-protected {
    padding:15px 16px;
    border:1px solid #dfe8eb;
    border-radius:11px;
    background:#fff;
}

@media(max-width:900px) {
    .admin-user-table-head {
        display:none;
    }

    .admin-user-row {
        grid-template-columns:1fr auto;
        gap:10px;
    }

    .admin-user-row .admin-user-cell:nth-child(n+2):nth-child(-n+5) {
        display:none;
    }

    .admin-user-chevron {
        grid-column:2;
        grid-row:1;
    }

    .admin-user-activity,.admin-user-controls {
        grid-template-columns:1fr;
    }

    .admin-control-help {
        min-height:0;
    }

}

/* Admin Users - compact management table */
.admin-user-table-wrap {
    overflow:auto;
    border-top:1px solid #dfe8eb;
}

.admin-user-table {
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
}

.admin-user-table th {
    padding:12px 16px;
    text-align:left;
    font-size:12px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#6d8293;
    background:#f7fafb;
    border-bottom:1px solid #dfe8eb;
}

.admin-user-table td {
    padding:16px;
    vertical-align:middle;
    border-bottom:1px solid #dfe8eb;
    color:var(--navy);
}

.admin-user-table th:nth-child(1) {
    width:18%;
}

.admin-user-table th:nth-child(2) {
    width:30%;
}

.admin-user-table th:nth-child(3) {
    width:16%;
}

.admin-user-table th:nth-child(4) {
    width:13%;
}

.admin-user-table th:nth-child(5) {
    width:11%;
}

.admin-user-table th:nth-child(6) {
    width:48px;
}

.admin-user-main-row {
    cursor:pointer;
    background:#fff;
    transition:background .15s ease;
}

.admin-user-main-row:hover {
    background:#f8fbfc;
}

.admin-user-main-row:has(+ .admin-user-detail-row:not([hidden])) {
    background:#f4f8f9;
}

.admin-user-table .num {
    text-align:right;
}

.menu-col {
    text-align:center;
}

.user-row-menu {
    width:34px;
    height:34px;
    padding:0;
    border:0;
    border-radius:8px;
    background:transparent;
    color:var(--navy);
    font-weight:900;
    letter-spacing:2px;
    cursor:pointer;
}

.user-row-menu:hover,.user-row-menu[aria-expanded=true] {
    background:#eaf4f7;
}

.admin-user-detail-row td {
    padding:0;
    border-bottom:1px solid #dfe8eb;
    background:#f7fafb;
}

.admin-user-detail {
    padding:20px 22px 22px;
    border-left:4px solid var(--cyan);
}

.admin-user-detail-head {
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:flex-start;
    margin-bottom:18px;
}

.admin-user-detail-head h3 {
    margin:3px 0 4px;
    font-size:20px;
}

.admin-user-detail-meta {
    padding:10px 13px;
    border-radius:10px;
    background:#fff;
    border:1px solid #dfe8eb;
    white-space:nowrap;
}

.admin-user-controls {
    display:grid;
    grid-template-columns:.9fr 1.15fr 1.5fr;
    gap:14px;
}

.admin-control-block {
    padding:15px;
    border:1px solid #dfe8eb;
    border-radius:11px;
    background:#fff;
}

.admin-control-help {
    min-height:38px;
    margin-bottom:12px;
    font-size:12px;
    line-height:1.45;
    color:#647786;
}

.admin-control-block form {
    margin:0;
}

.admin-control-block select,.admin-control-block input[type=password] {
    width:100%;
    margin:0 0 9px;
}

.admin-control-block .btn {
    width:100%;
    justify-content:center;
}

.admin-user-protected {
    padding:15px 16px;
    border:1px solid #dfe8eb;
    border-radius:11px;
    background:#fff;
}

@media(max-width:900px) {
    .admin-user-table {
        min-width:820px;
    }

    .admin-user-controls {
        grid-template-columns:1fr;
    }

    .admin-control-help {
        min-height:0;
    }

}

/* Scope quantity clarity + automatic Administrative target */
.quantity-input-wrap {
    display:flex;
    align-items:stretch;
    justify-content:flex-end;
}

.quantity-input-wrap input[type=number] {
    width:110px;
    min-width:90px;
    border-radius:10px 0 0 10px;
    text-align:right;
}

.quantity-unit {
    display:flex;
    align-items:center;
    padding:0 12px;
    border:1px solid #c9d8de;
    border-left:0;
    border-radius:0 10px 10px 0;
    background:#f4f8f9;
    color:#5f7382;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.quantity-reference {
    margin-top:7px;
    font-size:12px;
    line-height:1.4;
    color:#647786;
    text-align:right;
}

.admin-target-note {
    display:flex;
    justify-content:space-between;
    gap:22px;
    align-items:center;
    margin-bottom:16px;
    padding:16px 18px;
    border:1px solid #bfe2e8;
    border-left:4px solid var(--cyan);
    border-radius:12px;
    background:#f4fbfc;
}

.admin-target-rate {
    flex:0 0 auto;
    padding:8px 11px;
    border-radius:999px;
    background:#dff5f8;
    color:var(--navy);
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

@media(max-width:700px) {
    .admin-target-note {
        align-items:flex-start;
        flex-direction:column;
    }

    .quantity-input-wrap {
        justify-content:flex-start;
    }

    .quantity-reference {
        text-align:left;
    }

}


/* =========================================================
   Display Heading Tracking
   Slightly loosen large bold headings for readability.
   ========================================================= */

.hero h1 {
    letter-spacing: 0.015em;
}

.page-title h1,
.section-title h1,
.card h1 {
    letter-spacing: 0.01em;
}

.card h2,
.scope-heading h2 {
    letter-spacing: 0.005em;
}

/* =========================================================
   Pilot Readiness: Component Editor / Review / Revisions
   ========================================================= */
.admin-tool-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.component-editor-help{margin-bottom:20px;padding:14px 16px;border-left:4px solid var(--cyan);border-radius:10px;background:var(--soft-cyan);color:var(--navy)}
.component-editor-group{margin-bottom:24px}
.component-editor-category{padding:9px 4px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan-dark)}
.component-editor-item{margin-bottom:10px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.component-editor-item>summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 18px;cursor:pointer;list-style:none}
.component-editor-item>summary::-webkit-details-marker{display:none}
.component-code{display:block;margin-top:3px;font:11px/1.3 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--muted)}
.component-editor-badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.component-editor-form{padding:18px;border-top:1px solid var(--line);background:#f9fbfc}
.component-editor-form p{margin:0 0 16px}
.component-editor-form textarea{width:100%}
.component-editor-flags{display:flex;gap:20px;flex-wrap:wrap;padding:14px 0}
.component-editor-actions{display:flex;justify-content:flex-end;margin-top:8px}
.audit-summary{display:flex;align-items:center;justify-content:space-between}
.audit-results{padding:0}
.audit-row{display:flex;align-items:flex-start;gap:14px;padding:17px 20px;border-bottom:1px solid var(--line)}
.audit-row:last-child{border-bottom:0}
.audit-icon{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;font-weight:900;flex:0 0 auto}
.audit-icon.pass{background:var(--soft-lime);color:#617200}
.audit-icon.fail{background:#fff0f0;color:var(--danger)}
.estimate-review-card{border-left:4px solid var(--cyan)}
.estimate-review-card.has-errors{border-left-color:var(--danger)}
.estimate-review-card.has-warnings{border-left-color:#e49b1f}
.review-list{padding:14px 16px;border-radius:10px;margin-top:12px}
.review-list ul{margin:8px 0 0 20px;padding:0}
.review-list li{margin:5px 0}
.review-list.errors{background:#fff3f3}
.review-list.warnings{background:#fff8e8}
.review-clear{padding:14px 16px;border-radius:10px;background:var(--soft-lime)}
.review-confirm{margin-top:15px;padding:13px 14px;border:1px solid #efd69c;border-radius:10px;background:#fff8e8}
.revision-history-card{margin-bottom:22px}
.revision-list{border-top:1px solid var(--line)}
.revision-row{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}
.revision-row:last-child{border-bottom:0}
.revision-totals{text-align:right;white-space:nowrap}
.revision-totals span{display:block;color:var(--cyan-dark);font-weight:800}
@media(max-width:760px){.component-editor-item>summary,.revision-row,.audit-summary{align-items:flex-start;flex-direction:column}.component-editor-badges{justify-content:flex-start}.revision-totals{text-align:left}.component-editor-flags{display:block}.component-editor-flags label{margin-bottom:8px}}

/* =========================================================
   BMG Visual Polish - 2026-08
   Header scale, atmospheric background and soft card depth.
   ========================================================= */

body {
    background:
        radial-gradient(circle at 15% 5%, rgba(52,190,200,.12) 0%, rgba(52,190,200,0) 38%),
        linear-gradient(135deg, #E9F5F6 0%, #F1F5F6 72%);
    background-attachment:fixed;
}

/* Approximately 50% larger brand treatment on desktop. */
.top {
    min-height:92px;
}

.brand img {
    height:48px;
    max-width:315px;
}

.brand-mark {
    font-size:28px;
    letter-spacing:.005em;
}

.brand-sub {
    font-size:16px;
    letter-spacing:.12em;
    padding-left:18px;
}

/* Soft Apple-inspired elevation for primary white surfaces. */
.card {
    box-shadow:
        0 1px 2px rgba(4,39,62,.035),
        0 8px 24px rgba(4,39,62,.065),
        0 20px 48px rgba(4,39,62,.035);
}

.card:hover {
    box-shadow:
        0 1px 2px rgba(4,39,62,.04),
        0 10px 28px rgba(4,39,62,.075),
        0 22px 52px rgba(4,39,62,.04);
}

@media (max-width: 900px) {
    .top {
        min-height:78px;
    }

    .brand img {
        height:36px;
        max-width:235px;
    }

    .brand-mark {
        font-size:21px;
    }

    .brand-sub {
        font-size:12px;
        padding-left:12px;
    }
}


/* =========================================================
   Pilot UX
   ========================================================= */

.brand-wrap{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
}

.pilot-badge,
.status-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    font-size:12px;
    line-height:1;
    font-weight:850;
    letter-spacing:.13em;
    text-transform:uppercase;
    white-space:nowrap;
}

.pilot-badge{
    padding:7px 10px;
    color:#06283f;
    background:#dff5f8;
    border:1px solid rgba(18,169,195,.32);
}

.status-badge{
    margin-left:8px;
    padding:5px 8px;
    vertical-align:middle;
}

.draft-badge{
    color:#8b5a00;
    background:#fff3d9;
    border:1px solid #efd291;
}

.new-badge{
    color:#08788c;
    background:#e4f6f8;
    border:1px solid #b9e4e9;
}

.header-feedback-btn{
    appearance:none;
    border:1px solid rgba(255,255,255,.28);
    background:rgba(255,255,255,.08);
    color:#fff;
    padding:8px 12px;
    border-radius:9px;
    font:inherit;
    font-weight:750;
    cursor:pointer;
    transition:background .15s ease,border-color .15s ease,transform .15s ease;
}

.header-feedback-btn:hover{
    background:rgba(255,255,255,.15);
    border-color:rgba(255,255,255,.44);
    transform:translateY(-1px);
}

.feedback-modal[hidden]{
    display:none;
}

.feedback-modal{
    position:fixed;
    inset:0;
    z-index:1000;
    display:grid;
    place-items:center;
    padding:20px;
}

.feedback-backdrop{
    position:absolute;
    inset:0;
    background:rgba(6,40,63,.50);
    backdrop-filter:blur(5px);
}

.feedback-dialog{
    position:relative;
    z-index:1;
    width:min(640px,100%);
    max-height:90vh;
    overflow:auto;
    padding:28px;
    border:1px solid rgba(255,255,255,.72);
    border-radius:20px;
    background:#fff;
    box-shadow:0 30px 80px rgba(6,40,63,.24),0 8px 26px rgba(6,40,63,.12);
}

.feedback-dialog h2{
    margin:4px 0 6px;
    color:var(--navy);
    letter-spacing:.005em;
}

.feedback-close{
    position:absolute;
    top:14px;
    right:16px;
    width:34px;
    height:34px;
    border:0;
    border-radius:50%;
    background:#f1f5f6;
    color:var(--navy);
    font-size:22px;
    line-height:1;
    cursor:pointer;
}

.feedback-close:hover{
    background:#e5eff1;
}

.feedback-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    margin-top:18px;
}

body.modal-open{
    overflow:hidden;
}

.pilot-feedback-success{
    margin-bottom:18px;
}

.pilot-feedback-list{
    border-top:1px solid var(--line);
}

.pilot-feedback-row{
    padding:18px 0;
    border-bottom:1px solid var(--line);
}

.pilot-feedback-row:last-child{
    border-bottom:0;
}

.pilot-feedback-top,
.pilot-feedback-meta{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.pilot-feedback-top{
    justify-content:space-between;
}

.pilot-feedback-copy{
    margin:11px 0 12px;
    color:var(--ink);
    line-height:1.55;
}

.pilot-feedback-meta{
    color:var(--muted);
    font-size:12px;
}

.feedback-type{
    display:inline-flex;
    margin-right:9px;
    padding:5px 8px;
    border-radius:999px;
    font-size:12px;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.feedback-type-bug{
    background:#fde9e9;
    color:#9d3232;
}

.feedback-type-confusing{
    background:#fff2d6;
    color:#8b5a00;
}

.feedback-type-suggestion{
    background:#e5f6f8;
    color:#08788c;
}

.feedback-type-other{
    background:#edf1f3;
    color:#526572;
}

@media(max-width:900px){
    .pilot-badge{
        display:none;
    }
    .header-feedback-btn{
        padding:7px 9px;
    }
}

@media(max-width:650px){
    .feedback-dialog{
        padding:24px 18px;
    }
    .feedback-actions{
        flex-direction:column-reverse;
    }
    .feedback-actions .btn{
        width:100%;
    }
}


/* =========================================================
   Admin - Create User
   ========================================================= */

.admin-users-head-actions{
    display:flex;
    align-items:center;
    gap:12px;
}

.add-user-panel{
    position:relative;
    margin:0 0 22px;
    padding:20px;
    border:1px solid #cce4e9;
    border-left:4px solid var(--cyan);
    border-radius:14px;
    background:#f7fbfc;
}

.add-user-panel[hidden]{
    display:none;
}

.add-user-panel-head{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:flex-start;
    margin-bottom:16px;
}

.add-user-panel-head h3{
    margin:3px 0 4px;
    color:var(--navy);
}

.add-user-close{
    position:static;
    flex:0 0 auto;
}

.add-user-grid{
    display:grid;
    grid-template-columns:1fr 1.4fr 1fr 1.3fr;
    gap:14px;
}

.add-user-grid p{
    margin:0;
}

.add-user-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    margin-top:18px;
}

@media(max-width:1000px){
    .add-user-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:650px){
    .admin-users-head-actions{
        align-items:flex-end;
        flex-direction:column;
    }
    .add-user-grid{
        grid-template-columns:1fr;
    }
    .add-user-actions{
        flex-direction:column-reverse;
    }
    .add-user-actions .btn{
        width:100%;
    }
}


/* =========================================================
   Login Page Typography + Spacing
   Match the refined tracking used throughout the application.
   ========================================================= */

.login-art .login-logo{
    margin-bottom:26px;
}

.login-art .eyebrow{
    margin-bottom:18px;
}

.login-art h1{
    margin:72px 0 24px;
    line-height:1.02;
    letter-spacing:0.015em;
}

.login-art p{
    margin:0;
    line-height:1.55;
    letter-spacing:0.005em;
}

.login h2{
    line-height:1.08;
    letter-spacing:0.01em;
}

.login .eyebrow{
    margin-bottom:14px;
}

.login .login-sub{
    margin:12px 0 30px;
    line-height:1.55;
}

.login form p{
    margin:0 0 18px;
}

.login form label{
    display:block;
    margin-bottom:8px;
}

.login form input{
    min-height:48px;
}

@media(max-width:800px){
    .login-art h1{
        margin-top:48px;
    }
}


/* =========================================================
   SEO + Content - Project Page Reference
   ========================================================= */

.content-page-reference{
    display:flex;
    justify-content:space-between;
    gap:22px;
    align-items:center;
    margin-bottom:16px;
    padding:16px 18px;
    border:1px solid #cfe5e9;
    border-left:4px solid var(--cyan);
    border-radius:12px;
    background:#f6fbfc;
}

.content-page-reference .component-name{
    margin-top:2px;
}

.content-page-reference-badge{
    flex:0 0 auto;
    min-width:88px;
    padding:10px 14px;
    border-radius:12px;
    background:#e3f5f7;
    color:var(--navy);
    text-align:center;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.content-page-reference-badge span{
    display:block;
    font-size:24px;
    line-height:1;
    margin-bottom:4px;
    letter-spacing:0;
}

@media(max-width:700px){
    .content-page-reference{
        align-items:flex-start;
        flex-direction:column;
    }

    .content-page-reference-badge{
        min-width:0;
    }
}


/* =========================================================
   Web Dev - Accessibility
   ========================================================= */

.accessibility-choice .choice-cost-note{
    display:block;
    margin-top:8px;
    color:var(--navy);
    font-weight:800;
}

.accessibility-notice{
    display:flex;
    gap:12px;
    align-items:flex-start;
    margin-top:14px;
    padding:13px 15px;
    border:1px solid #d7e4e7;
    border-radius:10px;
    background:#f7fafb;
    color:var(--muted);
    font-size:12px;
    line-height:1.5;
}

.accessibility-notice strong{
    flex:0 0 auto;
    color:var(--navy);
}

@media(max-width:700px){
    .accessibility-notice{
        flex-direction:column;
        gap:4px;
    }
}


/* =========================================================
   Accessibility Notice - Spacing Refinement
   ========================================================= */

.accessibility-choice .choice-options{
    margin-bottom:0;
}

.accessibility-notice{
    display:block;
    margin-top:20px;
    padding:16px 18px;
    border:1px solid #d7e4e7;
    border-radius:10px;
    background:#f7fafb;
    color:var(--muted);
    font-size:12px;
    line-height:1.55;
}

.accessibility-notice strong{
    display:block;
    margin:0 0 6px;
    color:var(--navy);
    font-size:12px;
    line-height:1.25;
    font-weight:850;
    letter-spacing:.02em;
}

.accessibility-notice span{
    display:block;
}

@media(max-width:700px){
    .accessibility-notice{
        margin-top:16px;
        padding:14px 15px;
    }
}


/* =========================================================
   Admin Password Generator
   ========================================================= */

.password-tool-row{
    display:grid;
    grid-template-columns:minmax(180px,1fr) auto auto;
    gap:8px;
    align-items:center;
}

.password-tool-row input[type=password]{
    width:100%;
    margin:0;
}

.password-generate-btn,
.password-copy-btn{
    white-space:nowrap;
}

@media(max-width:700px){
    .password-tool-row{
        grid-template-columns:1fr 1fr;
    }

    .password-tool-row input[type=password]{
        grid-column:1 / -1;
    }
}


/* =========================================================
   Security - Password Change + History
   ========================================================= */

.security-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);
    gap:22px;
    align-items:stretch;
}

.security-grid .security-card{
    margin-bottom:22px;
    height:100%;
}

.security-grid .password-change-form{
    max-width:none;
}

.security-grid .password-change-form p{
    margin:0 0 18px;
}

.password-history-list{
    border-top:1px solid var(--line);
}

.password-history-row{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:center;
    padding:14px 0;
    border-bottom:1px solid var(--line);
}

.password-history-row:last-child{
    border-bottom:0;
}

.password-history-source{
    flex:0 0 auto;
    padding:5px 8px;
    border-radius:999px;
    background:#e8f5f7;
    color:var(--navy);
    font-size:12px;
    font-weight:850;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.compact-empty{
    padding:34px 16px;
}

@media(max-width:900px){
    .security-grid{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   Sales Outcomes + Estimate Cleanup
   ========================================================= */

.dashboard-stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}

.stat-sub{
    margin-top:5px;
    color:var(--muted);
    font-size:12px;
    font-weight:700;
}

.sold-accent{
    background:var(--lime);
}

.pill.sold{
    background:#e6f6e8;
    color:#28763a;
    border-color:#bfe3c5;
}

.pill.lost{
    background:#f3ecec;
    color:#8b4b4b;
    border-color:#dfcaca;
}

.pill.test{
    background:#eceaf8;
    color:#594f9a;
    border-color:#d3cfec;
}

.sales-outcome-grid{
    display:grid;
    grid-template-columns:1fr 1fr 1.2fr;
    gap:16px;
    align-items:start;
}

.sales-outcome-grid p{
    margin:0;
}

.sales-outcome-actions{
    margin-top:18px;
}

.sold-summary{
    display:flex;
    justify-content:space-between;
    gap:18px;
    margin-top:18px;
    padding:14px 16px;
    border-radius:11px;
    background:#eef8ef;
    color:#28763a;
}

.estimate-admin-grid{
    display:grid;
    grid-template-columns:1fr 1.25fr;
    gap:18px;
}

.estimate-admin-control{
    padding:18px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#f8fafb;
}

.estimate-admin-control h3{
    margin:0 0 7px;
    color:var(--navy);
}

.estimate-admin-control p{
    margin:0 0 14px;
}

.danger-control{
    border-color:#ead1d1;
    background:#fffafa;
}

.delete-confirm-row{
    display:grid;
    grid-template-columns:minmax(160px,1fr) auto;
    gap:10px;
    margin-top:7px;
}

.danger-btn{
    background:#9d3e3e;
    border-color:#9d3e3e;
    color:#fff;
}

.danger-btn:hover{
    background:#7f3030;
    border-color:#7f3030;
}

.danger-btn:disabled{
    opacity:.45;
    cursor:not-allowed;
}

.cleanup-row{
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:center;
}

@media(max-width:1100px){
    .dashboard-stats{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .sales-outcome-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:760px){
    .dashboard-stats,
    .sales-outcome-grid,
    .estimate-admin-grid{
        grid-template-columns:1fr;
    }

    .cleanup-row,
    .sold-summary{
        align-items:flex-start;
        flex-direction:column;
    }

    .delete-confirm-row{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   Dashboard KPI Layout Refinement
   ========================================================= */

.dashboard-stats{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:16px !important;
    align-items:stretch;
}

.dashboard-stats .stat{
    min-width:0;
    min-height:138px;
    padding:22px 22px 20px;
    margin:0;
    border-radius:18px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.dashboard-stats .stat-label{
    margin-bottom:8px;
}

.dashboard-stats .stat-value{
    line-height:1;
}

.dashboard-stats .stat-sub{
    min-height:18px;
    margin-top:7px;
}

.dashboard-stats .stat-accent{
    margin-top:auto;
    padding-top:18px;
}

@media(max-width:1100px){
    .dashboard-stats{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:650px){
    .dashboard-stats{
        grid-template-columns:1fr !important;
    }

    .dashboard-stats .stat{
        min-height:120px;
    }
}


/* =========================================================
   Estimate Delete Confirmation Emphasis
   ========================================================= */

.delete-confirm-code{
    display:inline-block;
    margin:0 3px;
    padding:2px 7px;
    border-radius:6px;
    background:#fff0d9;
    color:#a45118;
    font-weight:850;
    letter-spacing:.035em;
}


/* =========================================================
   Final Estimates Table Polish
   Keep action controls on one line and reduce row height.
   ========================================================= */

.quote-list-section .summary-table{
    table-layout:auto;
}

.quote-list-section .summary-table th:last-child,
.quote-list-section .summary-table td:last-child{
    width:1%;
    white-space:nowrap;
}

.quote-list-section .row-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:nowrap;
    white-space:nowrap;
}

.quote-list-section .row-actions form{
    display:inline-flex !important;
    margin:0;
}

.quote-list-section .row-actions .btn{
    white-space:nowrap;
}

.quote-list-section .summary-table th,
.quote-list-section .summary-table td{
    vertical-align:middle;
}

.quote-list-section .summary-table td{
    padding-top:16px;
    padding-bottom:16px;
}

.quote-list-section .summary-table td:nth-child(6){
    white-space:nowrap;
}

@media(max-width:1050px){
    .quote-list-section .summary-table{
        min-width:980px;
    }
}


/* Keep quote number and status badges together on one line. */
.quote-list-section .summary-table td:first-child{
    white-space:nowrap;
}

.quote-list-section .summary-table td:first-child .quote-link,
.quote-list-section .summary-table td:first-child .pill{
    display:inline-flex;
    vertical-align:middle;
}

.quote-list-section .summary-table td:first-child .pill{
    margin-left:5px;
}


/* Session expiration notice */
.session-expired-notice{
    margin:0 0 22px;
    border:1px solid #c7e4e9;
    border-left:4px solid var(--cyan);
    background:#f2fbfc;
}
.session-expired-notice strong{
    color:var(--navy);
}


/* =========================================================
   Final Estimate Top Controls - Compact Layout
   ========================================================= */

.compact-sales-outcome{
    padding:20px 24px;
    margin-bottom:16px;
}

.sales-outcome-compact-row{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
}

.sales-outcome-title .eyebrow{
    margin-bottom:5px;
}

.sales-outcome-heading-row{
    display:flex;
    align-items:center;
    gap:10px;
}

.sales-outcome-heading-row h2{
    margin:0;
}

.sales-outcome-inline-control{
    display:grid;
    grid-template-columns:auto minmax(220px,310px) auto;
    gap:10px;
    align-items:center;
}

.sales-outcome-inline-control label{
    margin:0;
    font-size:12px;
    font-weight:800;
    color:var(--navy);
}

.sales-outcome-inline-control select{
    min-height:44px;
}

.contract-fields-panel{
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid var(--line);
}

.contract-fields-panel[hidden]{
    display:none;
}

.compact-contract-grid{
    grid-template-columns:minmax(180px,.7fr) minmax(240px,1fr);
    max-width:760px;
}

.compact-sold-summary{
    margin-top:14px;
}

.compact-admin-tools{
    padding:0;
    margin-bottom:16px;
    overflow:hidden;
}

.compact-admin-tools > summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:16px 22px;
    cursor:pointer;
    list-style:none;
}

.compact-admin-tools > summary::-webkit-details-marker{
    display:none;
}

.compact-admin-tools > summary:hover{
    background:#f8fbfc;
}

.compact-admin-tools[open] > summary{
    border-bottom:1px solid var(--line);
    background:#f8fbfc;
}

.compact-admin-tools .eyebrow{
    margin-bottom:3px;
}

.admin-summary-title{
    color:var(--navy);
    font-size:18px;
    font-weight:850;
    line-height:1.2;
}

.admin-summary-chevron{
    font-size:24px;
    color:var(--navy);
    transition:transform .15s ease;
}

.compact-admin-tools[open] .admin-summary-chevron{
    transform:rotate(180deg);
}

.compact-admin-body{
    padding:18px 22px 22px;
}

@media(max-width:850px){
    .sales-outcome-compact-row{
        align-items:flex-start;
        flex-direction:column;
    }

    .sales-outcome-inline-control{
        width:100%;
        grid-template-columns:1fr auto;
    }

    .sales-outcome-inline-control label{
        grid-column:1 / -1;
    }

    .compact-contract-grid{
        grid-template-columns:1fr;
        max-width:none;
    }
}

@media(max-width:560px){
    .sales-outcome-inline-control{
        grid-template-columns:1fr;
    }

    .compact-sales-outcome{
        padding:18px;
    }

    .compact-admin-tools > summary,
    .compact-admin-body{
        padding-left:18px;
        padding-right:18px;
    }
}


/* =========================================================
   Timeline Builder v1
   Teamwork-inspired production timeline, BMG branded.
   ========================================================= */

.timeline-btn{
    background:#0fa9c3;
    border-color:#0fa9c3;
    color:#fff;
}

.timeline-settings-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}

.timeline-settings-actions{
    display:flex;
    justify-content:flex-end;
    margin-bottom:28px;
}

.timeline-summary-bar{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1px;
    margin-bottom:16px;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:14px;
    background:var(--line);
    box-shadow:0 10px 28px rgba(6,40,63,.06);
}

.timeline-summary-bar > div{
    padding:15px 18px;
    background:#fff;
}

.timeline-summary-bar span,
.timeline-summary-bar strong,
.timeline-summary-bar small{
    display:block;
}

.timeline-summary-bar strong{
    margin-top:4px;
    color:var(--navy);
    font-size:15px;
}

.timeline-summary-bar small{
    margin-top:4px;
    color:var(--muted);
}

.timeline-summary-bar .timeline-risk{
    background:#fff8ef;
}

.timeline-summary-bar .timeline-risk strong,
.timeline-summary-bar .timeline-risk small{
    color:#a45118;
}

.timeline-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:0 0 14px;
}

.timeline-view-tabs{
    display:inline-flex;
    padding:4px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
}

.timeline-view-tabs a{
    padding:8px 12px;
    border-radius:7px;
    color:var(--muted);
    font-weight:800;
    font-size:12px;
    text-decoration:none;
}

.timeline-view-tabs a.active{
    background:#e7f7f9;
    color:var(--navy);
}

.timeline-regenerate{
    position:relative;
}

.timeline-regenerate > summary{
    cursor:pointer;
    list-style:none;
    padding:9px 12px;
    border:1px solid var(--line);
    border-radius:9px;
    background:#fff;
    color:var(--navy);
    font-weight:800;
    font-size:12px;
}

.timeline-regenerate > summary::-webkit-details-marker{
    display:none;
}

.timeline-regenerate[open] form{
    position:absolute;
    z-index:20;
    top:44px;
    right:0;
    display:grid;
    gap:12px;
    width:360px;
    padding:16px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#fff;
    box-shadow:0 18px 50px rgba(6,40,63,.16);
}

.timeline-regenerate label{
    display:grid;
    gap:5px;
    font-size:12px;
    font-weight:800;
}

.timeline-board{
    overflow:hidden;
    margin-bottom:16px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#fff;
    box-shadow:0 16px 40px rgba(6,40,63,.07);
}

.timeline-board-head{
    display:grid;
    grid-template-columns:330px minmax(760px,1fr);
    min-width:1090px;
    border-bottom:1px solid var(--line);
    background:#f7fafb;
}

.timeline-task-head{
    padding:14px 18px;
    border-right:1px solid var(--line);
    color:var(--muted);
    font-size:12px;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.timeline-scale{
    position:relative;
    height:46px;
    overflow:hidden;
}

.timeline-scale span{
    position:absolute;
    top:14px;
    transform:translateX(6px);
    color:var(--muted);
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.timeline-phase{
    min-width:1090px;
}

.timeline-phase > summary{
    display:grid;
    grid-template-columns:1fr auto;
    gap:18px;
    align-items:center;
    padding:12px 18px;
    border-bottom:1px solid var(--line);
    background:#fbfdfe;
    cursor:pointer;
    list-style:none;
}

.timeline-phase > summary::-webkit-details-marker{
    display:none;
}

.timeline-phase > summary > div:first-child{
    display:flex;
    gap:9px;
    align-items:center;
}

.timeline-phase-number{
    display:inline-flex;
    min-width:30px;
    justify-content:center;
    padding:4px 6px;
    border-radius:7px;
    background:#e4f6f8;
    color:#08788c;
    font-size:12px;
    font-weight:900;
}

.timeline-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:23px;
    height:23px;
    padding:0 6px;
    border-radius:999px;
    background:#edf2f4;
    color:var(--muted);
    font-size:12px;
    font-weight:800;
}

.timeline-phase-meta{
    color:var(--muted);
    font-size:12px;
    font-weight:700;
}

.timeline-row{
    display:grid;
    grid-template-columns:330px minmax(760px,1fr);
    min-height:54px;
    border-bottom:1px solid #edf2f4;
}

.timeline-row:last-child{
    border-bottom:0;
}

.timeline-task-cell{
    display:flex;
    align-items:center;
    gap:10px;
    padding:9px 16px;
    border-right:1px solid var(--line);
}

.timeline-task-cell strong,
.timeline-task-cell small{
    display:block;
}

.timeline-task-cell strong{
    color:var(--navy);
    font-size:12px;
    line-height:1.25;
}

.timeline-task-cell small{
    margin-top:3px;
    color:var(--muted);
    font-size:12px;
}

.timeline-task-icon{
    flex:0 0 auto;
    width:14px;
    height:14px;
    border:1.5px solid #b7cbd1;
    border-radius:50%;
}

.timeline-task-icon.milestone{
    width:10px;
    height:10px;
    margin-left:2px;
    margin-right:2px;
    border:1.5px solid #f28d3f;
    border-radius:2px;
    transform:rotate(45deg);
}

.timeline-track{
    position:relative;
    overflow:hidden;
    min-height:54px;
    background:linear-gradient(180deg,#fff,#fcfefe);
}

.timeline-weekline{
    position:absolute;
    top:0;
    bottom:0;
    width:1px;
    background:#edf1f3;
}

.timeline-bar{
    position:absolute;
    top:15px;
    height:24px;
    min-width:8px;
    border-radius:7px;
    box-shadow:inset 0 -3px 0 rgba(6,40,63,.08);
}

.timeline-bar em{
    position:absolute;
    left:calc(100% + 8px);
    top:4px;
    max-width:180px;
    overflow:hidden;
    color:var(--navy);
    font-size:12px;
    font-style:normal;
    font-weight:800;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.timeline-bar.bmg{
    background:#48bfd0;
}

.timeline-bar.client{
    background:#f3c76b;
}

.timeline-bar.internal{
    background:#aac7cf;
}

.timeline-milestone{
    position:absolute;
    top:21px;
    width:12px;
    height:12px;
    transform:rotate(45deg);
    border-radius:2px;
}

.timeline-milestone.bmg{
    background:#0fa9c3;
}

.timeline-milestone.client{
    background:#ef8c42;
}

.timeline-milestone.internal{
    background:#829ca5;
}

.timeline-legend{
    display:flex;
    gap:22px;
    align-items:center;
    flex-wrap:wrap;
    padding:14px 18px;
    margin-bottom:14px;
    font-size:12px;
    color:var(--muted);
}

.timeline-legend > div{
    display:flex;
    align-items:center;
    gap:7px;
}

.timeline-legend-dot{
    width:20px;
    height:8px;
    border-radius:999px;
}

.timeline-legend-dot.bmg{background:#48bfd0}
.timeline-legend-dot.client{background:#f3c76b}
.timeline-legend-dot.internal{background:#aac7cf}

.timeline-legend-diamond{
    width:9px;
    height:9px;
    background:#ef8c42;
    transform:rotate(45deg);
    border-radius:1px;
}

.timeline-v1-note{
    margin:0 0 28px;
    padding:13px 16px;
    border:1px solid #cfe5e9;
    border-left:4px solid var(--cyan);
    border-radius:10px;
    background:#f7fbfc;
    color:var(--muted);
    font-size:12px;
    line-height:1.5;
}

.timeline-generate-card{
    max-width:840px;
}

@media(max-width:1000px){
    .timeline-settings-grid,
    .timeline-summary-bar{
        grid-template-columns:1fr 1fr;
    }

    .timeline-board{
        overflow:auto;
    }
}

@media(max-width:700px){
    .timeline-settings-grid,
    .timeline-summary-bar{
        grid-template-columns:1fr;
    }

    .timeline-toolbar{
        align-items:stretch;
        flex-direction:column;
    }

    .timeline-regenerate[open] form{
        position:static;
        width:auto;
        margin-top:8px;
    }
}


/* =========================================================
   Timeline Readability Refinement
   Stronger date scale + phase hierarchy
   ========================================================= */

.timeline-board-head{
    grid-template-columns:330px minmax(900px,1fr);
}

.timeline-scale-wrap{
    position:relative;
    min-height:68px;
    background:#f7fafb;
}

.timeline-month-scale{
    position:relative;
    height:27px;
    border-bottom:1px solid #dbe7ea;
    background:#eef6f8;
}

.timeline-month-label{
    position:absolute;
    top:0;
    bottom:0;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding-left:8px;
    border-left:1px solid #cddde1;
    color:var(--navy);
    font-size:12px;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
    white-space:nowrap;
    overflow:hidden;
}

.timeline-scale{
    position:relative;
    height:41px;
    overflow:hidden;
    background:#fff;
}

.timeline-week-label{
    position:absolute;
    top:5px;
    transform:translateX(6px);
    display:flex;
    flex-direction:column;
    gap:1px;
    color:var(--muted);
    white-space:nowrap;
}

.timeline-week-label b{
    color:#68808b;
    font-size:12px;
    line-height:1;
    font-weight:850;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.timeline-week-label small{
    color:var(--navy);
    font-size:12px;
    line-height:1.1;
    font-weight:850;
}

.timeline-phase{
    min-width:1230px;
}

.timeline-row{
    grid-template-columns:330px minmax(900px,1fr);
}

.timeline-phase > summary{
    min-height:54px;
    padding:13px 18px;
    border-top:2px solid #d4e7eb;
    border-bottom:1px solid #cddfe3;
    background:linear-gradient(90deg,#eef9fb 0%,#f7fbfc 48%,#ffffff 100%);
}

.timeline-phase:first-of-type > summary{
    border-top:0;
}

.timeline-phase > summary:hover{
    background:linear-gradient(90deg,#e5f6f8 0%,#f3fafb 48%,#ffffff 100%);
}

.timeline-phase-number{
    min-width:34px;
    padding:6px 8px;
    background:var(--cyan);
    color:#fff;
    font-size:12px;
    box-shadow:0 3px 9px rgba(15,169,195,.18);
}

.timeline-phase > summary strong{
    color:var(--navy);
    font-size:15px;
    font-weight:900;
    letter-spacing:.005em;
}

.timeline-count{
    background:#dce9ec;
    color:#49636d;
}

.timeline-phase-meta{
    color:#536c77;
    font-size:12px;
    font-weight:800;
}

.timeline-phase[open] > summary{
    box-shadow:inset 4px 0 0 var(--cyan);
}

.timeline-track{
    background:
        linear-gradient(180deg,#fff,#fcfefe),
        repeating-linear-gradient(
            90deg,
            transparent,
            transparent 59px,
            rgba(226,235,238,.35) 60px
        );
}

@media(max-width:1000px){
    .timeline-board-head,
    .timeline-phase,
    .timeline-row{
        min-width:1230px;
    }
}


/* =========================================================
   Timeline Visual Polish
   Dark month band, teal dates, phase meta accents, scrolling.
   ========================================================= */

/* Month / year band */
.timeline-month-scale{
    background:#182852;
    border-bottom:0;
}

.timeline-month-label{
    color:#fff;
    border-left:1px solid rgba(255,255,255,.72);
}

.timeline-month-label:first-child{
    border-left:0;
}

/* Weekly dates directly below month band */
.timeline-scale{
    background:#fff;
    border-bottom:1px solid #dbe7ea;
}

.timeline-week-label b,
.timeline-week-label small{
    color:var(--cyan);
}

/* Phase hours + range */
.timeline-phase-meta{
    display:flex;
    align-items:center;
    gap:6px;
    color:var(--cyan);
}

.timeline-phase-meta::first-letter{
    color:inherit;
}

/* The hour value sits before the separator dot generated in markup. */
.timeline-phase-meta{
    font-weight:850;
}

/* Explicitly color the hour portion using a small overlay treatment.
   Existing markup is plain text, so use text color for date range and
   a pseudo-layer is not reliable. We instead split visually with the
   separator by using the Desired Launch orange as the first text run
   via mix-blend-safe text shadow fallback below. */
.timeline-phase-meta{
    --phase-hours:#a45118;
}

/* Modern browsers: color first numeric run (hours) with a wrapped-like
   emphasis by using an inset pill background behind the whole meta,
   while the date range stays teal. */
.timeline-phase-meta{
    color:var(--cyan);
}

/* Horizontal scrolling for long schedules */
.timeline-board{
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:thin;
    scrollbar-color:#9fcbd3 #eef5f7;
    -webkit-overflow-scrolling:touch;
}

.timeline-board::-webkit-scrollbar{
    height:12px;
}

.timeline-board::-webkit-scrollbar-track{
    background:#eef5f7;
    border-top:1px solid #d8e7ea;
}

.timeline-board::-webkit-scrollbar-thumb{
    background:#9fcbd3;
    border:3px solid #eef5f7;
    border-radius:999px;
}

.timeline-board::-webkit-scrollbar-thumb:hover{
    background:#6fb8c5;
}

/* Keep the left task column visible while scrolling horizontally. */
.timeline-task-head,
.timeline-task-cell{
    position:sticky;
    left:0;
    z-index:6;
    background:#fff;
}

.timeline-task-head{
    z-index:9;
    background:#f7fafb;
}

.timeline-phase > summary{
    position:sticky;
    left:0;
    z-index:7;
}

/* Give users a subtle visual cue that the schedule can scroll. */
.timeline-board{
    background:
        linear-gradient(to right, #fff 30%, rgba(255,255,255,0)),
        linear-gradient(to right, rgba(255,255,255,0), #fff 70%) 100% 0,
        linear-gradient(to right, rgba(24,40,82,.08), rgba(24,40,82,0)),
        linear-gradient(to left, rgba(24,40,82,.08), rgba(24,40,82,0)) 100% 0;
    background-repeat:no-repeat;
    background-size:36px 100%,36px 100%,14px 100%,14px 100%;
    background-attachment:local,local,scroll,scroll;
}


.timeline-phase-hours{
    color:#a45118;
}

.timeline-phase-separator{
    color:#8aa1aa;
}

.timeline-phase-range{
    color:var(--cyan);
}


/* =========================================================
   Timeline Phase Meta + Scroll Visibility
   ========================================================= */

/* Make phase hours + date range easier to scan */
.timeline-phase-meta{
    font-size:14px;
    line-height:1.2;
    gap:8px;
}

.timeline-phase-hours,
.timeline-phase-range{
    font-size:14px;
    font-weight:900;
}

/* Force the timeline itself to remain wider than the viewport on long schedules
   so horizontal scrolling is real and obvious rather than compressed away. */
.timeline-board{
    overflow-x:auto !important;
    overflow-y:hidden;
    scrollbar-gutter:stable;
}

.timeline-board-head,
.timeline-phase,
.timeline-row{
    min-width:1420px !important;
}

/* Make the scrollbar clearly visible on supported browsers */
.timeline-board::-webkit-scrollbar{
    height:14px;
}

.timeline-board::-webkit-scrollbar-track{
    background:#e7f0f2;
    border-top:1px solid #d4e3e7;
}

.timeline-board::-webkit-scrollbar-thumb{
    background:#68b7c4;
    border:3px solid #e7f0f2;
    border-radius:999px;
}

.timeline-board::-webkit-scrollbar-thumb:hover{
    background:#3fa1b0;
}

/* Add a visible hint above the board that disappears on very wide screens */
.timeline-scroll-hint{
    display:flex;
    align-items:center;
    gap:7px;
    margin:0 0 8px;
    color:var(--muted);
    font-size:12px;
    font-weight:750;
}

.timeline-scroll-hint::before{
    content:"↔";
    color:var(--cyan);
    font-size:15px;
    font-weight:900;
}


/* =========================================================
   Timeline Phase Meta Visibility + Dual Scrollbars
   ========================================================= */

/* The phase row itself can scroll, but keep both important ends visible. */
.timeline-phase > summary{
    position:relative !important;
    left:auto !important;
    grid-template-columns:330px minmax(900px,1fr);
    padding:0 !important;
    min-height:56px;
}

.timeline-phase > summary > div:first-child{
    position:sticky;
    left:0;
    z-index:11;
    min-height:56px;
    padding:13px 18px;
    background:linear-gradient(90deg,#eef9fb 0%,#f7fbfc 100%);
    border-right:1px solid #d7e5e8;
}

.timeline-phase-meta{
    position:sticky;
    right:0;
    z-index:12;
    justify-self:end;
    min-height:56px;
    min-width:max-content;
    padding:13px 18px 13px 22px;
    background:linear-gradient(90deg,rgba(255,255,255,.35) 0%,#fff 20%,#fff 100%);
    border-left:1px solid #d7e5e8;
    box-shadow:-10px 0 18px rgba(255,255,255,.92);
}

/* Preserve phase accent when open without losing sticky sections. */
.timeline-phase[open] > summary > div:first-child{
    box-shadow:inset 4px 0 0 var(--cyan);
}

/* Synchronized scrollbar above the long timeline. */
.timeline-scroll-top{
    overflow-x:auto;
    overflow-y:hidden;
    height:16px;
    margin:0 0 6px;
    border:1px solid #d6e5e8;
    border-radius:999px;
    background:#e7f0f2;
    scrollbar-width:thin;
    scrollbar-color:#68b7c4 #e7f0f2;
}

.timeline-scroll-top-spacer{
    height:1px;
    min-width:1420px;
}

.timeline-scroll-top::-webkit-scrollbar{
    height:14px;
}

.timeline-scroll-top::-webkit-scrollbar-track{
    background:#e7f0f2;
    border-radius:999px;
}

.timeline-scroll-top::-webkit-scrollbar-thumb{
    background:#68b7c4;
    border:3px solid #e7f0f2;
    border-radius:999px;
}

.timeline-scroll-top::-webkit-scrollbar-thumb:hover{
    background:#3fa1b0;
}

/* Keep the native lower scrollbar as the second control. */
.timeline-board{
    overflow-x:auto !important;
    overflow-y:hidden;
}

/* Slightly stronger phase meta typography now that it remains visible. */
.timeline-phase-hours,
.timeline-phase-range{
    font-size:15px;
    line-height:1.15;
}

@media(max-width:700px){
    .timeline-phase > summary{
        grid-template-columns:300px minmax(900px,1fr);
    }

    .timeline-phase > summary > div:first-child{
        padding-left:14px;
        padding-right:14px;
    }

    .timeline-phase-meta{
        padding-left:16px;
        padding-right:14px;
    }
}


/* =========================================================
   Timeline Weekly Date Scale
   Larger dates, equal weekly cells, subtle scan guides.
   ========================================================= */

.timeline-scale{
    display:block;
    height:52px;
}

.timeline-week-cell{
    position:absolute;
    top:0;
    bottom:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    border-left:1px solid #e3edf0;
    color:var(--cyan);
    text-align:center;
    box-sizing:border-box;
}

.timeline-week-cell.alternate{
    background:rgba(15,169,195,.045);
}

.timeline-week-cell.month-start{
    border-left:2px solid #8dcbd5;
}

.timeline-week-cell b{
    color:#58bccc;
    font-size:12px;
    line-height:1;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.timeline-week-cell small{
    color:var(--cyan);
    font-size:15px;
    line-height:1;
    font-weight:950;
    letter-spacing:0;
}

/* Subtle vertical guides continue through task bars for easier date tracking. */
.timeline-week-cell-guide{
    position:absolute;
    top:0;
    bottom:0;
    z-index:0;
    display:block;
    border-left:1px solid #edf2f4;
    box-sizing:border-box;
    pointer-events:none;
}

.timeline-week-cell-guide.alternate{
    background:rgba(15,169,195,.025);
}

.timeline-week-cell-guide.month-start{
    border-left:2px solid rgba(15,169,195,.20);
}

/* Bars and milestones stay above the calendar guides. */
.timeline-bar,
.timeline-milestone{
    z-index:2;
}

/* Retire the old floating week-label treatment if cached CSS is still present. */
.timeline-week-label{
    display:none !important;
}


/* =========================================================
   Timeline Task Tooltip + Hover/Selection
   ========================================================= */

.timeline-task-tooltip{
    position:fixed;
    z-index:1000;
    width:max-content;
    max-width:290px;
    padding:11px 13px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:10px;
    background:#182852;
    color:#fff;
    box-shadow:0 12px 30px rgba(6,40,63,.24);
    pointer-events:none;
}

.timeline-task-tooltip[hidden]{
    display:none;
}

.timeline-task-tooltip strong,
.timeline-task-tooltip span,
.timeline-task-tooltip small{
    display:block;
}

.timeline-task-tooltip strong{
    font-size:12px;
    line-height:1.3;
    font-weight:900;
}

.timeline-task-tooltip span{
    margin-top:5px;
    color:#7ad6e1;
    font-size:12px;
    font-weight:850;
}

.timeline-task-tooltip small{
    margin-top:5px;
    color:#dce7ea;
    font-size:12px;
    line-height:1.35;
}

.timeline-row.tooltip-active .timeline-task-cell{
    background:#f2fbfc;
    box-shadow:inset 4px 0 0 var(--cyan);
}

.timeline-row.tooltip-active .timeline-track{
    background-color:rgba(15,169,195,.035);
}

.timeline-interactive{
    cursor:pointer;
    transition:filter .12s ease, transform .12s ease, box-shadow .12s ease;
    outline:none;
}

.timeline-interactive:hover,
.timeline-interactive:focus{
    filter:saturate(1.08) brightness(.98);
    box-shadow:0 3px 10px rgba(6,40,63,.18);
}

.timeline-bar.timeline-interactive:hover,
.timeline-bar.timeline-interactive:focus{
    transform:translateY(-1px);
}

.timeline-milestone.timeline-interactive:hover,
.timeline-milestone.timeline-interactive:focus{
    box-shadow:0 0 0 4px rgba(15,169,195,.15);
}

@media (hover:none), (pointer:coarse){
    .timeline-task-tooltip{
        max-width:250px;
    }
}


/* Timeline Workflow + Working Calendar */
.timeline-cushion{background:#eef9f2!important;border-color:#b9dfc5!important}
.timeline-cushion strong,.timeline-cushion small{color:#267a43!important}
.timeline-aligned{background:#eff9fb!important}
.timeline-workflow{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:18px 0;padding:18px 20px}
.timeline-workflow h3{margin:3px 0 5px}
.timeline-workflow p{margin:0;max-width:720px}
.timeline-workflow form{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.timeline-workflow select{min-width:170px}
.timeline-adjustments{margin:18px 0;padding:0;overflow:hidden}
.timeline-adjustments>summary{cursor:pointer;padding:16px 18px;list-style:none}
.timeline-adjustments>summary::-webkit-details-marker{display:none}
.timeline-adjustment-list{border-top:1px solid #e4ecef}
.timeline-adjustment-row{display:grid;grid-template-columns:minmax(260px,1fr) 160px 160px auto;gap:12px;align-items:end;padding:12px 18px;border-bottom:1px solid #edf2f4}
.timeline-adjustment-row:last-child{border-bottom:0}
.timeline-adjustment-row>div strong,.timeline-adjustment-row>div small{display:block}
.timeline-adjustment-row>div small{margin-top:3px;color:#71848c}
.timeline-adjustment-row label{font-size:12px;font-weight:800}
.timeline-adjustment-row input{margin-top:4px}
.timeline-calendar-form{display:grid;grid-template-columns:minmax(220px,1.5fr) 160px 160px 160px auto auto;gap:12px;align-items:end}
.timeline-calendar-form label{font-size:12px;font-weight:800}
.timeline-calendar-form input,.timeline-calendar-form select{margin-top:4px}
.timeline-calendar-form .calendar-check{display:flex;align-items:center;gap:7px;min-height:42px}
.timeline-calendar-form .calendar-check input{width:auto;margin:0}
.timeline-calendar-list{display:grid;gap:0}
.timeline-calendar-event{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #edf2f4}
.timeline-calendar-event:last-child{border-bottom:0}
.timeline-calendar-event strong,.timeline-calendar-event small{display:block}
.timeline-calendar-event small{margin-top:4px;color:#71848c}
@media(max-width:900px){
 .timeline-workflow{align-items:flex-start;flex-direction:column}
 .timeline-workflow form{width:100%;flex-wrap:wrap}
 .timeline-adjustment-row{grid-template-columns:1fr 1fr}
 .timeline-adjustment-row>div{grid-column:1/-1}
 .timeline-calendar-form{grid-template-columns:1fr 1fr}
}


/* =========================================================
   BMG Working Calendar - Polished Admin Layout
   ========================================================= */

.calendar-admin-grid{
    display:grid;
    grid-template-columns:minmax(360px,.85fr) minmax(0,1.3fr);
    gap:22px;
    align-items:start;
    margin-bottom:28px;
}

.calendar-create-card,
.calendar-list-card{
    margin:0;
}

.calendar-mode-switch{
    display:inline-grid;
    grid-template-columns:1fr 1fr;
    gap:4px;
    padding:4px;
    margin-bottom:20px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#f1f6f7;
}

.calendar-mode-switch label{
    position:relative;
    margin:0;
    cursor:pointer;
}

.calendar-mode-switch input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.calendar-mode-switch span{
    display:block;
    padding:9px 14px;
    border-radius:7px;
    color:var(--muted);
    font-size:12px;
    font-weight:850;
    text-align:center;
    transition:background .12s ease,color .12s ease,box-shadow .12s ease;
}

.calendar-mode-switch input:checked + span{
    background:#fff;
    color:var(--navy);
    box-shadow:0 2px 7px rgba(6,40,63,.09);
}

.calendar-form-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.calendar-form-fields p{
    margin:0;
}

.calendar-name-field{
    grid-column:1/-1;
}

.calendar-nonworking-toggle{
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin:18px 0 0;
    padding:13px 14px;
    border:1px solid #d7e7ea;
    border-radius:10px;
    background:#f7fbfc;
    cursor:pointer;
}

.calendar-nonworking-toggle input{
    width:auto;
    margin-top:3px;
}

.calendar-nonworking-toggle strong,
.calendar-nonworking-toggle small{
    display:block;
}

.calendar-nonworking-toggle strong{
    color:var(--navy);
    font-size:12px;
}

.calendar-nonworking-toggle small{
    margin-top:3px;
    color:var(--muted);
    font-size:12px;
}

.calendar-form-actions{
    display:flex;
    justify-content:flex-end;
    margin-top:18px;
}

.timeline-calendar-list{
    display:grid;
    gap:0;
}

.timeline-calendar-event{
    display:grid;
    grid-template-columns:54px minmax(0,1fr) auto;
    gap:14px;
    align-items:center;
    padding:13px 0;
    border-bottom:1px solid #edf2f4;
}

.timeline-calendar-event:first-child{
    padding-top:0;
}

.timeline-calendar-event:last-child{
    padding-bottom:0;
    border-bottom:0;
}

.calendar-event-date{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:48px;
    min-height:48px;
    border:1px solid #d4e6e9;
    border-radius:10px;
    background:#f2fafb;
    line-height:1;
}

.calendar-event-date span{
    color:var(--cyan);
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.calendar-event-date strong{
    margin-top:3px;
    color:var(--navy);
    font-size:18px;
    font-weight:900;
}

.calendar-event-info{
    min-width:0;
}

.calendar-event-title{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.calendar-event-info small{
    display:block;
    margin-top:4px;
    color:var(--muted);
    font-size:12px;
}

.calendar-off-pill{
    background:#fff0d9;
    border-color:#f1d09d;
    color:#a45118;
}

.calendar-empty{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:150px;
    padding:24px;
    border:1px dashed #cfdee2;
    border-radius:12px;
    color:var(--muted);
    text-align:center;
}

.calendar-empty strong{
    color:var(--navy);
}

.calendar-empty span{
    margin-top:5px;
    font-size:12px;
}

@media(max-width:950px){
    .calendar-admin-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:600px){
    .calendar-form-fields{
        grid-template-columns:1fr;
    }

    .calendar-name-field{
        grid-column:auto;
    }

    .calendar-mode-switch{
        display:grid;
        width:100%;
    }

    .timeline-calendar-event{
        grid-template-columns:48px minmax(0,1fr);
    }

    .timeline-calendar-event form{
        grid-column:2;
    }
}


/* =========================================================
   Project Timeline Layout Polish
   ========================================================= */

.polished-summary{
    gap:12px;
    padding:0;
    border:0;
    background:transparent;
    overflow:visible;
    box-shadow:none;
}

.polished-summary .timeline-summary-item{
    position:relative;
    min-height:92px;
    padding:16px 18px 17px;
    border:1px solid #dbe7ea;
    border-radius:13px;
    background:#fff;
    box-shadow:0 8px 20px rgba(6,40,63,.045);
}

.polished-summary .timeline-summary-item::after{
    content:"";
    position:absolute;
    left:18px;
    right:18px;
    bottom:0;
    height:3px;
    border-radius:4px 4px 0 0;
    background:#b9d9df;
}

.polished-summary .timeline-cushion{
    border-color:#bcdcc6 !important;
    background:#f3faf5 !important;
}

.polished-summary .timeline-cushion::after{
    background:#4aa367;
}

.polished-summary .timeline-risk{
    border-color:#efd1ae !important;
    background:#fff8ef !important;
}

.polished-summary .timeline-risk::after{
    background:#d58339;
}

.polished-summary .timeline-aligned{
    border-color:#bfe3e8 !important;
    background:#f2fafb !important;
}

.polished-summary .timeline-aligned::after{
    background:var(--cyan);
}

.polished-timeline-toolbar{
    min-height:52px;
    padding:7px;
    margin-bottom:16px;
    border:1px solid #dbe7ea;
    border-radius:12px;
    background:#fff;
    box-shadow:0 6px 18px rgba(6,40,63,.04);
}

.timeline-toolbar-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.timeline-edit-btn,
.timeline-settings-btn{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 14px;
    border-radius:8px;
    font-size:12px;
    font-weight:850;
    line-height:1;
    white-space:nowrap;
}

.timeline-edit-btn{
    background:var(--cyan);
    border-color:var(--cyan);
    color:#fff;
}

.timeline-edit-btn:hover{
    filter:brightness(.96);
}

.timeline-settings-btn{
    border:1px solid #cbdce0 !important;
    background:#f7fafb !important;
    color:var(--navy) !important;
}

.timeline-regenerate > summary.timeline-settings-btn{
    padding:9px 14px;
}

.polished-workflow{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:28px;
    align-items:center;
    padding:18px 20px;
    border-left:4px solid #9ecbd3;
    background:linear-gradient(90deg,#fbfefe,#fff 62%);
}

.timeline-workflow-heading{
    display:flex;
    align-items:center;
    gap:10px;
    margin:3px 0 5px;
}

.timeline-workflow-heading h3{
    margin:0;
}

.timeline-status-pill{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 8px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.timeline-status-pill.baseline{
    background:#edf3f5;
    color:#657b84;
}

.timeline-status-pill.working{
    background:#e7f7f9;
    color:#08788c;
}

.timeline-status-pill.ready{
    background:#fff3df;
    color:#a45118;
}

.timeline-status-pill.approved{
    background:#e8f6ec;
    color:#28763a;
}

.timeline-workflow-form{
    display:grid !important;
    grid-template-columns:minmax(170px,220px) auto;
    align-items:end !important;
    gap:9px !important;
}

.timeline-workflow-form label{
    display:grid;
    gap:5px;
    margin:0;
}

.timeline-workflow-form label > span{
    color:var(--muted);
    font-size:12px;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.timeline-workflow-form select,
.timeline-workflow-form .btn{
    min-height:42px;
    margin:0;
}

.timeline-adjustments{
    scroll-margin-top:90px;
    border:1px solid #d8e6e9;
}

.timeline-adjustments > summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:14px 18px !important;
    background:#f8fbfc;
}

.timeline-adjustments > summary > div{
    display:flex;
    align-items:baseline;
    gap:8px;
    flex-wrap:wrap;
}

.timeline-adjustments > summary .eyebrow{
    flex-basis:100%;
    margin-bottom:-2px;
}

.adjust-chevron{
    color:var(--cyan);
    font-size:22px;
    transition:transform .15s ease;
}

.timeline-adjustments[open] .adjust-chevron{
    transform:rotate(180deg);
}

.timeline-adjustment-row{
    padding:13px 18px;
}

.timeline-adjustment-row:nth-child(even){
    background:#fbfdfe;
}

.timeline-adjustment-row.phase-start{
    border-top:3px solid #d8ebee;
    background:#f5fafb;
}

.timeline-adjustment-row.phase-start:first-child{
    border-top:0;
}

.timeline-adjustment-row label{
    color:#61767f;
}

.timeline-adjustment-row .btn{
    min-height:38px;
    align-self:end;
}

@media(max-width:950px){
    .polished-workflow{
        grid-template-columns:1fr;
    }

    .timeline-workflow-form{
        width:100%;
    }

    .polished-timeline-toolbar{
        align-items:stretch;
        flex-direction:column;
    }

    .timeline-toolbar-actions{
        justify-content:flex-end;
    }
}

@media(max-width:650px){
    .timeline-workflow-form{
        grid-template-columns:1fr;
    }

    .timeline-toolbar-actions{
        align-items:stretch;
        flex-direction:column;
    }

    .timeline-edit-btn,
    .timeline-settings-btn{
        width:100%;
    }
}


/* =========================================================
   Project Timeline Layout Polish V2
   ========================================================= */

/* Make the toolbar read as one control strip */
.polished-timeline-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.timeline-toolbar-actions{
    display:flex;
    flex-direction:row !important;
    align-items:center !important;
    gap:8px;
}

.timeline-edit-btn,
.timeline-settings-btn{
    height:40px;
    min-height:40px;
    padding:0 15px;
}

.timeline-settings-btn{
    min-width:126px;
}

/* Workflow card. Less empty space, stronger hierarchy */
.polished-workflow{
    padding:16px 18px;
    border-left:0;
    border-top:4px solid #9ecbd3;
    background:#fff;
}

.timeline-workflow-copy{
    min-width:0;
}

.timeline-workflow-copy p{
    max-width:660px;
    line-height:1.45;
}

.timeline-workflow-form{
    grid-template-columns:190px 138px !important;
}

.timeline-workflow-form .btn{
    width:138px;
}

/* Adjust Schedule header */
.timeline-adjustments{
    overflow:hidden;
    border:1px solid #d5e3e7;
    box-shadow:0 10px 28px rgba(6,40,63,.055);
}

.timeline-adjustments > summary{
    min-height:70px;
    background:linear-gradient(90deg,#f5fbfc,#fff);
    border-bottom:0;
}

.timeline-adjustments[open] > summary{
    border-bottom:1px solid #dbe7ea;
}

.timeline-adjustments > summary > div{
    align-items:center;
}

.timeline-adjustments > summary strong{
    color:var(--navy);
    font-size:16px;
}

.timeline-adjustments > summary .muted{
    color:#6d828a;
}

/* Real phase bands inside the editor */
.timeline-adjustment-phase{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:44px;
    padding:9px 16px;
    border-top:1px solid #d4e5e8;
    border-bottom:1px solid #dce9ec;
    background:linear-gradient(90deg,#eaf7f9,#f8fbfc 72%);
}

.timeline-adjustment-phase:first-child{
    border-top:0;
}

.timeline-adjustment-phase-number{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:32px;
    height:26px;
    padding:0 7px;
    border-radius:7px;
    background:var(--cyan);
    color:#fff;
    font-size:12px;
    font-weight:900;
}

.timeline-adjustment-phase strong{
    color:var(--navy);
    font-size:13px;
    font-weight:900;
}

/* Compact task rows */
.timeline-adjustment-row{
    display:grid;
    grid-template-columns:minmax(260px,1fr) 150px 150px 78px;
    gap:12px;
    align-items:center;
    min-height:72px;
    padding:10px 16px;
    border-bottom:1px solid #edf2f4;
    background:#fff;
}

.timeline-adjustment-row:nth-of-type(even){
    background:#fbfdfe;
}

.timeline-adjustment-row:hover{
    background:#f5fbfc;
}

.timeline-adjustment-task strong{
    display:block;
    color:var(--navy);
    font-size:13px;
    line-height:1.3;
}

.timeline-adjustment-task small{
    display:block;
    margin-top:5px;
    min-height:17px;
}

.manual-adjusted-badge{
    display:inline-flex;
    padding:3px 7px;
    border-radius:999px;
    background:#fff0d9;
    color:#a45118;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.timeline-adjustment-row label{
    display:grid;
    gap:4px;
    margin:0;
    color:#627982;
    font-size:12px;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.timeline-adjustment-row input{
    min-height:40px;
    margin:0;
    padding:8px 10px;
    font-size:12px;
}

.timeline-save-date{
    width:78px;
    min-width:78px;
    height:40px;
    min-height:40px;
    padding:0 10px;
}

/* Stronger meaning in summary cards */
.polished-summary .timeline-summary-item small{
    margin-top:6px;
    line-height:1.25;
    font-weight:750;
}

.polished-summary .timeline-risk strong,
.polished-summary .timeline-risk small{
    color:#a45118 !important;
}

.polished-summary .timeline-cushion strong,
.polished-summary .timeline-cushion small{
    color:#28763a !important;
}

@media(max-width:900px){
    .timeline-adjustment-row{
        grid-template-columns:minmax(220px,1fr) 145px 145px 72px;
    }
}

@media(max-width:760px){
    .polished-timeline-toolbar{
        align-items:stretch;
        flex-direction:column;
    }

    .timeline-toolbar-actions{
        width:100%;
    }

    .timeline-edit-btn,
    .timeline-settings-btn{
        flex:1;
    }

    .timeline-adjustment-row{
        grid-template-columns:1fr 1fr;
        gap:10px;
    }

    .timeline-adjustment-task{
        grid-column:1/-1;
    }

    .timeline-save-date{
        width:100%;
        min-width:0;
    }
}


/* Project Dates + Working Phase Edit */
.timeline-date-settings{position:relative}
.timeline-settings-btn{appearance:none;cursor:pointer}
.timeline-settings-btn[aria-expanded="true"]{background:#eaf7f9!important;border-color:#9fd5dd!important;color:#08788c!important}
.timeline-date-panel{
    position:absolute;z-index:40;top:48px;right:0;width:380px;padding:16px;
    border:1px solid #d3e2e6;border-radius:12px;background:#fff;
    box-shadow:0 18px 48px rgba(6,40,63,.16)
}
.timeline-date-panel[hidden]{display:none}
.timeline-date-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;margin-bottom:13px;border-bottom:1px solid #e6eef0}
.timeline-date-panel-head strong{display:block;margin-top:2px;color:var(--navy);font-size:15px}
.timeline-date-close{
    display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;
    border:1px solid #d6e3e6;border-radius:8px;background:#f7fafb;color:var(--navy);cursor:pointer;font-size:20px;line-height:1
}
.timeline-date-panel form{display:grid;gap:12px}
.timeline-date-panel label{display:grid;gap:5px;color:#61767f;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.timeline-date-panel input{min-height:42px}
.timeline-date-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:3px}
.timeline-phase-edit{
    display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:30px;margin-left:8px;padding:0 10px;
    border:1px solid #aad8df;border-radius:7px;background:#eef9fb;color:#08788c;cursor:pointer;
    font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em
}
.timeline-phase-edit:hover{background:#dff4f7;border-color:#72c3cf}
.timeline-adjustment-phase{scroll-margin-top:18px}
@media(max-width:650px){
    .timeline-date-settings{width:100%}
    .timeline-date-panel{position:static;width:auto;margin-top:7px}
    .timeline-phase-edit{min-width:46px;padding:0 7px}
}


/* =========================================================
   Timeline Button Polish
   ========================================================= */

/* Schedule Editor Save buttons */
.timeline-save-date{
    background:#2f8a4c !important;
    border-color:#2f8a4c !important;
    color:#fff !important;
    border-radius:8px !important;
}

.timeline-save-date:hover{
    background:#287a42 !important;
    border-color:#287a42 !important;
    color:#fff !important;
}

/* Working Timeline phase Edit buttons */
.timeline-phase-edit{
    min-width:58px;
    height:34px;
    padding:0 12px;
    border:1px solid #e2b84f !important;
    border-radius:8px !important;
    background:#f5c95a !important;
    color:#182852 !important;
    font-size:12px;
    font-weight:900;
    line-height:1;
}

.timeline-phase-edit:hover{
    background:#eabd4d !important;
    border-color:#d9aa38 !important;
    color:#182852 !important;
}

/* Timeline Workflow Update Status */
.timeline-workflow-form .btn{
    width:auto !important;
    min-width:138px;
    padding-left:16px;
    padding-right:16px;
    border-radius:8px;
    white-space:nowrap;
    line-height:1;
}


/* =========================================================
   Timeline Approval + Activity
   ========================================================= */

.timeline-workflow-actions{
    display:flex;
    align-items:flex-end;
    justify-content:flex-end;
    gap:9px;
    flex-wrap:wrap;
}

.timeline-workflow-actions form{margin:0}

.timeline-workflow-action-btn{
    min-height:42px;
    padding:0 16px;
    border-radius:8px;
    white-space:nowrap;
    line-height:1;
}

.timeline-approval-form{
    display:flex;
    align-items:flex-end;
    gap:9px;
}

.timeline-approval-form label{
    display:grid;
    gap:5px;
    min-width:230px;
    margin:0;
}

.timeline-approval-form label>span{
    color:#61767f;
    font-size:12px;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.timeline-approval-form select{
    min-height:42px;
    margin:0;
}

.timeline-approve-btn{
    background:#2f8a4c!important;
    border-color:#2f8a4c!important;
    color:#fff!important;
}

.timeline-approve-btn:hover{
    background:#287a42!important;
    border-color:#287a42!important;
}

.timeline-adjusted-badge{
    display:inline-flex;
    align-items:center;
    margin-left:7px;
    padding:2px 6px;
    border-radius:999px;
    background:#fff0d9;
    color:#a45118;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
    vertical-align:middle;
}

.timeline-row.adjusted .timeline-task-cell{
    background:#fffaf2;
    box-shadow:inset 3px 0 0 #e4b64f;
}

.timeline-activity{
    margin-top:18px;
    overflow:hidden;
}

.timeline-activity>summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:15px 18px;
    cursor:pointer;
    list-style:none;
    background:#f8fbfc;
}

.timeline-activity>summary::-webkit-details-marker{display:none}

.timeline-activity-list{
    border-top:1px solid #e3ecef;
}

.timeline-activity-row{
    display:grid;
    grid-template-columns:14px 1fr;
    gap:10px;
    align-items:start;
    padding:12px 18px;
    border-bottom:1px solid #edf2f4;
}

.timeline-activity-row:last-child{border-bottom:0}

.timeline-activity-dot{
    width:8px;
    height:8px;
    margin-top:5px;
    border-radius:50%;
    background:var(--cyan);
}

.timeline-activity-row strong,
.timeline-activity-row small{
    display:block;
}

.timeline-activity-row strong{
    color:var(--navy);
    font-size:12px;
}

.timeline-activity-row small{
    margin-top:3px;
    color:var(--muted);
    font-size:12px;
}

.timeline-activity-empty{
    padding:18px;
    color:var(--muted);
    font-size:12px;
}

@media(max-width:760px){
    .timeline-workflow-actions,
    .timeline-approval-form{
        width:100%;
        align-items:stretch;
        flex-direction:column;
    }
    .timeline-approval-form label{min-width:0}
    .timeline-workflow-action-btn{width:100%}
}


/* Multi-Approver Timeline Approval */
.timeline-multi-approval-form{display:flex;align-items:flex-end;gap:12px;margin:0}
.timeline-approver-picker{min-width:310px}
.timeline-approver-label{display:block;margin-bottom:6px;color:#61767f;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.timeline-approver-options{display:flex;flex-wrap:wrap;gap:6px;max-width:520px}
.timeline-approver-option{position:relative;margin:0;cursor:pointer}
.timeline-approver-option input{position:absolute;opacity:0;pointer-events:none}
.timeline-approver-option span{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border:1px solid #d4e2e5;border-radius:8px;background:#f8fbfc;color:#526a74;font-size:12px;font-weight:800;transition:.12s ease}
.timeline-approver-option input:checked+span{border-color:#79c4cf;background:#e7f7f9;color:#08788c;box-shadow:inset 0 0 0 1px rgba(15,169,195,.08)}
.timeline-approver-option input:focus-visible+span{outline:2px solid var(--cyan);outline-offset:2px}
.timeline-approval-status-list{display:grid;gap:6px;min-width:280px}
.timeline-approval-status-row{display:grid;grid-template-columns:minmax(120px,1fr) auto auto;gap:8px;align-items:center;min-height:34px;padding:6px 9px;border:1px solid #e0e9eb;border-radius:8px;background:#fafcfd}
.timeline-approval-person{color:var(--navy);font-size:12px;font-weight:850}
.timeline-approval-status-row small{color:var(--muted);font-size:12px;white-space:nowrap}
.timeline-review-pill{display:inline-flex;align-items:center;justify-content:center;min-width:66px;padding:4px 7px;border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.timeline-review-pill.pending{background:#fff2dc;color:#a45118}
.timeline-review-pill.approved{background:#e8f6ec;color:#28763a}
.timeline-approval-status-list.approved-list .timeline-approval-status-row{border-color:#d3e8d9;background:#f6fbf7}
@media(max-width:900px){
    .timeline-multi-approval-form{width:100%;align-items:stretch;flex-direction:column}
    .timeline-approver-picker{min-width:0}
    .timeline-approval-status-list{width:100%;min-width:0}
}
@media(max-width:600px){
    .timeline-approval-status-row{grid-template-columns:1fr auto}
    .timeline-approval-status-row small{grid-column:1/-1}
}


/* =========================================================
   Required Approvers - Scalable Selection UI
   ========================================================= */

.timeline-multi-approval-form{
    display:grid;
    grid-template-columns:minmax(420px,1fr) auto;
    gap:18px;
    align-items:end;
    width:min(680px,100%);
}

.timeline-approver-picker{
    min-width:0;
    padding:12px;
    border:1px solid #d8e6e9;
    border-radius:12px;
    background:#f9fcfd;
}

.timeline-approver-picker-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:10px;
}

.timeline-approver-picker-head small{
    display:block;
    margin-top:3px;
    color:var(--muted);
    font-size:12px;
    line-height:1.35;
}

.timeline-approver-count{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:4px 8px;
    border-radius:999px;
    background:#e7f7f9;
    color:#08788c;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.timeline-approver-options{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    max-height:220px;
    padding-right:3px;
    overflow-y:auto;
    scrollbar-width:thin;
}

.timeline-approver-option{
    position:relative;
    margin:0;
    cursor:pointer;
}

.timeline-approver-option input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.timeline-approver-card{
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) 22px;
    gap:9px;
    align-items:center;
    min-height:48px !important;
    padding:7px 9px !important;
    border:1px solid #dbe6e9 !important;
    border-radius:9px !important;
    background:#fff !important;
    color:var(--navy) !important;
    transition:border-color .12s ease,background .12s ease,box-shadow .12s ease,transform .12s ease;
}

.timeline-approver-card:hover{
    border-color:#add5dc !important;
    box-shadow:0 3px 10px rgba(6,40,63,.06);
}

.timeline-approver-avatar{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:#e9f5f7;
    color:#08788c;
    font-size:12px;
    font-weight:900;
    letter-spacing:.02em;
}

.timeline-approver-name{
    min-width:0;
    overflow:hidden;
    color:var(--navy);
    font-size:12px;
    font-weight:850;
    white-space:nowrap;
    text-overflow:ellipsis;
}

.timeline-approver-check{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:20px;
    height:20px;
    border:1px solid #cbdadd;
    border-radius:6px;
    background:#fff;
    color:transparent;
    font-size:12px;
    font-weight:900;
}

.timeline-approver-option input:checked + .timeline-approver-card{
    border-color:#71c2ce !important;
    background:#effafb !important;
    box-shadow:inset 0 0 0 1px rgba(15,169,195,.08);
}

.timeline-approver-option input:checked + .timeline-approver-card .timeline-approver-check{
    border-color:var(--cyan);
    background:var(--cyan);
    color:#fff;
}

.timeline-approver-option input:checked + .timeline-approver-card .timeline-approver-avatar{
    background:#d9f2f5;
}

.timeline-approval-submit{
    display:flex;
    align-items:flex-end;
}

.timeline-approval-submit .btn{
    min-width:164px;
}

@media(max-width:980px){
    .timeline-multi-approval-form{
        grid-template-columns:1fr;
        width:100%;
    }

    .timeline-approval-submit{
        justify-content:flex-end;
    }
}

@media(max-width:620px){
    .timeline-approver-options{
        grid-template-columns:1fr;
        max-height:260px;
    }

    .timeline-approver-picker-head{
        align-items:flex-start;
        flex-direction:column;
    }

    .timeline-approval-submit .btn{
        width:100%;
    }
}


/* =========================================================
   Required Approvers Header / Counter Spacing Fix
   ========================================================= */

.timeline-approver-picker-head{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:
        "title count"
        "help  count";
    column-gap:18px;
    row-gap:4px;
    align-items:start !important;
    margin-bottom:14px !important;
}

.timeline-approver-picker-head>div{
    display:contents;
}

.timeline-approver-label{
    grid-area:title;
    display:block !important;
    margin:0 !important;
    color:var(--navy);
    font-size:12px;
    font-weight:900;
    line-height:1.25;
}

.timeline-approver-picker-head small{
    grid-area:help;
    display:block !important;
    margin:0 !important;
    max-width:470px;
    color:var(--muted);
    font-size:12px;
    line-height:1.45;
}

.timeline-approver-count{
    grid-area:count;
    align-self:center;
    min-width:76px;
    min-height:28px;
    justify-content:center;
    margin:0;
    padding:5px 10px;
    border:1px solid #b9dfe5;
    background:#e7f7f9;
    color:#08788c;
    font-size:12px;
    font-weight:900;
    text-align:center;
}

.timeline-approver-options{
    padding-top:2px;
    border-top:1px solid #e3ecef;
    padding-top:11px;
}

@media(max-width:620px){
    .timeline-approver-picker-head{
        grid-template-columns:1fr auto;
        grid-template-areas:
            "title count"
            "help help";
        column-gap:10px;
        row-gap:6px;
    }

    .timeline-approver-count{
        align-self:start;
    }
}


/* =========================================================
   Required Approvers - Header Submit Layout
   ========================================================= */

.polished-workflow{
    grid-template-columns:minmax(320px,.8fr) minmax(600px,1.35fr);
}

.timeline-multi-approval-form{
    display:block !important;
    width:100% !important;
    max-width:none !important;
}

.timeline-approver-picker{
    width:100%;
}

.timeline-approver-picker-head{
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-template-areas:
        "title actions"
        "help actions" !important;
    column-gap:22px !important;
}

.timeline-approver-head-actions{
    grid-area:actions;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
    align-self:center;
}

.timeline-approver-count{
    grid-area:auto !important;
    min-width:78px;
}

.timeline-submit-approval{
    min-width:158px;
    height:40px;
    min-height:40px;
    padding:0 15px;
}

.timeline-approver-options{
    grid-template-columns:repeat(2,minmax(180px,1fr));
    max-width:none !important;
}

.timeline-approval-submit{
    display:none !important;
}

@media(max-width:1050px){
    .polished-workflow{
        grid-template-columns:1fr;
    }
}

@media(max-width:720px){
    .timeline-approver-picker-head{
        grid-template-columns:1fr !important;
        grid-template-areas:
            "title"
            "help"
            "actions" !important;
        row-gap:7px !important;
    }

    .timeline-approver-head-actions{
        justify-content:space-between;
        width:100%;
        padding-top:4px;
    }
}

@media(max-width:620px){
    .timeline-approver-head-actions{
        align-items:stretch;
        flex-direction:column;
    }

    .timeline-approver-count,
    .timeline-submit-approval{
        width:100%;
    }
}


/* Required Approvers - Full Width Submit Footer */
.timeline-approver-head-actions{
    align-self:start !important;
}

.timeline-approver-submit-row{
    margin-top:11px;
    padding-top:11px;
    border-top:1px solid #e3ecef;
}

.timeline-approver-submit-row .timeline-submit-approval{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-width:0;
    height:42px;
    min-height:42px;
    margin:0;
}

@media(max-width:720px){
    .timeline-approver-head-actions{
        width:auto !important;
        padding-top:0 !important;
    }
}

@media(max-width:620px){
    .timeline-approver-head-actions{
        flex-direction:row !important;
    }
}


/* Required Approvers - Submit Spacing + True Full Width */
.timeline-approver-submit-row{
    display:block !important;
    width:100% !important;
    box-sizing:border-box;
    margin-top:16px !important;
    padding-top:14px !important;
    border-top:1px solid #e3ecef;
}

.timeline-approver-submit-row .timeline-submit-approval{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box;
    margin:0 !important;
}


/* =========================================================
   Estimate Records - Delivery + Audit
   ========================================================= */
.estimate-records-section{
    margin-top:28px;
    padding:18px;
    border:1px solid #dce7ea;
    border-radius:14px;
    background:#f7fafb;
    box-shadow:0 6px 18px rgba(24,40,82,.04);
}
.estimate-records-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    padding:2px 2px 14px;
}
.estimate-records-heading h2{
    margin:2px 0 4px;
    color:var(--navy);
    font-size:18px;
}
.estimate-records-heading p{
    margin:0;
    color:var(--muted);
    font-size:12px;
    line-height:1.45;
}
.estimate-records-note{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    min-height:28px;
    padding:5px 9px;
    border:1px solid #d5e2e5;
    border-radius:999px;
    background:#fff;
    color:#6b7d85;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
    white-space:nowrap;
}
.estimate-records-list{display:grid;gap:8px}
.estimate-record-item{
    margin:0!important;
    overflow:hidden;
    border:1px solid #dce7ea;
    border-radius:10px;
    background:#fff;
}
.estimate-record-item>summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    min-height:64px;
    padding:11px 14px;
    cursor:pointer;
    list-style:none;
    user-select:none;
}
.estimate-record-item>summary::-webkit-details-marker{display:none}
.estimate-record-item>summary:hover{background:#fbfdfe}
.estimate-record-item>summary>div{min-width:0}
.estimate-record-item>summary strong{
    display:block;
    margin-top:1px;
    color:var(--navy);
    font-size:13px;
}
.estimate-record-item>summary .muted{
    display:block;
    margin-top:2px;
    font-size:12px;
}
.estimate-record-meta{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    gap:10px;
    color:#687c84;
    font-size:12px;
    font-weight:850;
    white-space:nowrap;
}
.estimate-record-chevron{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:26px;
    height:26px;
    border:1px solid #d9e5e8;
    border-radius:7px;
    background:#f8fbfc;
    color:var(--navy);
    font-size:14px;
    transition:transform .15s ease;
}
.estimate-record-item[open] .estimate-record-chevron{transform:rotate(180deg)}
.estimate-record-body{
    padding:14px;
    border-top:1px solid #e5edef;
    background:#fff;
}
.estimate-record-body .email-history-list,
.estimate-record-body .revision-list{margin:0}
@media(max-width:680px){
    .estimate-records-heading{flex-direction:column;gap:9px}
    .estimate-record-item>summary{align-items:flex-start}
    .estimate-record-meta{padding-top:2px}
}

/* =========================================================
   Website Discovery V1
   ========================================================= */
.discovery-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:6px 0 22px;padding:26px 28px;border:1px solid #cfe3e7;border-radius:18px;background:linear-gradient(135deg,#f7fcfd,#e9f7f8);box-shadow:0 10px 28px rgba(6,40,63,.05)}
.discovery-hero h1{margin:4px 0 8px;font-size:34px;color:var(--navy)}
.discovery-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.55}
.discovery-queue-callout{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding:13px 16px;border:1px solid #d9e7ea;border-radius:12px;background:#fff}
.discovery-queue-callout>div{display:flex;align-items:center;gap:10px}.discovery-queue-callout strong{font-size:24px;color:var(--navy)}.discovery-queue-callout p{margin:0;color:var(--muted);font-size:12px}
.discovery-list-card{overflow:hidden}.discovery-table-wrap{overflow:auto}.discovery-table .muted{font-size:12px;margin-top:3px}
.discovery-status{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;background:#edf3f5;color:#657b84;white-space:nowrap}
.discovery-status.submitted{background:#e7f7f9;color:#08788c}.discovery-status.review{background:#e8effb;color:#315f9c}.discovery-status.clarification{background:#fff0d9;color:#a45118}.discovery-status.complete{background:#e8f6ec;color:#28763a}
.discovery-start-card{max-width:900px;margin:0 auto}.discovery-start-note{display:flex;gap:12px;margin:8px 0 18px;padding:12px 14px;border:1px solid #d9e7ea;border-radius:10px;background:#f7fbfc}.discovery-start-note strong{white-space:nowrap;color:var(--navy)}.discovery-start-note span{color:var(--muted);font-size:12px;line-height:1.45}
.discovery-title .discovery-status{margin-left:7px;vertical-align:middle}
.discovery-clarification{margin-bottom:18px;padding:16px 18px;border:1px solid #efc997;border-radius:12px;background:#fff8ef}.discovery-clarification strong{display:block;margin-top:3px;color:#8e4715}.discovery-clarification p{margin:7px 0 0;color:#78533b;line-height:1.5}
.discovery-shell{display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px;align-items:start}.discovery-nav{position:sticky;top:18px;padding:12px;border:1px solid #dbe7ea;border-radius:12px;background:#fff;box-shadow:0 7px 18px rgba(6,40,63,.04)}.discovery-nav-title{padding:7px 9px 10px;color:#6b7e86;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.discovery-nav a{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;padding:8px 9px;border-radius:8px;color:var(--navy);font-size:12px;font-weight:800;text-decoration:none}.discovery-nav a:hover{background:#eff8fa}.discovery-nav a span{display:flex;align-items:center;justify-content:center;width:26px;height:22px;border-radius:6px;background:#edf7f8;color:#08788c;font-size:12px}
.discovery-content{min-width:0}.discovery-core-card{margin-bottom:16px}.discovery-section{scroll-margin-top:18px;margin-bottom:16px}.discovery-section-head{padding-bottom:14px;margin-bottom:2px;border-bottom:1px solid #e6eef0}.discovery-section-head h2{margin:3px 0 5px}.discovery-section-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.discovery-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.discovery-field{position:relative}.discovery-field>label{display:block;margin-bottom:5px}.discovery-field textarea{resize:vertical}.discovery-field[hidden]{display:none}.web-review-field{padding:11px;border:1px solid #ead8b8;border-radius:10px;background:#fffaf3}.web-review-note{position:absolute;top:8px;right:9px;padding:3px 6px;border-radius:999px;background:#fff0d9;color:#a45118;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.web-review-field>label{padding-right:108px}
.discovery-integrations{grid-column:1/-1;margin-top:6px;padding-top:16px;border-top:1px solid #e4ecef}.discovery-subhead{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}.discovery-subhead h3{margin:0;color:var(--navy)}.discovery-subhead p{margin:3px 0 0;color:var(--muted);font-size:12px}.discovery-integration-row{display:grid;grid-template-columns:1fr 1.2fr 1.5fr .85fr .85fr 1fr 34px;gap:7px;align-items:start;margin-bottom:7px}.discovery-integration-row textarea{min-height:42px}.remove-discovery-integration{display:flex;align-items:center;justify-content:center;width:34px;height:42px;border:1px solid #e4c5c5;border-radius:8px;background:#fff7f7;color:#aa4444;cursor:pointer;font-size:18px}.discovery-form-actions{position:sticky;bottom:12px;display:flex;justify-content:flex-end;gap:9px;margin:18px 0 28px;padding:11px;border:1px solid #d9e5e8;border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 10px 30px rgba(6,40,63,.12);backdrop-filter:blur(8px)}
.discovery-review-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.discovery-review-summary>div{padding:13px 15px;border:1px solid #dbe7ea;border-radius:10px;background:#fff}.discovery-review-summary strong{display:block;margin-top:4px;color:var(--navy)}
.discovery-review-grid{display:grid;gap:16px}.discovery-review-section{margin:0}.discovery-review-fields{display:grid;gap:8px}.discovery-review-field{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(220px,1fr) minmax(220px,1fr);gap:12px;align-items:start;padding:10px 0;border-bottom:1px solid #edf2f4}.discovery-review-field:last-child{border-bottom:0}.discovery-review-field.risk{margin:0 -8px;padding:10px 8px;border:1px solid #edd7b4;border-radius:8px;background:#fffaf3}.discovery-review-label strong{display:block;color:var(--navy);font-size:12px}.discovery-review-label span{display:inline-flex;margin-top:5px;padding:3px 6px;border-radius:999px;background:#fff0d9;color:#a45118;font-size:12px;font-weight:900;text-transform:uppercase}.discovery-sales-value>span,.discovery-review-field label>span{display:block;margin-bottom:4px;color:#75878e;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.discovery-sales-value>div{min-height:42px;padding:9px 10px;border:1px solid #e1e9eb;border-radius:8px;background:#f8fbfc;color:#425b65;font-size:12px;line-height:1.4}.discovery-sales-value em{color:#9aa7ac}.discovery-review-actions{display:flex;justify-content:flex-end;margin-top:12px}
.discovery-review-integrations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.discovery-review-integrations>div{padding:12px;border:1px solid #dde8eb;border-radius:9px;background:#f9fcfd}.discovery-review-integrations strong,.discovery-review-integrations span,.discovery-review-integrations small{display:block}.discovery-review-integrations span{margin-top:3px;color:#08788c;font-size:12px}.discovery-review-integrations p{margin:7px 0;color:#536a73;font-size:12px}.discovery-review-integrations small{color:var(--muted);font-size:12px}
.discovery-handoff-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.discovery-handoff-actions .card{margin:0}.clarification-card{border-color:#edd6b5;background:#fffaf4}.clarification-card textarea{width:100%;margin:8px 0}.create-estimate-card{border-color:#cfe3d5;background:#f7fbf8}.create-estimate-card p{color:var(--muted);font-size:12px;line-height:1.5}
.discovery-activity{margin-top:18px}.discovery-activity>summary{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer}.discovery-activity>div{border-top:1px solid #e5edef}.discovery-activity-row{padding:10px 16px;border-bottom:1px solid #edf2f4}.discovery-activity-row strong,.discovery-activity-row small{display:block}.discovery-activity-row strong{font-size:12px;color:var(--navy)}.discovery-activity-row small{margin-top:3px;color:var(--muted);font-size:12px}
@media(max-width:1100px){.discovery-integration-row{grid-template-columns:1fr 1fr 1.5fr}.discovery-integration-row .remove-discovery-integration{grid-column:3;justify-self:end}.discovery-review-field{grid-template-columns:1fr 1fr}.discovery-review-label{grid-column:1/-1}}
@media(max-width:850px){.discovery-shell{grid-template-columns:1fr}.discovery-nav{position:static;display:flex;gap:5px;overflow:auto}.discovery-nav-title{display:none}.discovery-nav a{flex:0 0 auto}.discovery-fields{grid-template-columns:1fr}.discovery-review-summary{grid-template-columns:1fr 1fr}.discovery-review-integrations,.discovery-handoff-actions{grid-template-columns:1fr}.discovery-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.discovery-review-field{grid-template-columns:1fr}.discovery-review-summary{grid-template-columns:1fr}.discovery-integration-row{grid-template-columns:1fr}.discovery-integration-row .remove-discovery-integration{grid-column:auto;justify-self:end}.discovery-form-actions{position:static;flex-direction:column}.discovery-form-actions .btn{width:100%}}

/* =========================================================
   Sales Discovery V2 - Form + Review UX
   ========================================================= */

.discovery-title{align-items:flex-start}
.discovery-title p,.discovery-review-title p{max-width:760px}

.discovery-sticky-actions,
.discovery-review-sticky{
    position:sticky;
    top:10px;
    z-index:30;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:0 0 18px 230px;
    padding:11px 13px;
    border:1px solid #cfe2e6;
    border-radius:12px;
    background:rgba(255,255,255,.97);
    box-shadow:0 10px 28px rgba(6,40,63,.12);
    backdrop-filter:blur(10px);
}
.discovery-review-sticky{margin-left:0}
.discovery-sticky-actions>div:first-child,
.discovery-review-sticky>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;min-width:0}
.discovery-sticky-actions .save-state-dot,
.discovery-review-sticky .save-state-dot{grid-row:1/3;width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(15,169,195,.12)}
.discovery-sticky-actions strong,
.discovery-review-sticky strong{color:var(--navy);font-size:12px;line-height:1.2}
.discovery-sticky-actions small,
.discovery-review-sticky small{color:var(--muted);font-size:12px;line-height:1.35}
.discovery-sticky-buttons,
.discovery-review-sticky>div:last-child{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.discovery-sticky-actions .btn,
.discovery-review-sticky .btn{min-height:38px;white-space:nowrap}

.discovery-shell{grid-template-columns:210px minmax(0,1fr);gap:20px}
.discovery-nav{top:84px}
.discovery-content{min-width:0}
.discovery-core-card,.discovery-section{padding:20px 22px;margin-bottom:18px}
.discovery-section{scroll-margin-top:82px}
.discovery-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0 0 15px;margin:0 0 17px;border-bottom:1px solid #e2ecee}
.discovery-section-head h2{margin:3px 0 6px;font-size:20px;line-height:1.2}
.discovery-section-head p{max-width:760px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}

.discovery-core-grid,
.discovery-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin:0}
.discovery-question-card{
    position:relative;
    min-width:0;
    padding:14px;
    border:1px solid #dce7ea;
    border-radius:11px;
    background:#fbfdfe;
}
.discovery-question-card:focus-within{border-color:#a6d5dd;box-shadow:0 0 0 3px rgba(15,169,195,.07)}
.discovery-question-wide{grid-column:1/-1}
.discovery-question-prominent{border-color:#a8d9df;background:#f1fafb}
.discovery-question-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:9px}
.discovery-question-card>label,
.discovery-question-head>label{display:block;margin:0;color:var(--navy);font-size:12px;font-weight:900;line-height:1.35}
.discovery-question-card input[type=text],
.discovery-question-card input[type=number],
.discovery-question-card input[type=date],
.discovery-question-card input[type=url],
.discovery-question-card select,
.discovery-question-card textarea{width:100%;margin:0;background:#fff}
.discovery-question-card textarea{resize:vertical;min-height:88px}
.discovery-question-card .field-help{margin-top:7px;color:#72848b;font-size:12px;line-height:1.45}
.required-mark{display:inline-flex;align-items:center;margin-left:5px;padding:2px 5px;border-radius:999px;background:#e8f6f8;color:#08788c;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;vertical-align:middle}
.web-review-field{padding:14px;border-color:#ead8b8;background:#fffaf3}
.web-review-note{position:static;flex:0 0 auto;padding:3px 6px;border-radius:999px;background:#fff0d9;color:#a45118;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.web-review-field>label{padding-right:0}

.discovery-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.discovery-choice-grid:has(.discovery-choice:nth-child(5)){grid-template-columns:repeat(3,minmax(0,1fr))}
.discovery-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.discovery-choice{position:relative;margin:0;cursor:pointer}
.discovery-choice input{position:absolute;opacity:0;pointer-events:none}
.discovery-choice span{display:flex;align-items:center;min-height:40px;padding:8px 10px;border:1px solid #d8e4e7;border-radius:8px;background:#fff;color:#4d6570;font-size:12px;font-weight:800;line-height:1.3;transition:.12s ease}
.discovery-choice span:before{content:"";flex:0 0 auto;width:14px;height:14px;margin-right:8px;border:1px solid #b9cbd0;border-radius:50%;background:#fff}
.discovery-checkbox-grid .discovery-choice span:before{border-radius:4px}
.discovery-choice input:checked+span{border-color:#75c4cf;background:#ecf9fb;color:#082f49;box-shadow:inset 0 0 0 1px rgba(15,169,195,.08)}
.discovery-choice input:checked+span:before{border:4px solid var(--cyan)}
.discovery-checkbox-grid .discovery-choice input:checked+span:before{border:1px solid var(--cyan);background:var(--cyan);box-shadow:inset 0 0 0 3px #fff}
.discovery-choice input:focus-visible+span{outline:2px solid var(--cyan);outline-offset:2px}
.discovery-choice input:disabled+span{cursor:not-allowed;opacity:.72}

.discovery-integrations{grid-column:1/-1;margin-top:3px;padding-top:19px;border-top:1px solid #dfeaec}
.discovery-subhead{align-items:flex-start;margin-bottom:13px}
.discovery-subhead .eyebrow{margin-bottom:3px}
.discovery-subhead h3{font-size:16px}
.discovery-subhead p{max-width:720px;font-size:12px;line-height:1.45}
.discovery-integration-list{display:grid;gap:12px}
.discovery-integration-card{overflow:hidden;border:1px solid #d9e6e9;border-radius:12px;background:#fff;box-shadow:0 5px 15px rgba(6,40,63,.035)}
.discovery-integration-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #e4edef;background:#f6fafb}
.discovery-integration-head>div{display:flex;align-items:center;gap:9px;min-width:0}
.discovery-integration-head>div>span{display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:25px;padding:0 7px;border-radius:7px;background:#e5f5f7;color:#08788c;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.discovery-integration-head strong{overflow:hidden;color:var(--navy);font-size:12px;white-space:nowrap;text-overflow:ellipsis}
.discovery-integration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:13px}
.discovery-integration-grid label{display:grid;gap:5px;margin:0}
.discovery-integration-grid label>span{color:#62777f;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.discovery-integration-grid .integration-purpose{grid-column:1/-1}
.discovery-integration-grid textarea{min-height:76px;resize:vertical}
.remove-discovery-integration{width:30px;height:30px;border-radius:7px}

.discovery-form-actions{position:static;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 28px;padding:15px 16px;border:1px solid #d8e5e8;border-radius:12px;background:#f8fbfc;box-shadow:none;backdrop-filter:none}
.discovery-form-actions>div:first-child{display:flex;flex-direction:column;gap:3px}
.discovery-form-actions strong{color:var(--navy);font-size:12px}
.discovery-form-actions span{color:var(--muted);font-size:12px}
.discovery-form-actions>div:last-child{display:flex;gap:8px;flex:0 0 auto}

/* Review */
.discovery-review-summary{gap:12px;margin-bottom:16px}
.discovery-review-summary>div{min-height:76px;padding:13px 15px;border-radius:11px;box-shadow:0 5px 14px rgba(6,40,63,.025)}
.discovery-review-grid{display:grid;gap:11px}
.discovery-review-section{margin:0;padding:0;overflow:hidden}
.discovery-review-section>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:67px;padding:13px 16px;cursor:pointer;list-style:none;background:#fbfdfe}
.discovery-review-section>summary::-webkit-details-marker{display:none}
.discovery-review-section[open]>summary{border-bottom:1px solid #e3ecee;background:#f6fbfc}
.discovery-review-section>summary strong{display:block;margin-top:2px;color:var(--navy);font-size:13px}
.review-section-meta{display:flex;align-items:center;gap:9px;color:#74868d;font-size:12px;font-weight:800;white-space:nowrap}
.review-change-count{padding:4px 7px;border-radius:999px;background:#fff0d9;color:#a45118;font-weight:900;text-transform:uppercase}
.discovery-review-section[open] .chevron{transform:rotate(180deg)}
.discovery-review-fields{display:grid;gap:0;padding:3px 16px 10px}
.discovery-review-field{grid-template-columns:minmax(170px,.7fr) minmax(210px,1fr) minmax(230px,1fr);gap:13px;padding:12px 0}
.discovery-review-field.risk{margin:4px -7px;padding:12px 7px}
.discovery-review-field.adjusted{border-left:3px solid #e4b64f;padding-left:10px;background:linear-gradient(90deg,#fffaf2,transparent 72%)}
.discovery-review-field.risk.adjusted{border-left:3px solid #e4b64f}
.discovery-review-label{padding-top:3px}
.discovery-review-label strong{font-size:12px;line-height:1.35}
.discovery-review-label span{margin-right:4px}
.adjusted-badge{background:#e8f6ec!important;color:#28763a!important}
.discovery-sales-value>div{min-height:40px;padding:8px 9px}
.discovery-verified-control>span{display:block;margin-bottom:4px;color:#75878e;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.discovery-verified-control input,.discovery-verified-control select,.discovery-verified-control textarea{width:100%;margin:0}
.discovery-value-chips{display:flex;flex-wrap:wrap;gap:4px!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important}
.discovery-value-chips span{display:inline-flex;padding:3px 6px;border-radius:999px;background:#eaf4f6;color:#315d68;font-size:12px;font-weight:800}
.review-checkboxes{padding:8px 9px;border:1px solid #dce6e9;border-radius:8px;background:#fff}
.review-checkboxes>label{display:flex;align-items:center;gap:6px;margin:0 0 7px;color:#315d68;font-size:12px;font-weight:900}
.review-checkboxes input{width:auto}
.review-checkbox-options{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.review-checkbox-options label{display:flex;align-items:flex-start;gap:5px;margin:0;color:#65777f;font-size:12px;line-height:1.25}

.discovery-review-integration-card{margin-top:16px}
.discovery-review-integrations{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.review-integration-item{display:grid!important;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px!important}
.review-integration-number{display:flex;align-items:center;justify-content:center;width:30px;height:27px;border-radius:7px;background:#e5f5f7;color:#08788c;font-size:12px;font-weight:900}

.discovery-handoff-actions{margin-top:16px}
.discovery-handoff-actions .card{padding:18px}
.discovery-handoff-actions h3{margin:3px 0 6px}
.discovery-handoff-actions p{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.45}

@media(max-width:1150px){
    .discovery-sticky-actions{margin-left:0}
    .discovery-shell{grid-template-columns:1fr}
    .discovery-nav{position:static;display:flex;gap:5px;overflow:auto}
    .discovery-nav-title{display:none}
    .discovery-nav a{flex:0 0 auto}
    .discovery-integration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .discovery-review-field{grid-template-columns:1fr 1fr}
    .discovery-review-label{grid-column:1/-1}
}
@media(max-width:800px){
    .discovery-sticky-actions,.discovery-review-sticky{position:static;align-items:stretch;flex-direction:column}
    .discovery-sticky-buttons,.discovery-review-sticky>div:last-child{width:100%}
    .discovery-sticky-buttons .btn,.discovery-review-sticky>div:last-child .btn{flex:1}
    .discovery-core-grid,.discovery-fields{grid-template-columns:1fr}
    .discovery-question-wide{grid-column:auto}
    .discovery-choice-grid,.discovery-choice-grid:has(.discovery-choice:nth-child(5)),.discovery-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .discovery-integration-grid{grid-template-columns:1fr}
    .discovery-integration-grid .integration-purpose{grid-column:auto}
    .discovery-review-summary{grid-template-columns:1fr 1fr}
    .discovery-review-integrations,.discovery-handoff-actions{grid-template-columns:1fr}
}
@media(max-width:560px){
    .discovery-core-card,.discovery-section{padding:16px}
    .discovery-choice-grid,.discovery-choice-grid:has(.discovery-choice:nth-child(5)),.discovery-checkbox-grid{grid-template-columns:1fr!important}
    .discovery-review-field{grid-template-columns:1fr}
    .discovery-review-summary{grid-template-columns:1fr}
    .discovery-form-actions{align-items:stretch;flex-direction:column}
    .discovery-form-actions>div:last-child{width:100%;flex-direction:column}
    .discovery-form-actions .btn,.discovery-sticky-buttons .btn,.discovery-review-sticky>div:last-child .btn{width:100%;flex:none}
    .review-checkbox-options{grid-template-columns:1fr}
}

/* =========================================================
   Sales Discovery V2.1 - Sidebar + Readability Polish
   ========================================================= */

/* Give locked/read-only status room before the Discovery shell. */
.discovery-title + .notice,
.discovery-clarification + .notice,
.notice + #discovery-form{
    margin-bottom:20px;
}

/* Match the established Draft Editor sidebar language. */
.discovery-shell{
    grid-template-columns:250px minmax(0,1fr);
    gap:24px;
}

.discovery-nav{
    top:84px;
    padding:18px;
    border:0;
    border-radius:18px;
    background:#082f49;
    box-shadow:0 12px 28px rgba(6,40,63,.12);
}

.discovery-nav-title{
    padding:2px 8px 12px;
    color:#9edbe3;
    font-size:12px;
    font-weight:900;
    letter-spacing:.12em;
}

.discovery-nav a{
    display:grid;
    grid-template-columns:30px minmax(0,1fr);
    gap:10px;
    align-items:center;
    min-height:44px;
    padding:8px 10px;
    margin-bottom:4px;
    border-radius:10px;
    color:#d6e5e9;
    font-size:12px;
    font-weight:850;
    line-height:1.25;
    text-decoration:none;
    transition:background .12s ease,color .12s ease,transform .12s ease;
}

.discovery-nav a:hover{
    background:rgba(255,255,255,.07);
    color:#fff;
}

.discovery-nav a span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:27px;
    height:27px;
    border-radius:50%;
    background:#31556c;
    color:#c8dce2;
    font-size:12px;
    font-weight:900;
}

.discovery-nav a.active{
    background:#fff;
    color:#082f49;
    box-shadow:0 5px 12px rgba(0,0,0,.08);
}

.discovery-nav a.active span{
    background:var(--cyan);
    color:#fff;
}

/* Raise the smallest typography while preserving the existing card sizes. */
.discovery-title p,
.discovery-review-title p{
    font-size:14px;
    line-height:1.55;
}

.discovery-section-head p{
    font-size:12.5px;
    line-height:1.55;
}

.discovery-question-card>label,
.discovery-question-head>label{
    font-size:12px;
    line-height:1.4;
}

.discovery-question-card .field-help{
    margin-top:8px;
    font-size:12px;
    line-height:1.5;
}

.discovery-choice span{
    min-height:42px;
    padding:9px 10px;
    font-size:12px;
    line-height:1.35;
}

.discovery-subhead p{
    font-size:12px;
    line-height:1.5;
}

.discovery-integration-grid label>span{
    font-size:12px;
}

.discovery-sticky-actions small,
.discovery-review-sticky small{
    font-size:12px;
    line-height:1.4;
}

.discovery-form-actions span{
    font-size:12px;
    line-height:1.4;
}

.discovery-review-label strong{
    font-size:12px;
}

.discovery-sales-value>span,
.discovery-review-field label>span,
.discovery-verified-control>span{
    font-size:12px;
}

.discovery-sales-value>div{
    font-size:12px;
    line-height:1.45;
}

.discovery-review-integrations p{
    font-size:12px;
    line-height:1.45;
}

.discovery-review-integrations span{
    font-size:12px;
}

.discovery-review-integrations small{
    font-size:12px;
}

.discovery-handoff-actions .card p,
.create-estimate-card p{
    font-size:12px;
    line-height:1.5;
}

/* Locked state gets a little more breathing room and reads as a status bar. */
#discovery-form > .discovery-shell:first-child,
.notice + #discovery-form .discovery-shell{
    margin-top:20px;
}

.notice{
    line-height:1.5;
}

@media(max-width:1000px){
    .discovery-shell{grid-template-columns:220px minmax(0,1fr);gap:18px}
}

@media(max-width:850px){
    .discovery-shell{grid-template-columns:1fr}
    .discovery-nav{
        position:static;
        display:flex;
        gap:6px;
        overflow:auto;
        padding:10px;
        border-radius:12px;
    }
    .discovery-nav-title{display:none}
    .discovery-nav a{flex:0 0 auto;min-height:40px;margin:0;padding:7px 10px}
}


/* =========================================================
   Sales Discovery V2.2 - Action Bar Alignment + Nav Behavior
   ========================================================= */

/* Align the sticky Draft actions with the Discovery content column.
   Sidebar = 250px + 24px gap. */
.discovery-sticky-actions{
    margin-left:274px !important;
}

/* Give smooth navigation a predictable landing position below the sticky actions. */
.discovery-section{
    scroll-margin-top:96px;
}

/* Keep the active item visually stable while smooth-scrolling. */
.discovery-nav a{
    transform:none !important;
}

@media(max-width:1000px){
    .discovery-sticky-actions{
        margin-left:238px !important;
    }
}

@media(max-width:850px){
    .discovery-sticky-actions{
        margin-left:0 !important;
    }
}


/* =========================================================
   Quoter Visual Polish - 2026-09
   Teal table hierarchy, quieter background, collapsible notes,
   and restrained icons for reference/highlight areas.
   ========================================================= */

:root{
    --table-head-teal:#75cddd;
    --table-total-teal:#259ab7;
}

/* Slightly deepen the application canvas so white content cards separate better. */
body{
    background:
        radial-gradient(circle at 15% 5%, rgba(52,190,200,.15) 0%, rgba(52,190,200,0) 38%),
        linear-gradient(135deg,#e2eff1 0%,#eaf0f1 72%);
    background-attachment:fixed;
}

/* Column headers: replace the previous light gray with BMG light teal. */
.summary-table thead th,
.admin-user-table thead th{
    background:var(--table-head-teal) !important;
    color:#0b2a40 !important;
    border-bottom-color:#58b9cc !important;
}

/* Subtotal / total rows use the stronger teal as a clear calculation boundary. */
.summary-table tfoot td{
    background:var(--table-total-teal) !important;
    color:#fff !important;
    border-top-color:#1e8199 !important;
}

.summary-table tfoot td strong,
.summary-table tfoot td span,
.summary-table tfoot td a{
    color:#fff !important;
}

/* Keep hover states from washing over the teal header/footer hierarchy. */
.summary-table thead tr:hover,
.summary-table tfoot tr:hover{
    background:transparent !important;
}

/* Restrained icon language for reference/highlight areas only. */
.featured-icon{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border-radius:10px;
    background:#e5f6f8;
    color:#087f96;
}
.featured-icon svg{width:19px;height:19px;display:block}

/* Estimate Notes: visible presence, collapsed content. */
.estimate-notes-collapsible{
    padding:0 !important;
    overflow:hidden;
    border-left:4px solid #f0a43c;
    background:#fffaf0;
}
.estimate-notes-collapsible>summary{
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    min-height:72px;
    padding:14px 18px;
    cursor:pointer;
    list-style:none;
    user-select:none;
}
.estimate-notes-collapsible>summary::-webkit-details-marker{display:none}
.estimate-notes-collapsible>summary:hover{background:#fff7e8}
.estimate-note-icon{background:#fff0cf;color:#a96716}
.estimate-notes-summary-copy{min-width:0}
.estimate-notes-summary-copy .eyebrow{display:block;margin-bottom:1px}
.estimate-notes-summary-copy strong{display:block;color:var(--navy);font-size:14px;line-height:1.25}
.estimate-notes-summary-copy small{display:block;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.4}
.estimate-notes-summary-meta{display:flex;align-items:center;gap:9px}
.estimate-notes-chevron{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    border:1px solid #ead5a8;
    border-radius:8px;
    background:#fff;
    color:#8a5a17;
    font-size:15px;
    transition:transform .15s ease;
}
.estimate-notes-collapsible[open] .estimate-notes-chevron{transform:rotate(180deg)}
.estimate-notes-collapsible .estimate-notes-copy{
    margin:0;
    padding:16px 18px 18px;
    border-top:1px solid #efdfbd;
    background:#fffdf8;
    line-height:1.6;
    font-size:15px;
}

/* Small feature icon on the Estimate Records heading. */
.estimate-records-heading-main{
    display:flex;
    align-items:flex-start;
    gap:12px;
    min-width:0;
}
.estimate-records-icon{
    margin-top:1px;
    background:#e4f4f6;
    color:#087f96;
}

@media(max-width:680px){
    .estimate-notes-collapsible>summary{
        grid-template-columns:34px minmax(0,1fr);
    }
    .estimate-notes-summary-meta{
        grid-column:2;
        justify-content:flex-start;
    }
    .featured-icon{width:34px;height:34px}
}


/* =========================================================
   Estimate Notes Reliable Collapse Fix
   ========================================================= */

/* Remove the experimental icon treatment from these areas. */
.estimate-notes-card .featured-icon,
.estimate-records-section .featured-icon{
    display:none !important;
}

.estimate-notes-collapsible{
    padding:0 !important;
    overflow:hidden;
    border-left:4px solid #f0a43c;
    background:#fffaf0;
}

.estimate-notes-toggle{
    appearance:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    width:100%;
    min-height:72px;
    margin:0;
    padding:14px 18px;
    border:0;
    background:transparent;
    color:inherit;
    text-align:left;
    cursor:pointer;
    font:inherit;
}

.estimate-notes-toggle:hover{
    background:#fff7e8;
}

.estimate-notes-toggle:focus-visible{
    outline:2px solid #259ab7;
    outline-offset:-2px;
}

.estimate-notes-toggle[aria-expanded="true"] .estimate-notes-chevron{
    transform:rotate(180deg);
}

.estimate-notes-copy[hidden]{
    display:none !important;
}

.estimate-notes-copy{
    margin:0 !important;
    padding:16px 18px 18px !important;
    border-top:1px solid #efdfbd;
    background:#fffdf8;
    line-height:1.6;
    font-size:15px;
}

.estimate-records-heading-main{
    gap:0 !important;
}


/* =========================================================
   Estimate Summary Visual Fix
   Notes card + table hierarchy
   ========================================================= */

/* Estimate Notes should look like a Quoter card, never a native button/control. */
.estimate-notes-card.estimate-notes-collapsible{
    margin-bottom:22px;
    padding:0 !important;
    overflow:hidden;
    border:1px solid var(--line);
    border-left:4px solid #f0a43c;
    border-radius:var(--radius);
    background:#fff;
    box-shadow:0 10px 35px rgba(4,39,62,.045);
}

.estimate-notes-toggle{
    appearance:none;
    -webkit-appearance:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    width:100%;
    min-height:76px;
    margin:0;
    padding:16px 20px;
    border:0;
    border-radius:0;
    background:#fff;
    color:var(--navy);
    font:inherit;
    text-align:left;
    cursor:pointer;
    box-shadow:none;
}

.estimate-notes-toggle:hover{
    background:#fffaf2;
}

.estimate-notes-toggle:focus-visible{
    outline:2px solid var(--cyan);
    outline-offset:-3px;
}

.estimate-notes-summary-copy{
    display:grid;
    grid-template-columns:auto auto;
    align-items:center;
    justify-content:start;
    column-gap:9px;
    row-gap:3px;
    min-width:0;
}

.estimate-notes-summary-copy .eyebrow{
    grid-column:1;
    margin:0;
}

.estimate-notes-summary-copy strong{
    grid-column:2;
    color:var(--navy);
    font-size:15px;
    line-height:1.25;
}

.estimate-notes-summary-copy small{
    grid-column:1/-1;
    color:var(--muted);
    font-size:12px;
    line-height:1.4;
}

.estimate-notes-summary-meta{
    display:flex;
    align-items:center;
    gap:10px;
    flex:0 0 auto;
}

.estimate-notes-summary-meta .pill{
    background:#eef6f7;
    color:#315f6e;
}

.estimate-notes-chevron{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    border:1px solid #d6e4e7;
    border-radius:8px;
    background:#f7fafb;
    color:var(--cyan);
    font-size:17px;
    font-weight:900;
    line-height:1;
    transition:transform .15s ease;
}

.estimate-notes-toggle[aria-expanded="true"] .estimate-notes-chevron{
    transform:rotate(180deg);
}

.estimate-notes-card .estimate-notes-copy{
    margin:0;
    padding:16px 20px 18px;
    border-top:1px solid #e5edef;
    background:#fffaf4;
    color:var(--navy);
    font-size:14px;
    line-height:1.6;
}

/* Explicitly preserve the hidden collapsed state regardless of older CSS rules. */
.estimate-notes-copy[hidden]{
    display:none !important;
}

/* Global Quoter table hierarchy requested by the team.
   Header rows = light teal. Subtotals/totals = teal. */
.summary-table thead th{
    background:#75CDDD !important;
    color:#182852 !important;
    border-bottom-color:#5bb9cb !important;
    font-weight:900 !important;
}

.summary-table tfoot td{
    background:#259AB7 !important;
    color:#fff !important;
    border-top-color:#1f849e !important;
}

.summary-table tfoot td strong,
.summary-table tfoot td span,
.summary-table tfoot td.num{
    color:#fff !important;
}

/* Keep header text readable on hover/inside expandable scope cards. */
.scope-card .summary-table thead th{
    background:#75CDDD !important;
    color:#182852 !important;
}

.scope-card .summary-table tfoot td{
    background:#259AB7 !important;
    color:#fff !important;
}

@media(max-width:650px){
    .estimate-notes-toggle{
        align-items:flex-start;
        padding:15px 16px;
    }

    .estimate-notes-summary-copy{
        grid-template-columns:1fr;
    }

    .estimate-notes-summary-copy .eyebrow,
    .estimate-notes-summary-copy strong,
    .estimate-notes-summary-copy small{
        grid-column:1;
    }

    .estimate-notes-summary-meta .pill{
        display:none;
    }
}

/* =========================================================
   Estimate Summary Table Hierarchy + Section Metrics
   ========================================================= */

/* Add structure to teal table headers without making the grid feel heavy. */
.scope-card .summary-table thead th,
.summary-table thead th{
    position:relative;
    background:#75CDDD !important;
    color:#182852 !important;
    border-bottom:2px solid #259AB7 !important;
}

/* Subtle vertical delimiters between columns. */
.scope-card .summary-table thead th + th,
.summary-table thead th + th{
    border-left:1px solid rgba(24,40,82,.16) !important;
}

.scope-card .summary-table tbody td + td,
.summary-table tbody td + td{
    border-left:1px solid rgba(24,40,82,.07);
}

/* Make numeric columns feel more intentionally separated. */
.scope-card .summary-table th.num,
.scope-card .summary-table td.num,
.summary-table th.num,
.summary-table td.num{
    padding-left:20px;
}

/* Subtotal/total rows should read as the conclusion of the section. */
.scope-card .summary-table tfoot td,
.summary-table tfoot td{
    background:#259AB7 !important;
    color:#fff !important;
    border-top:3px solid #182852 !important;
}

.scope-card .summary-table tfoot td + td,
.summary-table tfoot td + td{
    border-left:1px solid rgba(255,255,255,.24) !important;
}

.scope-card .summary-table tfoot strong,
.summary-table tfoot strong{
    color:#fff !important;
}

/* Stronger phase/section totals in the upper-right. */
.scope-totals{
    gap:9px !important;
}

.scope-totals > strong,
.scope-totals > span:not(.chevron){
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:7px 12px;
    border-radius:9px;
    line-height:1;
    white-space:nowrap;
}

.scope-totals > strong{
    background:#e4f6f9;
    border:1px solid #9ed8e2;
    color:#08788c !important;
    font-size:16px !important;
    font-weight:900 !important;
}

.scope-totals > span:not(.chevron){
    background:#259AB7;
    border:1px solid #259AB7;
    color:#fff !important;
    font-size:16px !important;
    font-weight:900 !important;
}

.scope-totals .chevron{
    margin-left:3px;
}

.scope-card summary:hover .scope-totals > strong{
    background:#d8f1f5;
}

.scope-card summary:hover .scope-totals > span:not(.chevron){
    background:#218da8;
    border-color:#218da8;
}

@media(max-width:700px){
    .scope-totals > strong,
    .scope-totals > span:not(.chevron){
        min-height:34px;
        padding:6px 9px;
        font-size:14px !important;
    }

    .scope-card .summary-table tbody td + td,
    .summary-table tbody td + td{
        border-left-color:rgba(24,40,82,.05);
    }
}


/* =========================================================
   Main Quotes - Continue Draft Action
   ========================================================= */

a.btn[href*="action=edit"][href*="id="],
button.btn.continue-draft,
.btn.continue-draft{
    background:#1464C0 !important;
    border-color:#1464C0 !important;
    color:#fff !important;
}

a.btn[href*="action=edit"][href*="id="]:hover,
button.btn.continue-draft:hover,
.btn.continue-draft:hover{
    background:#1054A3 !important;
    border-color:#1054A3 !important;
    color:#fff !important;
}


/* =========================================================
   Main Quotes - Final Estimate Primary Action
   Match Draft action blue
   ========================================================= */

/* Final Estimate primary view/open action */
.final-estimates .btn:not(.light):not(.outline):not(.danger-btn),
.final-estimate-row .btn:not(.light):not(.outline):not(.danger-btn),
a.btn[href*="action=view"][href*="id="]{
    background:#1464C0 !important;
    border-color:#1464C0 !important;
    color:#fff !important;
}

.final-estimates .btn:not(.light):not(.outline):not(.danger-btn):hover,
.final-estimate-row .btn:not(.light):not(.outline):not(.danger-btn):hover,
a.btn[href*="action=view"][href*="id="]:hover{
    background:#1054A3 !important;
    border-color:#1054A3 !important;
    color:#fff !important;
}


/* =========================================================
   Main Quotes - Preview stays secondary
   ========================================================= */

a.btn[href*="action=preview"],
button.btn.preview,
.btn.preview{
    background:#eef4f7 !important;
    border-color:#cbd9df !important;
    color:#182852 !important;
}

a.btn[href*="action=preview"]:hover,
button.btn.preview:hover,
.btn.preview:hover{
    background:#dfeaf0 !important;
    border-color:#b7cbd4 !important;
    color:#182852 !important;
}


/* =========================================================
   Main Quotes - Exact Preview Secondary Override
   ========================================================= */

/* Preview links use the existing .light class. Keep them secondary
   even though View Estimate also uses action=view. */
.row-actions .btn.light,
.summary-table .row-actions a.btn.light{
    background:#eef4f7 !important;
    border-color:#cbd9df !important;
    color:#182852 !important;
    box-shadow:none !important;
}

.row-actions .btn.light:hover,
.summary-table .row-actions a.btn.light:hover{
    background:#dfeaf0 !important;
    border-color:#b7cbd4 !important;
    color:#182852 !important;
}

/* =========================================================
   Sales Discovery - Automatic Website Analysis V1
   ========================================================= */
.discovery-website-analyzer .website-analyze-btn{
    margin-top:14px;
    background:#1464C0;
    border-color:#1464C0;
    color:#fff;
}
.discovery-website-analyzer .website-analyze-btn:hover{
    background:#1054A3;
    border-color:#1054A3;
}
.website-analysis-summary{
    margin-top:18px;
    padding:20px 22px;
    border:1px solid #cfe4e9;
    border-radius:16px;
    background:#f5fbfc;
}
.website-analysis-summary-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:15px;
}
.website-analysis-summary-head h3{margin:3px 0 0;color:#182852;}
.analysis-scan-meta{
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:6px 11px;
    border-radius:999px;
    background:#e2f5f8;
    color:#176b7d;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}
.analysis-stat-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.analysis-stat-grid>div{
    padding:12px 14px;
    border:1px solid #dbe8ec;
    border-radius:12px;
    background:#fff;
}
.analysis-stat-grid span{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#617588;}
.analysis-stat-grid strong{display:block;margin-top:3px;font-size:21px;line-height:1.1;color:#182852;}
.analysis-disclaimer{margin:13px 0 0;color:#62768a;font-size:12px;line-height:1.5;}
.discovered-suggestion{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:12px;
    padding:10px 11px;
    border:1px solid #b9e1e8;
    border-radius:11px;
    background:#eefafb;
}
.discovered-suggestion>div{min-width:0;}
.discovered-label{display:block;margin-bottom:2px;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#248aa1;}
.discovered-suggestion strong{display:block;color:#182852;font-size:13px;overflow-wrap:anywhere;}
.use-detected-btn{
    appearance:none;
    flex:0 0 auto;
    border:1px solid #9fcfd9;
    border-radius:9px;
    background:#fff;
    color:#1464C0;
    padding:7px 10px;
    font:inherit;
    font-size:12px;
    font-weight:850;
    cursor:pointer;
}
.use-detected-btn:hover{background:#e4f5f8;}
.use-detected-btn.applied{background:#e7f5ea;border-color:#b9ddc0;color:#28763a;}
@media(max-width:800px){
    .analysis-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .website-analysis-summary-head{align-items:flex-start;flex-direction:column;}
}

/* =========================================================
   Sales Discovery - Automatic Website Analysis V2
   Sitemap inventory + confidence/source hierarchy
   ========================================================= */
.analysis-meta-group{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:7px;
    flex-wrap:wrap;
}
.analysis-scan-meta.secondary{
    background:#eef4f7;
    color:#526f7c;
}
.analysis-metric-card{
    min-width:0;
}
.analysis-metric-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:8px;
}
.analysis-metric-card small{
    display:block;
    margin-top:5px;
    color:#71858d;
    font-size:12px;
    line-height:1.35;
}
.analysis-confidence{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:20px;
    padding:3px 6px;
    border-radius:999px;
    font-size:12px;
    font-style:normal;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
    white-space:nowrap;
}
.analysis-confidence.high{
    background:#e5f5e9;
    color:#28763a;
}
.analysis-confidence.medium{
    background:#fff1da;
    color:#995018;
}
.analysis-confidence.low{
    background:#f2edf7;
    color:#76558d;
}
.analysis-source-line{
    margin-top:12px;
    padding:9px 11px;
    border:1px solid #dce8eb;
    border-radius:10px;
    background:#fff;
    color:#607780;
    font-size:12px;
    line-height:1.4;
}
.analysis-source-line strong{
    color:#182852;
}
.analysis-warning{
    display:inline-flex;
    margin-left:7px;
    padding:2px 6px;
    border-radius:999px;
    background:#fff0d9;
    color:#9b4e19;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.discovered-suggestion-copy{
    min-width:0;
}
.discovered-suggestion-head{
    display:flex;
    align-items:center;
    gap:7px;
    margin-bottom:3px;
    flex-wrap:wrap;
}
.discovered-suggestion-copy small{
    display:block;
    margin-top:4px;
    max-width:760px;
    color:#627a84;
    font-size:12px;
    line-height:1.4;
}
@media(max-width:800px){
    .analysis-meta-group{justify-content:flex-start}
    .analysis-metric-top{align-items:center}
    .discovered-suggestion{align-items:flex-start;flex-direction:column}
    .use-detected-btn{align-self:flex-start}
}


/* =========================================================
   Website Analysis V3 - Evidence + physical locations
   ========================================================= */

.analysis-metric-card{
    display:flex;
    flex-direction:column;
}

.analysis-evidence{
    margin-top:11px;
    padding-top:9px;
    border-top:1px solid #dfeaec;
}

.analysis-evidence>summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    color:#08788c;
    cursor:pointer;
    list-style:none;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}

.analysis-evidence>summary::-webkit-details-marker{display:none}

.analysis-evidence>summary span{
    color:#259ab7;
    font-size:13px;
    transition:transform .15s ease;
}

.analysis-evidence[open]>summary span{transform:rotate(180deg)}

.analysis-evidence-body{
    padding-top:8px;
    color:#617780;
    font-size:12px;
    line-height:1.45;
}

.analysis-evidence-body p{
    margin:0 0 7px;
}

.analysis-evidence-body ul{
    margin:0;
    padding:7px 0 0 16px;
    border-top:1px dashed #dfe8eb;
}

.analysis-evidence-body li{
    margin:3px 0;
    overflow-wrap:anywhere;
}

.analysis-evidence-empty{
    color:#84949a;
    font-style:italic;
}

.analysis-source-line{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
}

.analysis-technical{
    display:inline-block;
    position:relative;
}

.analysis-technical>summary{
    cursor:pointer;
    color:#08788c;
    font-size:12px;
    font-weight:850;
}

.analysis-technical>div{
    margin-top:5px;
    padding:7px 9px;
    border:1px solid #dbe7ea;
    border-radius:8px;
    background:#fff;
    color:#667b84;
    font-size:12px;
}


/* =========================================================
   Website Analysis V3.2 - Safe Progress Overlay
   ========================================================= */
.website-analysis-progress{
    position:fixed;
    inset:0;
    z-index:1000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(8,47,73,.34);
    backdrop-filter:blur(3px);
}
.website-analysis-progress[hidden]{display:none!important}
.website-analysis-progress-card{
    width:min(560px,100%);
    padding:22px 24px;
    border:1px solid #cfe3e7;
    border-radius:16px;
    background:#fff;
    box-shadow:0 24px 60px rgba(6,40,63,.22);
}
.website-analysis-progress-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}
.website-analysis-progress-head h3{
    margin:4px 0 0;
    color:var(--navy);
    font-size:21px;
}
.analysis-spinner{
    width:30px;
    height:30px;
    border:3px solid #dcecef;
    border-top-color:#259ab7;
    border-radius:50%;
    animation:analysis-spin .8s linear infinite;
}
.analysis-progress-track{
    position:relative;
    height:8px;
    margin:18px 0 12px;
    overflow:hidden;
    border-radius:999px;
    background:#e8f1f3;
}
.analysis-progress-track span{
    position:absolute;
    top:0;
    bottom:0;
    width:38%;
    border-radius:999px;
    background:#259ab7;
    animation:analysis-indeterminate 1.25s ease-in-out infinite;
}
.analysis-progress-stage{
    min-height:20px;
    color:#182852;
    font-size:13px;
    font-weight:850;
}
.website-analysis-progress-card p{
    margin:5px 0 0;
    color:var(--muted);
    font-size:12px;
    line-height:1.45;
}
.analysis-progress-close{margin-top:14px}
@keyframes analysis-spin{to{transform:rotate(360deg)}}
@keyframes analysis-indeterminate{
    0%{left:-42%}
    50%{left:48%}
    100%{left:104%}
}


/* Website Analysis V4.2 - Classification Audit */
.classification-audit-card{margin-top:22px}
.classification-audit-head{margin-bottom:14px}
.classification-audit-head h2{margin:3px 0 4px}
.classification-audit-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.classification-audit-group{border-top:1px solid #dce7ea}
.classification-audit-group:first-of-type{border-top:0}
.classification-audit-group>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 2px;cursor:pointer;list-style:none;color:var(--navy);font-weight:900}
.classification-audit-group>summary::-webkit-details-marker{display:none}
.classification-audit-group>summary strong{min-width:42px;padding:4px 8px;border-radius:999px;background:#e8f5f7;color:#147e95;text-align:center}
.classification-audit-body{padding:0 0 16px}
.classification-audit-table-wrap{max-height:480px;overflow:auto;border:1px solid #dce7ea;border-radius:10px;background:#fff}
.classification-audit-table{width:100%;border-collapse:collapse;font-size:12px}
.classification-audit-table th{position:sticky;top:0;z-index:1;padding:8px 10px;background:#75cddd;color:#182852;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.classification-audit-table td{padding:8px 10px;border-top:1px solid #edf2f3;vertical-align:top;line-height:1.4}
.classification-audit-table td:first-child{min-width:280px;overflow-wrap:anywhere}
.classification-audit-table td:nth-child(2){min-width:220px}
.classification-audit-table td:last-child{min-width:260px;overflow-wrap:anywhere;color:#71848b}
.classification-audit-limit{margin-top:8px;color:var(--muted);font-size:12px}


/* Website Analysis V4.3 - location directory metric */
.analysis-stat-grid{
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
}


/* =========================================================
   Website Analysis V5 - crawl evidence model
   ========================================================= */
.v5-evidence-card{margin-top:22px}
.v5-candidate-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
    gap:10px;
    margin:14px 0 8px;
}
.v5-candidate-stat{
    padding:12px 14px;
    border:1px solid #dce8eb;
    border-radius:10px;
    background:#f8fbfc;
}
.v5-candidate-stat span{
    display:block;
    color:#627a83;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v5-candidate-stat strong{
    display:block;
    margin-top:4px;
    color:#182852;
    font-size:22px;
}
.v5-evidence-table td:nth-child(4){min-width:230px}
.v5-evidence-table td:nth-child(6){min-width:160px}

/* V5.1 diagnostic emphasis */
.v5-evidence-card{border:1px solid #b9dfe6;background:#fbfeff}
.v5-evidence-card .classification-audit-head{border-bottom:1px solid #d9e9ed;padding-bottom:12px;margin-bottom:12px}


/* =========================================================
   Website Analysis V5.2 - visible evidence snapshot
   ========================================================= */
.v52-evidence-snapshot{
    margin-top:16px;
    padding:14px;
    border:1px solid #c9e3e8;
    border-radius:12px;
    background:#fff;
}
.v52-evidence-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
}
.v52-evidence-head strong{
    display:block;
    color:#182852;
    font-size:13px;
}
.v52-evidence-head span:not(.pill){
    display:block;
    margin-top:2px;
    color:#617987;
    font-size:12px;
}
.v52-evidence-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
    gap:8px;
}
.v52-evidence-grid>div{
    padding:9px 10px;
    border:1px solid #e1ecef;
    border-radius:9px;
    background:#f8fbfc;
}
.v52-evidence-grid span{
    display:block;
    color:#647986;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v52-evidence-grid strong{
    display:block;
    margin-top:2px;
    color:#182852;
    font-size:18px;
}
.v52-location-evidence{
    margin-top:10px;
    color:#536d7a;
    font-size:12px;
}
.v52-location-evidence strong{color:#182852}


/* Website Analysis V5.3 - entity-based locations */
.v52-location-evidence + .v52-location-evidence{
    margin-top:4px;
}


/* =========================================================
   Website Analysis V5.4 - crawl pipeline diagnostics
   ========================================================= */
.v54-crawl-plan{
    margin-top:12px;
    padding:14px;
    border:1px solid #c9e3e8;
    border-radius:12px;
    background:#fff;
}
.v54-plan-table-wrap{
    overflow:auto;
    border:1px solid #e1ecef;
    border-radius:9px;
}
.v54-plan-table{
    width:100%;
    border-collapse:collapse;
    font-size:12px;
}
.v54-plan-table th{
    padding:8px 10px;
    background:#75cddd;
    color:#182852;
    text-align:left;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v54-plan-table td{
    padding:8px 10px;
    border-top:1px solid #e8f0f2;
    color:#506975;
}
.v54-plan-table td:first-child{
    color:#182852;
    font-weight:800;
}


/* =========================================================
   Website Analysis V5.5 - post-fetch skip diagnostics
   ========================================================= */
.v55-stop-reason{
    margin-top:10px;
    padding:9px 10px;
    border-radius:8px;
    background:#f4f8f9;
    color:#536d78;
    font-size:12px;
}
.v55-stop-reason strong{color:#182852}
.v55-skip-details{
    margin-top:10px;
    border-top:1px solid #dfebee;
    padding-top:9px;
}
.v55-skip-details>summary{
    cursor:pointer;
    color:#147e95;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v55-skip-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:8px;
    margin-top:9px;
}
.v55-skip-card{
    padding:10px;
    border:1px solid #e1ecef;
    border-radius:9px;
    background:#f8fbfc;
}
.v55-skip-card>strong{
    color:#182852;
    font-size:12px;
}
.v55-skip-card ul{
    margin:7px 0 0;
    padding:0;
    list-style:none;
}
.v55-skip-card li{
    display:flex;
    justify-content:space-between;
    gap:10px;
    padding:4px 0;
    border-top:1px solid #edf3f4;
    color:#647984;
    font-size:12px;
}
.v55-skip-card li:first-child{border-top:0}
.v55-skip-card b{color:#182852}
.v55-example-list{
    margin-top:9px;
    border:1px solid #e1ecef;
    border-radius:9px;
    overflow:hidden;
}
.v55-example-row{
    display:grid;
    grid-template-columns:auto minmax(130px,180px) 1fr;
    gap:8px 10px;
    align-items:center;
    padding:9px 10px;
    border-top:1px solid #edf3f4;
    background:#fff;
    font-size:12px;
}
.v55-example-row:first-child{border-top:0}
.v55-example-row code{
    overflow-wrap:anywhere;
    color:#244b62;
}
.v55-example-row small{
    grid-column:3;
    color:#7a8c94;
}


/* =========================================================
   Website Analysis V5.6 - HTML body sniffing diagnostics
   ========================================================= */
.v56-override-note{
    margin-top:8px;
    padding:9px 10px;
    border:1px solid #cfe6d6;
    border-radius:8px;
    background:#f5fbf7;
    color:#4f6f5a;
    font-size:12px;
}
.v56-override-note strong{color:#245b35}


/* =========================================================
   Website Analysis V5.7 - namespace-aware sitemap filtering
   ========================================================= */
.v57-sitemap-diagnostic{
    margin-top:12px;
    padding:14px;
    border:1px solid #c9e3e8;
    border-radius:12px;
    background:#fff;
}
.v57-sitemap-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
    gap:8px;
}
.v57-sitemap-grid>div{
    padding:9px 10px;
    border:1px solid #e1ecef;
    border-radius:9px;
    background:#f8fbfc;
}
.v57-sitemap-grid span{
    display:block;
    color:#647986;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v57-sitemap-grid strong{
    display:block;
    margin-top:2px;
    color:#182852;
    font-size:18px;
}

.v58-location-intel{margin-top:12px;padding:14px;border:1px solid #c9e3e8;border-radius:12px;background:#fff}
.v58-location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
.v58-location-grid>div{padding:10px;border:1px solid #e1ecef;border-radius:9px;background:#f8fbfc}
.v58-location-grid span{display:block;color:#647986;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.v58-location-grid strong{display:block;margin-top:2px;color:#182852;font-size:19px}
.v58-location-details{margin-top:10px;border-top:1px solid #e2edef;padding-top:9px}
.v58-location-details>summary{cursor:pointer;color:#147e95;font-size:12px;font-weight:900;text-transform:uppercase}
.v58-location-details p{padding:9px 10px;border-radius:8px;background:#f7fafb;color:#536d78;font-size:12px}
.v58-dir-table-wrap{overflow-x:auto;margin-top:8px}.v58-dir-table{width:100%;border-collapse:collapse;font-size:12px}
.v58-dir-table th,.v58-dir-table td{padding:7px 8px;border:1px solid #e2edef;text-align:left;vertical-align:top}
.v58-dir-table th{background:#75cddd;color:#182852;text-transform:uppercase}
.v58-location-note{margin-top:10px;padding:9px 10px;border-radius:8px;background:#fff8ea;color:#725c2e;font-size:12px}

/* Website Analysis V5.8.1: 75-second analysis budget; Location Intelligence return-path fix. */


/* Website Analysis V5.8.2 - parent/child location relationship diagnostics */
.v582-child-list{margin-top:8px}
.v582-parent-block{
    margin-top:8px;
    padding:9px 10px;
    border:1px solid #e1ecef;
    border-radius:9px;
    background:#f8fbfc;
}
.v582-parent-block>strong{
    display:block;
    margin-bottom:6px;
    color:#182852;
    font-size:12px;
    overflow-wrap:anywhere;
}
.v582-child-row{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:5px 0;
    border-top:1px solid #e8f0f2;
    color:#607783;
    font-size:12px;
}
.v582-child-row span{overflow-wrap:anywhere}
.v582-child-row b{
    flex:0 0 auto;
    color:#147e95;
    font-size:12px;
}


/* Website Analysis V5.8.3 - cached relationship analysis */
.v583-efficiency-note{
    margin-top:10px;
    padding:8px 10px;
    border:1px solid #dce9ec;
    border-radius:8px;
    background:#f7fafb;
    color:#5c7480;
    font-size:12px;
}
.v583-efficiency-note strong{color:#182852}

.v584-context-note{margin-top:10px;padding:9px 10px;border:1px solid #cfe3e8;border-radius:8px;background:#f2fafb;color:#536f79;font-size:12px;line-height:1.45}
.v584-context-note strong{color:#182852}


/* Website Analysis V5.8.5 - component-level location evidence */
.v585-component-details{
    margin-top:10px;
    border-top:1px solid #e2edef;
    padding-top:9px;
}
.v585-component-details>summary{
    cursor:pointer;
    color:#147e95;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v585-entity-list{margin-top:8px}
.v585-entity-row{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:8px 10px;
    border-top:1px solid #e8f0f2;
    background:#f8fbfc;
    font-size:12px;
}
.v585-entity-row:first-child{border-top:0}
.v585-entity-row strong{
    display:block;
    color:#182852;
    font-size:12px;
}
.v585-entity-row span{
    display:block;
    margin-top:2px;
    color:#687e89;
    overflow-wrap:anywhere;
}
.v585-entity-row b{
    flex:0 0 auto;
    color:#147e95;
}


/* Website Analysis V5.8.6 - direct directory inspection */
.v586-direct-details{
    margin-top:10px;
    border-top:1px solid #e2edef;
    padding-top:9px;
}
.v586-direct-details>summary{
    cursor:pointer;
    color:#147e95;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}


/* Website Analysis V5.8.7 - signal normalization + evidence-first location analysis */
.v587-pipeline-note{
    margin-top:10px;
    padding:9px 10px;
    border:1px solid #d5e7dc;
    border-radius:8px;
    background:#f5fbf7;
    color:#4f6f5a;
    font-size:12px;
    line-height:1.45;
}
.v587-pipeline-note strong{color:#245b35}


/* Website Analysis V5.8.8 - physical-location precision tracing */
.v588-precision-details{
    margin-top:10px;
    border-top:1px solid #e2edef;
    padding-top:9px;
}
.v588-precision-details>summary{
    cursor:pointer;
    color:#147e95;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v588-evidence-list{margin-top:8px}
.v588-evidence-row{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:9px 10px;
    border-top:1px solid #e8f0f2;
    background:#f8fbfc;
    font-size:12px;
}
.v588-evidence-row:first-child{border-top:0}
.v588-evidence-row strong{display:block;color:#182852;font-size:12px}
.v588-evidence-row span,.v588-evidence-row small{display:block;margin-top:2px;color:#687e89}
.v588-evidence-row small{overflow-wrap:anywhere}
.v588-evidence-row b{flex:0 0 220px;color:#147e95;font-size:12px}
.v588-promoted{
    margin-top:10px;
    padding:9px 10px;
    border:1px solid #cfe5d6;
    border-radius:8px;
    background:#f5fbf7;
    color:#4f6f5a;
    font-size:12px;
}
.v588-promoted strong{color:#245b35}
.v588-promoted ul{margin:5px 0 0 16px;padding:0}

/* Website Analysis V5.8.9: service-area suppression + lightweight HQ scan + runtime diagnostic. */

/* Website Analysis V5.9.0 - bounded adaptive crawl */
.v590-budget-note{
    margin-top:10px;
    padding:9px 10px;
    border:1px solid #d7e4ee;
    border-radius:8px;
    background:#f5f9fc;
    color:#536d7b;
    font-size:12px;
    line-height:1.45;
}
.v590-budget-note strong{color:#182852}

/* Website Analysis V5.9.1: branch candidate labeling + nearby HQ evidence. */


/* Website Analysis V5.9.2 - semantic headquarters/address corroboration */
.v592-address-details{
    margin-top:10px;
    border-top:1px solid #e2edef;
    padding-top:9px;
}
.v592-address-details>summary{
    cursor:pointer;
    color:#147e95;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.v592-corroborated{
    margin-top:10px;
    padding:9px 10px;
    border:1px solid #cfe5d6;
    border-radius:8px;
    background:#f5fbf7;
    color:#4f6f5a;
    font-size:12px;
}
.v592-corroborated strong{display:block;color:#245b35;margin-bottom:4px}

/* Website Analysis V5.9.3: sibling-column headquarters + map/address corroboration. */

/* Website Analysis V5.9.4: explicit Address fields may promote detected physical locations even on service-area sites. */


/* Website Discovery Analysis V6.0 */
.v600-sales-snapshot{margin-top:14px;padding:16px;border:1px solid #c9e3e8;border-radius:13px;background:#fff}
.v600-sales-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.v600-sales-head h4{margin:3px 0 3px;color:#182852;font-size:18px}
.v600-sales-head p{margin:0;color:#617588;font-size:12px}
.v600-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}
.v600-feature-card{padding:11px;border:1px solid #dbe8ec;border-radius:10px;background:#f8fbfc;min-width:0}
.v600-feature-card>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.v600-feature-card span{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#617588}
.v600-feature-card strong{display:block;margin-top:6px;color:#182852;font-size:14px;line-height:1.25;overflow-wrap:anywhere}
.v600-feature-card small{display:block;margin-top:5px;color:#6b7f89;font-size:12px;line-height:1.4}
.v600-confirm{margin-top:12px;padding:11px 13px;border:1px solid #eedeb8;border-radius:10px;background:#fffaf0}
.v600-confirm>strong{color:#8b5c12;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.v600-confirm ul{margin:7px 0 0 18px;padding:0;color:#5e6871;font-size:12px;line-height:1.5}
.v600-diagnostics{margin-top:14px;border:1px solid #c9e3e8;border-radius:12px;background:#f7fbfc;overflow:hidden}
.v600-diagnostics>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;cursor:pointer;list-style:none;background:#eef8fa;color:#182852}
.v600-diagnostics>summary::-webkit-details-marker{display:none}
.v600-diagnostics>summary span{display:block}
.v600-diagnostics>summary strong{display:block;font-size:12px}
.v600-diagnostics>summary small{display:block;margin-top:2px;color:#6b7f89;font-size:12px;font-weight:500}
.v600-diagnostics>summary b{color:#147e95;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.v600-diagnostics[open]>summary b{font-size:0}
.v600-diagnostics[open]>summary b:after{content:'Close diagnostics';font-size:12px}
.v600-diagnostics-body{padding:0 12px 12px}
.v600-diagnostics-body>.analysis-source-line{margin-top:12px}
@media(max-width:1100px){.v600-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.v600-feature-grid{grid-template-columns:1fr}}

/* Website Discovery V6.1 Feature Intelligence */
.v600-sales-snapshot{display:block;width:100%;box-sizing:border-box}
.v600-feature-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:10px !important;align-items:stretch;width:100%}
.v600-feature-card{min-width:0;display:flex !important;flex-direction:column}
.v600-feature-card>strong{overflow-wrap:anywhere}
.v610-feature-evidence{margin-top:auto;padding-top:8px;border-top:1px solid #dce9ec}
.v610-feature-evidence>summary{cursor:pointer;color:#147e95;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.v610-feature-evidence>div{padding-top:6px}
.v610-feature-evidence p{margin:0 0 7px;padding:0 0 7px;border-bottom:1px solid #edf3f4}
.v610-feature-evidence p:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.v610-feature-evidence b{display:block;color:#182852;font-size:12px}
.v610-feature-evidence span{display:block;margin-top:2px;color:#617984;font-size:12px}
.v610-feature-evidence small{display:block;margin-top:2px;color:#728891;font-size:12px;overflow-wrap:anywhere}
@media(max-width:1100px){.v600-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}}
@media(max-width:760px){.v600-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}


/* Website Discovery V6.2 Discovery Guidance */
.v620-feature-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.v620-tech-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}
.v620-tech-row>span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#607783}
.v620-tech-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.v620-tech-chips>span{
    display:inline-flex;align-items:center;min-height:21px;padding:3px 7px;border-radius:999px;
    background:#e8f6f8;border:1px solid #cce9ee;color:#126f84;font-size:12px;font-weight:800;line-height:1.2
}
.v620-feature-detail{margin-top:7px}
.v620-guidance{
    margin-top:14px;border:1px solid #b9dde4;border-radius:12px;background:#fff;overflow:hidden
}
.v620-guidance-head{
    display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;
    background:linear-gradient(180deg,#f5fbfc 0%,#eef8fa 100%);border-bottom:1px solid #d4e9ed
}
.v620-guidance-head .eyebrow{display:block;margin-bottom:3px}
.v620-guidance-head strong{display:block;color:#182852;font-size:16px}
.v620-guidance-head small{display:block;margin-top:3px;color:#607783;font-size:12px}
.v620-guidance-count{white-space:nowrap;background:#dff3f6;color:#16768a;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900}
.v620-guidance-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.v620-guidance-item{padding:14px 16px;border-bottom:1px solid #e4eef0;min-width:0}
.v620-guidance-item:nth-child(odd){border-right:1px solid #e4eef0}
.v620-guidance-label{display:flex;align-items:center;justify-content:space-between;gap:8px}
.v620-guidance-label>strong{color:#182852;font-size:12px}
.v620-priority{border-radius:999px;padding:3px 6px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.v620-priority.confirm{background:#fff0d8;color:#a65c00}
.v620-priority.review{background:#e7f5f7;color:#16768a}
.v620-priority.notice{background:#eeeaf7;color:#6d4c91}
.v620-finding{margin:6px 0 0;color:#55707a;font-size:12px;line-height:1.45}
.v620-question{margin:7px 0 0;color:#253b46;font-size:12px;line-height:1.5}
.v620-question b{color:#147e95}
@media(max-width:760px){
    .v620-guidance-list{grid-template-columns:1fr}
    .v620-guidance-item:nth-child(odd){border-right:0}
    .v620-guidance-head{align-items:flex-start}
}


/* Website Discovery V6.2.1 UI and language cleanup */
.v621-guidance{
    display:block !important;
    width:100% !important;
    margin:14px 0 0 !important;
    padding:0 !important;
    border:1px solid #b9dde4 !important;
    border-radius:12px !important;
    background:#fff !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
}
.v621-guidance-head{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
    padding:14px 16px !important;
    margin:0 !important;
    background:linear-gradient(180deg,#f5fbfc 0%,#eef8fa 100%) !important;
    border:0 !important;
    border-bottom:1px solid #d4e9ed !important;
}
.v621-guidance-head>div{display:block !important;min-width:0 !important}
.v621-guidance-head .eyebrow{display:block !important;margin:0 0 3px !important}
.v621-guidance-head strong{display:block !important;color:#182852 !important;font-size:16px !important;line-height:1.25 !important}
.v621-guidance-head small{display:block !important;margin:3px 0 0 !important;color:#607783 !important;font-size:12px !important;line-height:1.4 !important}
.v621-guidance-count{
    display:inline-flex !important;align-items:center !important;justify-content:center !important;
    white-space:nowrap !important;background:#dff3f6 !important;color:#16768a !important;
    border-radius:999px !important;padding:6px 9px !important;font-size:12px !important;font-weight:900 !important
}
.v621-guidance-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    gap:0 !important;
}
.v621-guidance-card{
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    padding:14px 16px !important;
    border:0 !important;
    border-bottom:1px solid #e4eef0 !important;
    background:#fff !important;
    box-sizing:border-box !important;
}
.v621-guidance-card:nth-child(odd){border-right:1px solid #e4eef0 !important}
.v621-guidance-title{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:8px !important}
.v621-guidance-title>strong{display:block !important;color:#182852 !important;font-size:12px !important;line-height:1.3 !important}
.v621-priority{
    display:inline-flex !important;align-items:center !important;white-space:nowrap !important;
    border-radius:999px !important;padding:3px 6px !important;font-size:12px !important;font-weight:900 !important;
    text-transform:uppercase !important;letter-spacing:.05em !important
}
.v621-priority.confirm{background:#fff0d8 !important;color:#a65c00 !important}
.v621-priority.review{background:#e7f5f7 !important;color:#16768a !important}
.v621-priority.notice{background:#eeeaf7 !important;color:#6d4c91 !important}
.v621-finding,.v621-question{display:block !important}
.v621-finding{margin:6px 0 0 !important;color:#55707a !important;font-size:12px !important;line-height:1.45 !important}
.v621-question{margin:7px 0 0 !important;color:#253b46 !important;font-size:12px !important;line-height:1.5 !important}
.v621-question b{color:#147e95 !important}
@media(max-width:760px){
    .v621-guidance-grid{grid-template-columns:1fr !important}
    .v621-guidance-card:nth-child(odd){border-right:0 !important}
    .v621-guidance-head{align-items:flex-start !important}
}

/* Website Discovery V6.3 Technology Footprint & Rebuild Intelligence */
.v630-rebuild{margin-top:14px;border:1px solid #d7dce9;border-radius:12px;background:#fff;overflow:hidden}
.v630-rebuild-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;background:#f7f8fc;border-bottom:1px solid #e5e8f1}
.v630-rebuild-head .eyebrow{display:block;margin-bottom:3px}
.v630-rebuild-head strong{display:block;color:#182852;font-size:15px}
.v630-rebuild-head small{display:block;margin-top:3px;color:#667384;font-size:12px}
.v630-rebuild-head>span{white-space:nowrap;border-radius:999px;background:#eceefa;color:#5a6684;padding:6px 9px;font-size:12px;font-weight:900}
.v630-rebuild-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.v630-rebuild-grid article{padding:13px 15px;border-bottom:1px solid #edf0f5;min-width:0}
.v630-rebuild-grid article:nth-child(odd){border-right:1px solid #edf0f5}
.v630-rebuild-grid article>div{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.v630-rebuild-grid article strong{color:#182852;font-size:12px}
.v630-rebuild-grid article span{border-radius:999px;background:#f0f2f8;color:#596681;padding:3px 6px;font-size:12px;font-weight:900;text-transform:uppercase}
.v630-rebuild-grid article p{margin:6px 0 0;color:#5f7079;font-size:12px;line-height:1.45}
@media(max-width:760px){.v630-rebuild-grid{grid-template-columns:1fr}.v630-rebuild-grid article:nth-child(odd){border-right:0}}

/* Website Discovery V6.3.1 Observed Technology + Sitemap Source Breakdown */
.v631-observed{margin-top:14px;border:1px solid #d7e7eb;border-radius:12px;background:#fff;overflow:hidden}
.v631-observed-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;background:#f6fbfc;border-bottom:1px solid #e1edf0}
.v631-observed-head .eyebrow{display:block;margin-bottom:3px}
.v631-observed-head strong{display:block;color:#182852;font-size:15px}
.v631-observed-head small{display:block;margin-top:3px;color:#667984;font-size:12px}
.v631-observed-head>span{white-space:nowrap;border-radius:999px;background:#e6f5f7;color:#16768a;padding:6px 9px;font-size:12px;font-weight:900}
.v631-observed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.v631-observed-grid article{padding:12px 14px;border-right:1px solid #edf3f4;border-bottom:1px solid #edf3f4;min-width:0}
.v631-observed-grid article:nth-child(3n){border-right:0}
.v631-observed-grid article>strong{display:block;color:#182852;font-size:12px}
.v631-observed-grid article>span{display:block;margin-top:4px;color:#627782;font-size:12px}
.v631-observed-grid details{margin-top:7px}
.v631-observed-grid summary{cursor:pointer;color:#147e95;font-size:12px;font-weight:900;text-transform:uppercase}
.v631-observed-grid small{display:block;margin-top:3px;color:#728891;font-size:12px;overflow-wrap:anywhere}
.v631-sitemap-breakdown{margin:10px 0;border:1px solid #cfe4e8;border-radius:10px;background:#fff;overflow:hidden}
.v631-sitemap-breakdown>summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;padding:10px 12px;color:#182852;font-size:12px;font-weight:900;background:#f4fafb}
.v631-sitemap-breakdown>summary span{color:#16768a;font-size:12px}
.v631-sitemap-table{overflow:auto;max-height:340px}
.v631-sitemap-table table{width:100%;border-collapse:collapse;font-size:12px}
.v631-sitemap-table th,.v631-sitemap-table td{padding:8px 9px;border-bottom:1px solid #edf2f3;text-align:left;vertical-align:top}
.v631-sitemap-table th{position:sticky;top:0;background:#6fc8d7;color:#18304d;text-transform:uppercase;font-size:12px;letter-spacing:.04em}
.v631-sitemap-table td:first-child{max-width:420px;overflow-wrap:anywhere}
@media(max-width:900px){.v631-observed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v631-observed-grid article:nth-child(3n){border-right:1px solid #edf3f4}.v631-observed-grid article:nth-child(2n){border-right:0}}
@media(max-width:620px){.v631-observed-grid{grid-template-columns:1fr}.v631-observed-grid article{border-right:0 !important}}

/* Website Discovery V6.4 Content Quality Intelligence */
.v640-quality{margin-top:12px;border:1px solid #c9e3e8;border-radius:12px;background:#fff;padding:12px}
.v640-quality-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px}
.v640-quality-grid>div{border:1px solid #dbe8eb;border-radius:8px;background:#f8fbfc;padding:9px 10px}
.v640-quality-grid span{display:block;color:#607783;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.v640-quality-grid strong{display:block;margin-top:4px;color:#182852;font-size:18px}
.v640-quality-estimate{margin-top:10px;padding:9px 10px;border-radius:8px;background:#edf8f5;color:#294f49;font-size:12px}
.v640-quality-estimate strong{color:#174c43}.v640-quality-estimate span{color:#607783}
.v640-quality-examples{margin-top:8px;border-top:1px solid #e2edef;padding-top:7px}
.v640-quality-examples summary{cursor:pointer;color:#147e95;font-size:12px;font-weight:900;text-transform:uppercase}
.v640-quality-examples summary span{float:right;color:#607783}
.v640-quality-examples p{margin:6px 0 0;padding:6px 0;border-bottom:1px solid #eef3f4;font-size:12px}
.v640-quality-examples p a{display:block;color:#147e95;overflow-wrap:anywhere}
.v640-quality-examples p span{display:block;margin-top:2px;color:#71848c}
@media(max-width:900px){.v640-quality-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.v640-quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Website Discovery V6.4.1 sitemap-source content profiling */
.v641-source-quality{margin-top:10px;border:1px solid #d5e7ea;border-radius:9px;overflow:hidden;background:#fff}
.v641-source-quality>summary{display:flex;justify-content:space-between;gap:10px;padding:9px 10px;cursor:pointer;background:#f3fafb;color:#182852;font-size:12px;font-weight:900;text-transform:uppercase}
.v641-source-quality>summary span{color:#16768a}
.v641-source-table{overflow:auto;max-height:330px}
.v641-source-table table{width:100%;border-collapse:collapse;font-size:12px}
.v641-source-table th,.v641-source-table td{padding:7px 8px;border-bottom:1px solid #edf2f3;text-align:left;vertical-align:top}
.v641-source-table th{position:sticky;top:0;background:#6fc8d7;color:#17304d;text-transform:uppercase;letter-spacing:.03em}
.v641-source-table td:first-child{min-width:220px;max-width:360px;overflow-wrap:anywhere}
.v641-source-table td:nth-child(4){min-width:170px}

/* Website Discovery V6.4.2 substantive-content scoring */
.v642-estimate-held{background:#fff8e9;border:1px solid #f0ddb4;color:#6d5726}
.v642-estimate-held strong{color:#7a5a16}

/* Website Intelligence V1 */
.wi-dashboard{margin:24px 0;border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(24,40,82,.10);overflow:hidden;border:1px solid #dce5e8}
.wi-hero{background:#182852;color:#fff;padding:28px 30px;display:flex;justify-content:space-between;gap:28px;align-items:center}
.wi-kicker{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#70d6cf;margin-bottom:7px}.wi-hero h2{color:#fff;margin:0 0 7px;font-size:28px;line-height:1.15}.wi-hero p{margin:0;color:#dce5ef;font-size:15px}.wi-hero-meta{display:flex;gap:12px}.wi-hero-meta span{min-width:112px;padding:12px 15px;border:1px solid rgba(255,255,255,.2);border-radius:12px;font-size:22px;font-weight:800;text-align:center;background:rgba(255,255,255,.06)}.wi-hero-meta small{display:block;margin-top:3px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#dce5ef;font-weight:700}
.wi-tabs{display:flex;background:#eef4f5;border-bottom:1px solid #d8e3e6;padding:0 18px;gap:2px}.wi-tabs button{appearance:none;border:0;background:transparent;padding:16px 18px;font-size:14px;font-weight:800;color:#51616d;cursor:pointer;border-bottom:3px solid transparent}.wi-tabs button:hover,.wi-tabs button.active{color:#182852;border-bottom-color:#1aa8a0;background:#fff}
.wi-panel{display:none;padding:26px 30px 30px}.wi-panel.active{display:block}.wi-section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:20px}.wi-section-heading span{display:block;color:#178e89;font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:800;margin-bottom:5px}.wi-section-heading h3{margin:0;color:#182852;font-size:22px}.wi-section-heading p{margin:0;max-width:420px;color:#667680;font-size:14px;line-height:1.5;text-align:right}
.wi-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.wi-metric{padding:18px;border:1px solid #dce5e8;border-radius:12px;background:#f8fbfb;min-height:112px}.wi-metric>span{display:block;color:#5a6973;font-size:13px;font-weight:750}.wi-metric strong{display:block;color:#182852;font-size:31px;line-height:1;margin:12px 0 8px}.wi-metric small{font-size:12px;color:#7a8891}.wi-callout{margin-top:16px;padding:14px 17px;border-left:4px solid #1aa8a0;background:#eef8f7;border-radius:8px;display:flex;gap:10px;align-items:baseline}.wi-callout strong{color:#182852;white-space:nowrap}.wi-callout span{color:#52636d;font-size:13px}
.wi-guidance-list{display:grid;gap:10px}.wi-guidance-list article{display:grid;grid-template-columns:minmax(220px,.7fr) 1.3fr;gap:24px;padding:15px 17px;border:1px solid #dce5e8;border-radius:10px;align-items:center}.wi-guidance-list article strong{display:block;color:#182852;font-size:15px}.wi-guidance-list article span{display:block;color:#64747e;font-size:12px;margin-top:3px}.wi-guidance-list article p{margin:0;color:#43545f;font-size:14px;line-height:1.45}.wi-tech-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wi-tech-grid article{padding:15px 17px;border:1px solid #dce5e8;border-radius:10px}.wi-tech-grid article>span{display:block;font-size:12px;color:#71808a;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.wi-tech-grid article>strong{display:block;color:#182852;font-size:16px;margin:5px 0 9px}.wi-tech-grid article em{display:inline-block;font-style:normal;background:#e9f5f4;color:#176e6a;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:750;margin:2px 3px 2px 0}.wi-tech-grid article small{color:#71808a}.wi-technical-gate{display:flex;justify-content:space-between;gap:24px;align-items:center;background:#f5f8f9;border:1px solid #dce5e8;border-radius:12px;padding:20px}.wi-technical-gate strong{color:#182852;font-size:16px}.wi-technical-gate p{margin:5px 0 0;color:#61727c;font-size:13px}.wi-empty{padding:18px;color:#6b7a84;background:#f7fafb;border-radius:10px}
#discovery-form .website-analysis-summary,#discovery-form .v5-evidence-card,#discovery-form .classification-audit-card{display:none}#discovery-form.wi-show-legacy .website-analysis-summary,#discovery-form.wi-show-legacy .v5-evidence-card,#discovery-form.wi-show-legacy .classification-audit-card{display:block}
.estimate-wi-card{padding:0!important;overflow:hidden}.estimate-wi-card>summary{list-style:none;cursor:pointer;padding:18px 22px;background:#182852;color:#fff;display:flex;justify-content:space-between;align-items:center}.estimate-wi-card>summary::-webkit-details-marker{display:none}.estimate-wi-card>summary strong{display:block;color:#fff;font-size:18px}.estimate-wi-card>summary .eyebrow{color:#70d6cf}.estimate-wi-card>summary .muted{color:#d4dce7}.estimate-wi-card>summary .estimate-record-meta{color:#fff}.estimate-wi-body{padding:20px 22px}.estimate-wi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.estimate-wi-grid div{background:#f4f8f9;border:1px solid #dce5e8;border-radius:10px;padding:14px}.estimate-wi-grid span{display:block;color:#65757f;font-size:12px;font-weight:700}.estimate-wi-grid strong{display:block;color:#182852;font-size:24px;margin-top:5px}.estimate-wi-body>.btn{margin-top:16px}
@media(max-width:900px){.wi-hero,.wi-section-heading,.wi-technical-gate{align-items:flex-start;flex-direction:column}.wi-section-heading p{text-align:left}.wi-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wi-tech-grid{grid-template-columns:1fr}.wi-guidance-list article{grid-template-columns:1fr}.estimate-wi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wi-tabs{overflow-x:auto;padding:0}.wi-tabs button{white-space:nowrap}}
@media(max-width:560px){.wi-panel,.wi-hero{padding:20px}.wi-hero-meta{width:100%}.wi-hero-meta span{flex:1;min-width:0}.wi-metric-grid,.estimate-wi-grid{grid-template-columns:1fr}.wi-callout{align-items:flex-start;flex-direction:column}}

/* =========================================================
   Website Intelligence V1.1 - Visual Hierarchy
   Presentation only. Analyzer and pricing logic unchanged.
   ========================================================= */
.wi-tabs{padding:8px 12px;gap:7px;background:#e7eff2;border-bottom:1px solid #cddce1}
.wi-tabs button{position:relative;min-height:46px;padding:12px 18px;border:1px solid transparent;border-radius:9px;background:transparent;color:#4d616d;letter-spacing:.01em}
.wi-tabs button:hover{background:#f7fbfc;border-color:#c8dadd;color:#182852}
.wi-tabs button.active{background:#182852;color:#fff;border-color:#182852;box-shadow:0 5px 13px rgba(24,40,82,.18)}
.wi-tabs button.active:after{content:"";position:absolute;left:15px;right:15px;bottom:-5px;height:4px;border-radius:4px;background:#20b6ad}

.wi-metric{position:relative;overflow:hidden;padding:20px 18px 17px;border-top:5px solid #315a8d;background:linear-gradient(180deg,#fff 0%,#f7fafb 100%);box-shadow:0 5px 14px rgba(24,40,82,.045)}
.wi-metric:before{content:"";position:absolute;right:-22px;top:-26px;width:88px;height:88px;border-radius:50%;background:rgba(49,90,141,.06)}
.wi-metric strong{font-size:34px;color:#244a78}.wi-metric>span{color:#344d60;font-size:13px}.wi-metric small{font-size:12px;line-height:1.35}
.wi-metric-meaningful_content{border-top-color:#16aaa2;background:linear-gradient(180deg,#f2fbfa 0%,#fff 100%);box-shadow:0 7px 18px rgba(22,170,162,.10)}
.wi-metric-meaningful_content strong{color:#087f79}.wi-metric-meaningful_content:before{background:rgba(22,170,162,.08)}
.wi-metric-blog_posts{border-top-color:#2877bd}.wi-metric-blog_posts strong{color:#1e639f}
.wi-metric-physical_locations{border-top-color:#2c9a84}.wi-metric-physical_locations strong{color:#237b6b}
.wi-metric-location_related_urls{border-top-color:#6c8396}.wi-metric-location_related_urls strong{color:#536d80}
.wi-metric-landing_pages{border-top-color:#5d72a6}.wi-metric-landing_pages strong{color:#4b6091}

.wi-guidance-list{gap:0}.wi-group-heading{margin:20px 0 8px;padding:9px 13px;border-radius:8px;background:#182852;color:#fff}.wi-group-heading:first-child{margin-top:0}.wi-group-heading span{font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#fff}
.wi-guidance-list article{margin-bottom:8px;padding:0;overflow:hidden;grid-template-columns:minmax(220px,.72fr) 1.28fr;gap:0;background:#fff;box-shadow:0 3px 10px rgba(24,40,82,.035)}
.wi-guidance-list .wi-finding{height:100%;padding:16px 17px;border-left:4px solid #1aa8a0;background:#f7fbfb}.wi-guidance-list article p{height:100%;padding:16px 18px;background:#edf8f7;color:#344e59;font-size:14px}.wi-guidance-list article p b{color:#087f79}.wi-guidance-list article strong{font-size:15px}.wi-guidance-list article span{font-size:12px;line-height:1.45}

.wi-tech-grid{gap:12px}.wi-tech-grid article{position:relative;overflow:hidden;padding:17px 18px 18px;border-top:4px solid #547493;background:#fff;box-shadow:0 4px 12px rgba(24,40,82,.04)}
.wi-tech-grid article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#547493;opacity:.35}.wi-tech-grid article>span{font-size:12px;color:#566b79}.wi-tech-grid article>strong{font-size:17px;line-height:1.35}.wi-tech-grid article em{font-size:12px;padding:5px 9px;background:#e7f5f4}
.wi-tech-grid .wi-tech-platform{border-top-color:#182852}.wi-tech-grid .wi-tech-platform:before{background:#182852}.wi-tech-grid .wi-tech-experience{border-top-color:#1aa8a0}.wi-tech-grid .wi-tech-experience:before{background:#1aa8a0}.wi-tech-grid .wi-tech-marketing{border-top-color:#2877bd}.wi-tech-grid .wi-tech-marketing:before{background:#2877bd}.wi-tech-grid .wi-tech-observed{border-top-color:#6f7d88;background:#f8fafb}.wi-tech-grid .wi-tech-observed:before{background:#6f7d88}

/* Main Website Discovery sections */
.discovery-section{padding:0!important;overflow:hidden}
.discovery-section-head{justify-content:flex-start;align-items:center;gap:15px;padding:17px 20px!important;margin:0!important;border:0!important;background:linear-gradient(105deg,#182852 0%,#213b6b 100%)}
.discovery-section-number{display:flex;align-items:center;justify-content:center;flex:0 0 43px;width:43px;height:43px;border:1px solid rgba(112,214,207,.55);border-radius:10px;background:rgba(112,214,207,.10);color:#70d6cf;font-size:15px;font-weight:900;letter-spacing:.04em}
.discovery-section-title{min-width:0}.discovery-section-head .eyebrow{color:#70d6cf}.discovery-section-head h2{color:#fff!important;margin:2px 0 4px!important;font-size:21px!important}.discovery-section-head p{max-width:820px!important;color:#d8e2ec!important;font-size:12px!important;line-height:1.5!important}
.discovery-section>.discovery-fields{padding:18px 20px 21px}
.discovery-question-card{background:#fff;border-color:#d8e4e7;box-shadow:0 3px 10px rgba(24,40,82,.035)}
.discovery-question-card>label,.discovery-question-head>label{font-size:12px}.discovery-question-card .field-help{font-size:12px;line-height:1.5;color:#647983}
.discovery-choice span{font-size:12px}.discovery-question-prominent{border-left:4px solid #1aa8a0;background:#f5fbfb}.web-review-field{border-left:4px solid #e2a640;background:#fffaf2}
.discovered-suggestion{border-left:4px solid #1aa8a0;background:#edf9f8}.discovered-label{font-size:12px;color:#087f79}.discovered-label:before{content:"WEBSITE INTELLIGENCE · ";color:#182852}.discovered-suggestion strong{font-size:13.5px}
.web-review-note{font-size:12px}.required-mark{font-size:12px}

/* Give the clean Opportunity card a little more presence without turning it into another dark section. */
.discovery-core-card{border-top:5px solid #70d6cf;box-shadow:0 8px 22px rgba(24,40,82,.07)}
.discovery-core-card>.discovery-section-head{padding:0 0 15px!important;margin:0 0 17px!important;background:transparent;border-bottom:1px solid #dce8eb!important}
.discovery-core-card>.discovery-section-head h2{color:#082f49!important}.discovery-core-card>.discovery-section-head p{color:#617783!important}.discovery-core-card>.discovery-section-head .eyebrow{color:#20a8bd}

@media(max-width:900px){.wi-guidance-list article{grid-template-columns:1fr}.wi-guidance-list .wi-finding{border-left:0;border-top:4px solid #1aa8a0}.wi-tabs button{min-height:42px;padding:10px 14px}.discovery-section-head{align-items:flex-start}.discovery-section-number{width:38px;height:38px;flex-basis:38px}}


/* =========================================================
   Website Intelligence V1.1.1 - Indigo Accent + Tab State Fix
   Presentation only. Analyzer, Discovery and pricing logic unchanged.
   ========================================================= */
:root{--wi-indigo:#4f46e5;--wi-indigo-dark:#4338ca;--wi-indigo-soft:#eef0ff}

/* Add a second accent without competing with BMG navy/teal. */
.wi-tabs button.active:after{background:linear-gradient(90deg,#20b6ad 0%,#4f46e5 100%)}
.wi-tabs button:focus-visible{outline:3px solid rgba(79,70,229,.24);outline-offset:2px}

/* Footprint gets a little more punch while the rebuild metric remains teal. */
.wi-metric-primary_pages{border-top-color:#4f46e5}.wi-metric-primary_pages strong{color:#4338ca}.wi-metric-primary_pages:before{background:rgba(79,70,229,.07)}
.wi-metric-blog_posts{border-top-color:#5b62d6}.wi-metric-blog_posts strong{color:#454bb3}.wi-metric-blog_posts:before{background:rgba(79,70,229,.06)}
.wi-metric-landing_pages{border-top-color:#6d5bd0}.wi-metric-landing_pages strong{color:#5746b3}

/* Technology uses indigo for marketing / measurement signals. */
.wi-tech-grid .wi-tech-marketing{border-top-color:#4f46e5}.wi-tech-grid .wi-tech-marketing:before{background:#4f46e5}
.wi-tech-grid .wi-tech-marketing em{background:#eef0ff;color:#4338ca}

/* Discovery group bars receive a small indigo edge so the groups separate faster. */
.wi-group-heading{position:relative;overflow:hidden}
.wi-group-heading:after{content:"";position:absolute;right:0;top:0;bottom:0;width:6px;background:#4f46e5}

/* Main Discovery section headers get a restrained indigo depth in the gradient. */
.discovery-section-head{background:linear-gradient(105deg,#182852 0%,#213b6b 72%,#34358f 100%)}
.discovery-section-number{box-shadow:inset 0 0 0 1px rgba(79,70,229,.12)}

/* Technical action can carry the new accent without changing the overall navy treatment. */
.wi-technical-gate .btn.secondary{border-color:#4f46e5;box-shadow:0 4px 12px rgba(79,70,229,.12)}
.wi-technical-gate .btn.secondary:hover{background:#4f46e5;border-color:#4f46e5;color:#fff}


/* ============================================================
   Website Intelligence V1.2 - Discovery Integration
   Detected -> Sales Confirmed -> Web Verified
   ============================================================ */
.discovery-question-status{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.wi-sales-confirmed{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:999px;background:#e8f1fb;border:1px solid #c7d9ee;color:#285d91;font-size:12px;font-weight:900;letter-spacing:.045em;text-transform:uppercase;white-space:nowrap}
.discovery-question-card.has-wi-intel{border-color:#c7dedf;box-shadow:0 4px 13px rgba(24,40,82,.05)}
.discovery-question-card.has-wi-intel:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#20b6ad 0%,#4f46e5 100%);border-radius:10px 0 0 10px}
.discovery-question-card{position:relative}

.wi-field-intel{margin-top:10px;padding:12px 13px 13px;border:1px solid #cce4e5;border-radius:10px;background:linear-gradient(135deg,#f0faf9 0%,#f5f6ff 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.wi-field-intel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}
.wi-field-intel-head>span{color:#087f79;font-size:12px;font-weight:950;letter-spacing:.075em;text-transform:uppercase}
.wi-field-intel .analysis-confidence{font-size:12px}
.wi-detected-answer{display:flex;align-items:baseline;gap:8px;margin:3px 0 5px}.wi-detected-answer small{color:#657983;font-size:12px;font-weight:800;text-transform:uppercase}.wi-detected-answer strong{color:#182852;font-size:16px}
.wi-field-headline{display:block;color:#182852;font-size:13px;line-height:1.4;margin:5px 0}
.wi-field-chips{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}
.wi-field-chips span{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#fff;border:1px solid #ccd7f6;color:#4338ca;font-size:12px;font-weight:850}
.wi-field-finding,.wi-field-question{margin:6px 0 0;font-size:12px;line-height:1.48;color:#536872}
.wi-field-question{padding-top:6px;border-top:1px solid rgba(24,40,82,.08);color:#344d59}.wi-field-question b{color:#087f79}
.wi-field-actions{display:flex;justify-content:flex-end;margin-top:9px}
.wi-field-intel .use-detected-btn{background:#182852;color:#fff;border-color:#182852;padding:6px 10px;font-size:12px}.wi-field-intel .use-detected-btn:hover{background:#4f46e5;border-color:#4f46e5}.wi-field-intel .use-detected-btn.applied{background:#1aa8a0;border-color:#1aa8a0}

.wi-integration-suggestions{grid-column:1/-1;margin:2px 0 16px;border:1px solid #cbdde7;border-radius:12px;background:#f8fbfc;overflow:hidden}
.wi-integration-suggestions-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;background:linear-gradient(90deg,#182852 0%,#263c75 72%,#4f46e5 100%);color:#fff}
.wi-integration-suggestions-head span{display:block;color:#70d6cf;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.wi-integration-suggestions-head strong{display:block;color:#fff;font-size:14px;margin-top:2px}.wi-integration-suggestions-head p{margin:3px 0 0;color:#dbe3ef;font-size:12px}.wi-integration-suggestions-head>em{font-style:normal;white-space:nowrap;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.12);font-size:12px;font-weight:900;text-transform:uppercase}
.wi-system-suggestion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
.wi-system-suggestion-grid article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #dce6e9;border-radius:9px;background:#fff}
.wi-system-suggestion-grid article>div{min-width:0}.wi-system-suggestion-grid article strong{display:block;color:#182852;font-size:12px}.wi-system-suggestion-grid article span{display:block;color:#70818a;font-size:12px;margin-top:2px}.wi-system-suggestion-grid article.already-added{background:#f0f8f6;border-color:#cfe6df}
.wi-add-detected-system{appearance:none;border:1px solid #4f46e5;background:#eef0ff;color:#4338ca;border-radius:7px;padding:6px 8px;font-size:12px;font-weight:900;cursor:pointer;white-space:nowrap}.wi-add-detected-system:hover{background:#4f46e5;color:#fff}.wi-add-detected-system:disabled{opacity:.7;cursor:default}
.wi-system-added{display:inline-flex!important;margin:0!important;padding:4px 7px;border-radius:999px;background:#dff2eb;color:#25745e!important;font-size:12px!important;font-weight:900;text-transform:uppercase;white-space:nowrap}

@media(max-width:800px){.wi-system-suggestion-grid{grid-template-columns:1fr}.wi-integration-suggestions-head{align-items:flex-start;flex-direction:column}.wi-system-suggestion-grid article{align-items:flex-start;flex-direction:column}.discovery-question-status{justify-content:flex-start}}

/* =========================================================
   Website Intelligence V1.2.1 - Guided Discovery
   ========================================================= */

/* Estimate wizard regression: keep the navigation controls on the page surface,
   not inside a large white/sticky footer block. */
.wizard-actions{
    position:relative;
    bottom:auto;
    margin-top:18px;
    padding:10px 0 0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
}

/* Guided Discovery progress */
.discovery-progress-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    margin:0 0 18px;
    padding:17px 20px;
    border:1px solid #cfe1e7;
    border-left:5px solid var(--cyan);
    border-radius:14px;
    background:linear-gradient(110deg,#f5fbfc 0%,#f8f8ff 100%);
    box-shadow:0 8px 22px rgba(6,40,63,.05);
}
.discovery-progress-top>div:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.discovery-progress-top .eyebrow{color:#0a8998;font-size:12px;letter-spacing:.13em}
.discovery-progress-top strong{color:var(--navy);font-size:17px;line-height:1.25}
.discovery-progress-top span{color:#526b77;font-size:12px;line-height:1.5}
.discovery-progress-top-stats{
    flex:0 0 auto;
    min-width:142px;
    padding:14px 18px;
    border:1px solid #d8dcf7;
    border-radius:11px;
    background:#fff;
    text-align:center;
}
.discovery-progress-top-stats b{display:block;color:#4f46e5;font-size:24px;line-height:1.05}
.discovery-progress-top-stats small{display:block;margin-top:5px;color:#657780;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.discovery-progress-top-stats span{display:block!important;margin-top:6px;color:#0a8998!important;font-size:12px!important;font-weight:800;line-height:1.25!important}

.discovery-nav a{
    grid-template-columns:30px minmax(0,1fr) 10px;
}
.discovery-nav-copy{display:flex!important;align-items:flex-start!important;justify-content:center!important;width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;flex-direction:column;min-width:0;color:inherit!important}
.discovery-nav-copy b{overflow:hidden;width:100%;font-size:12px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.discovery-nav-copy small{display:block;margin-top:3px;color:#8fb1bd;font-size:12px;font-weight:800;line-height:1.15;text-transform:uppercase;letter-spacing:.04em}
.discovery-nav a.active .discovery-nav-copy{background:transparent!important;color:inherit!important}
.discovery-nav a.active .discovery-nav-copy small{color:#5f7882}
.discovery-nav-state{display:block;width:8px;height:8px;border-radius:50%;background:#6f8b98;box-shadow:0 0 0 3px rgba(255,255,255,.05)}
.discovery-nav a[data-progress-state="complete"] .discovery-nav-state{background:#64d69a;box-shadow:0 0 0 3px rgba(100,214,154,.14)}
.discovery-nav a[data-progress-state="progress"] .discovery-nav-state{background:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.14)}
.discovery-nav a[data-progress-state="attention"] .discovery-nav-state{background:#f2b34b;box-shadow:0 0 0 3px rgba(242,179,75,.16)}
.discovery-nav a[data-progress-state="attention"] .discovery-nav-copy small{color:#f3c873}
.discovery-nav a.active[data-progress-state="attention"] .discovery-nav-copy small{color:#a8660b}

.discovery-progress-side{
    margin-top:15px;
    padding:15px 10px 5px;
    border-top:1px solid rgba(255,255,255,.16);
}
.discovery-progress-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.discovery-progress-side-head strong{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.discovery-progress-side-head span{color:#80e0e8;font-size:12px;font-weight:900}
.discovery-progress-track{height:7px;margin:9px 0;border-radius:999px;background:rgba(255,255,255,.13);overflow:hidden}
.discovery-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),#4f46e5);transition:width .2s ease}
.discovery-progress-side p{min-height:34px;margin:0 0 10px;color:#bcd1d8;font-size:12px;line-height:1.45}
.discovery-progress-side .btn{width:100%;padding:9px 8px;border-color:rgba(255,255,255,.18);font-size:12px}

.discovery-review-focus{animation:guidedDiscoveryFocus 1.6s ease}
@keyframes guidedDiscoveryFocus{
    0%,100%{box-shadow:0 10px 26px rgba(6,40,63,.07)}
    25%,70%{box-shadow:0 0 0 4px rgba(79,70,229,.18),0 14px 34px rgba(6,40,63,.12)}
}

/* "Unsure" is a safe completion path for Sales and explicitly hands the
   technical decision to Web Review. */
.discovery-choice:has(input[value="Unsure"]:checked){border-color:#d7a34a;background:#fff9ee}
.discovery-choice:has(input[value="Unsure"]:checked) span{color:#8b5b0d}

@media(max-width:1050px){
    .discovery-shell{grid-template-columns:220px minmax(0,1fr);gap:18px}
    .discovery-nav{padding:14px}
}
@media(max-width:850px){
    .discovery-progress-top{align-items:flex-start;flex-direction:column}
    .discovery-progress-top-stats{width:100%}
    .discovery-progress-side{display:none}
    .discovery-nav a{grid-template-columns:28px minmax(105px,1fr) 8px}
    .discovery-nav-copy b{white-space:normal}
}

/* =========================================================
   Website Intelligence V1.2.2 - Opportunity + Analysis UX
   ========================================================= */
.discovery-core-card{border-top:0!important;box-shadow:0 8px 22px rgba(24,40,82,.07)}
.discovery-core-card>.discovery-section-head{display:flex!important;justify-content:flex-start!important;align-items:center!important;gap:15px!important;padding:17px 20px!important;margin:0!important;border:0!important;background:linear-gradient(105deg,#182852 0%,#213b6b 72%,#34358f 100%)!important}
.discovery-core-card>.discovery-section-head .discovery-section-number{display:flex}
.discovery-core-card>.discovery-section-head .eyebrow{color:#70d6cf!important}
.discovery-core-card>.discovery-section-head h2{margin:2px 0 4px!important;color:#fff!important;font-size:21px!important}
.discovery-core-card>.discovery-section-head p{max-width:820px!important;margin:0!important;color:#d8e2ec!important;font-size:12px!important;line-height:1.5!important}
.discovery-core-grid{padding:18px 20px 21px;align-items:stretch}
.discovery-core-grid>.discovery-question-card{min-height:0;padding:17px 18px}
.discovery-core-grid>.discovery-question-card .field-help{margin-top:8px;font-size:12px;line-height:1.5}
.discovery-website-analyzer{border-left:4px solid #4f46e5;background:linear-gradient(180deg,#fff 0%,#fafaff 100%)}
.website-analyze-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}
.website-analyze-actions .website-analyze-btn{margin:0}
.website-analyze-note{max-width:300px;color:#657684;font-size:12px;line-height:1.4}
.website-analysis-inline-status{margin-top:12px;padding:11px 13px;border:1px solid #f0cf92;border-left:4px solid #e2a640;border-radius:9px;background:#fffaf2;color:#5c4b32;font-size:12px;line-height:1.5}
.website-analysis-inline-status strong{color:#8b5513}
.website-analyze-btn:disabled{cursor:wait;opacity:.72}
@media(max-width:900px){.discovery-core-card>.discovery-section-head{align-items:flex-start!important}.discovery-core-grid{padding:16px}.website-analyze-actions{align-items:flex-start;flex-direction:column}}

/* Website Intelligence V1.2.4 - non-blocking background analysis status */
.website-analysis-progress{
    position:fixed;
    inset:auto 24px 24px auto;
    z-index:1000;
    display:block;
    width:min(430px,calc(100vw - 32px));
    padding:0;
    background:transparent;
    backdrop-filter:none;
    pointer-events:none;
}
.website-analysis-progress-card{
    width:100%;
    padding:17px 19px;
    border:1px solid #bfdde3;
    border-left:4px solid #4f46e5;
    border-radius:14px;
    background:#fff;
    box-shadow:0 18px 48px rgba(6,40,63,.2);
    pointer-events:auto;
}
.website-analysis-progress-head h3{font-size:17px}
.website-analysis-progress .analysis-spinner{width:24px;height:24px}
.website-analysis-progress .analysis-progress-track{height:6px;margin:13px 0 9px}
.website-analysis-progress .analysis-progress-stage{font-size:12px}
.website-analysis-progress-card p{font-size:12px}
@media(max-width:700px){
    .website-analysis-progress{right:16px;bottom:16px;left:16px;width:auto}
}

/* =========================================================
   Website Intelligence V1.2.5 - Discovery Management
   ========================================================= */
.discovery-row-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    white-space:nowrap;
}

.discovery-delete-link{
    color:#9d3e3e;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}
.discovery-delete-link:hover{
    color:#7f3030;
    text-decoration:underline;
}

.discovery-delete-card{
    max-width:880px;
    margin:0 auto;
    padding:28px;
    border-color:#ead1d1;
    background:linear-gradient(180deg,#fffdfd 0%,#fffafa 100%);
}
.discovery-delete-summary{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:20px;
}
.discovery-delete-summary>div{
    padding:14px 16px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#fff;
}
.discovery-delete-summary span{
    display:block;
    margin-bottom:5px;
    color:var(--muted);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.055em;
}
.discovery-delete-summary strong{
    color:var(--navy);
    font-size:15px;
}
.discovery-delete-warning{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-bottom:20px;
    padding:15px 17px;
    border:1px solid #f0d5b0;
    border-left:4px solid #d9932e;
    border-radius:10px;
    background:#fff8ec;
    color:#665331;
}
.discovery-delete-warning strong{color:#8a561a}

@media(max-width:760px){
    .discovery-row-actions{align-items:flex-start;flex-direction:column;gap:6px}
    .discovery-delete-summary{grid-template-columns:1fr}
}


/* Website Intelligence V1.2.6 - Analysis Recovery + Web Verification */
.discovery-status.verified{background:#e9e7ff;color:#4338ca;border-color:#c7c4ff}
.discovery-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.discovery-review-btn{background:#4f46e5!important;border-color:#4f46e5!important;color:#fff!important;box-shadow:0 6px 16px rgba(79,70,229,.16)}
.discovery-review-btn:hover{background:#4338ca!important;border-color:#4338ca!important}
.discovery-continue-btn{background:#11abc0!important;border-color:#11abc0!important;color:#fff!important}
.discovery-delete-link{display:inline-flex;align-items:center;min-height:34px;padding:0 10px;border:1px solid #e4b9b9;border-radius:8px;color:#a44747!important;background:#fff7f7;text-decoration:none;font-weight:800;font-size:12px}
.discovery-delete-link:hover{background:#fff0f0;border-color:#cf8989}
.discovery-review-sticky{border-top:4px solid #4f46e5;background:linear-gradient(90deg,#f5f4ff 0,#fff 48%)}
.discovery-verify-submit-btn{background:#4f46e5!important;border-color:#4f46e5!important;color:#fff!important}
.discovery-review-field{grid-template-columns:minmax(165px,.78fr) minmax(175px,1fr) minmax(175px,1fr) minmax(220px,1.08fr)!important;gap:10px!important}
.discovery-detected-value,.discovery-sales-value,.discovery-verified-control{border-radius:9px;padding:10px 11px;min-width:0}
.discovery-detected-value{background:#edfbfa;border:1px solid #bfe7e2}
.discovery-detected-value>span{display:block;color:#0c8c8b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}
.discovery-sales-value{background:#f3f3ff;border:1px solid #d9d8ff}
.discovery-sales-value>span{color:#4f46e5!important}
.discovery-verified-control{background:#f4f7fb;border:1px solid #cbd8e5}
.discovery-verified-control>span{color:#0c2f46!important}
.verified-ready-card{margin-top:18px;padding:22px 24px;border:1px solid #c7c4ff;border-left:5px solid #4f46e5;background:linear-gradient(90deg,#f3f2ff,#fff);display:flex;justify-content:space-between;gap:24px;align-items:center}
.verified-ready-card h2{margin:3px 0 5px;color:#172852}.verified-ready-card p{margin:0;color:#5c6f7d}.review-submit-card{border-top:4px solid #4f46e5}
.analysis-progress-actions{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
.analysis-progress-text-close{border:0;background:transparent;color:#607583;font-weight:800;cursor:pointer;padding:8px 4px}
@media(max-width:1100px){.discovery-review-field{grid-template-columns:1fr 1fr!important}.discovery-review-label{grid-column:1/-1}}
@media(max-width:720px){.discovery-review-field{grid-template-columns:1fr!important}.verified-ready-card{align-items:flex-start;flex-direction:column}}

/* Website Intelligence V1.2.14 - Guided Discovery polish */
.discovery-section>.discovery-fields{
  background:linear-gradient(180deg,#f7fbfc 0%,#f4f8fa 100%);
  border-top:1px solid #dce8eb;
}
.discovery-question-card{
  border-top:3px solid #dbe6f5;
  box-shadow:0 5px 14px rgba(24,40,82,.05);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.discovery-question-card:nth-child(4n+1){border-top-color:#c7d2fe}
.discovery-question-card:nth-child(4n+2){border-top-color:#bfe8e4}
.discovery-question-card:nth-child(4n+3){border-top-color:#cde6f3}
.discovery-question-card:nth-child(4n){border-top-color:#d8d7fb}
.discovery-question-card:hover{box-shadow:0 7px 18px rgba(24,40,82,.075)}
.discovery-question-card>label,.discovery-question-head>label{
  color:#102f4a;
  font-size:12.5px!important;
  font-weight:850;
  letter-spacing:.005em;
}
.discovery-question-card .field-help{color:#5e7481!important;font-size:12px!important}
.discovery-option-grid label,.discovery-radio-grid label{
  background:#fbfdfe;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.discovery-option-grid label:hover,.discovery-radio-grid label:hover{
  border-color:#a9d5dd;
  background:#f4fbfc;
  box-shadow:0 2px 7px rgba(14,116,144,.06);
}
.discovery-question-card.has-wi-intel{
  border-top-color:#1fb8ad!important;
  border-color:#bddfe0;
  background:linear-gradient(180deg,#ffffff 0%,#fbfefe 100%);
}
.wi-field-intel{
  margin-top:12px!important;
  padding:14px 15px 15px!important;
  border-color:#b8dddd!important;
  background:linear-gradient(135deg,#eefaf8 0%,#f4f5ff 100%)!important;
}
.wi-field-intel .use-detected-btn{
  min-height:38px;
  padding:9px 14px!important;
  border-radius:9px;
  font-size:12px!important;
  font-weight:900;
  letter-spacing:.01em;
}
.wi-field-intel .use-detected-btn:before{content:"✓ ";font-weight:950}
.discovery-question-status .wi-sales-confirmed{padding:4px 8px;font-size:12px}
.discovery-section-title h2{letter-spacing:-.015em}
.discovery-section-title p{max-width:900px!important}
@media(max-width:900px){
  .wi-field-intel .use-detected-btn{width:100%;justify-content:center}
}

/* Website Intelligence V1.2.15 - Guided Discovery UX */
.discovery-section{--section-accent:#4f46e5;--section-tint:#f7f7ff}
.discovery-section-project{--section-accent:#4f46e5;--section-tint:#f7f6ff}
.discovery-section-size{--section-accent:#1389a8;--section-tint:#f3fbfd}
.discovery-section-creative{--section-accent:#16a39a;--section-tint:#f3fbfa}
.discovery-section-functionality{--section-accent:#2578b8;--section-tint:#f4f9fd}
.discovery-section-integrations{--section-accent:#6553c7;--section-tint:#f7f5fd}
.discovery-section-administration{--section-accent:#36849b;--section-tint:#f5fafb}
.discovery-section-final{--section-accent:#596b7a;--section-tint:#f7f9fa}
.discovery-section>.discovery-fields{background:linear-gradient(180deg,var(--section-tint) 0%,#fff 100%)}
.discovery-section>.discovery-fields>.discovery-question-card{border-top-color:color-mix(in srgb,var(--section-accent) 58%,#fff)!important;background:linear-gradient(180deg,#fff 0%,var(--section-tint) 100%)}
.discovery-section>.discovery-section-head{box-shadow:inset 5px 0 0 color-mix(in srgb,var(--section-accent) 72%,#fff)}
.discovery-section .discovery-question-head>label,.discovery-section .discovery-question-card>label{font-size:13px!important}
.discovery-section .field-help{font-size:12px!important;line-height:1.5!important}
.discovery-sidebar-save-state{display:flex;align-items:center;gap:7px;margin:1px 0 8px;color:#bcd1d8;font-size:12px}
.discovery-sidebar-save-state span{width:8px;height:8px;border-radius:50%;background:#61cf91;box-shadow:0 0 0 3px rgba(97,207,145,.13)}
.discovery-sidebar-save-state.is-unsaved{color:#ffd899}.discovery-sidebar-save-state.is-unsaved span{background:#f1ad3c;box-shadow:0 0 0 3px rgba(241,173,60,.14)}
.discovery-progress-side .discovery-sidebar-save{width:100%;min-height:38px;margin:0 0 8px;background:#15a9be!important;border-color:#15a9be!important;color:#fff!important;font-size:12px!important;font-weight:900}
.discovery-progress-side .discovery-sidebar-save:hover{background:#0d91a5!important;border-color:#0d91a5!important}
.wi-field-intel .use-detected-btn{min-height:44px!important;padding:11px 17px!important;font-size:12px!important}
@media(max-width:900px){.discovery-section>.discovery-section-head{box-shadow:inset 4px 0 0 color-mix(in srgb,var(--section-accent) 72%,#fff)}}

/* Website Intelligence V1.2.16 - Sidebar Navigation Polish */
.discovery-nav a{
  min-height:52px;
  align-items:center;
}
.discovery-nav-copy b{
  overflow:visible!important;
  display:-webkit-box;
  width:100%;
  white-space:normal!important;
  text-overflow:clip!important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-height:1.15!important;
}
.discovery-nav-copy small{margin-top:4px!important}
.discovery-nav a[data-progress-state="complete"] .discovery-nav-copy small{
  color:#69dda0!important;
}
.discovery-nav a.active[data-progress-state="complete"] .discovery-nav-copy small{
  color:#21855e!important;
}
.discovery-nav a[data-progress-state="progress"] .discovery-nav-copy small{
  color:#8ec5ff!important;
}
.discovery-nav a.active[data-progress-state="progress"] .discovery-nav-copy small{
  color:#2563a9!important;
}
@media(max-width:1050px) and (min-width:851px){
  .discovery-shell{grid-template-columns:235px minmax(0,1fr)}
  .discovery-nav{padding:14px 13px}
}


/* Website Intelligence V1.2.17 - Discovery hierarchy and conditional polish */
.discovery-field-group-label{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:12px;
  margin:7px 2px -1px;
  color:var(--section-accent,#1389a8);
  font-size:12px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.discovery-field-group-label:first-child{margin-top:0}
.discovery-field-group-label:after{
  content:"";
  height:1px;
  flex:1;
  background:linear-gradient(90deg,color-mix(in srgb,var(--section-accent,#1389a8) 35%,#fff),transparent);
}
.discovery-section-final .discovery-field-group-label{color:#526b78}
.discovery-section-final .discovery-question-card .field-help{font-style:italic}
.discovery-question-card[data-discovery-field="homepage_concepts"] .required-mark,.discovery-question-card[data-discovery-field="internal_concepts"] .required-mark,.discovery-question-card[data-discovery-field="mobile_concepts"] .required-mark{display:inline-flex}
@media(max-width:720px){.discovery-field-group-label{margin-top:10px}}

/* Website Intelligence V1.2.18 - Forms grouping correction */
.discovery-field-group-label{display:none!important}
.discovery-form-cluster{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 16px;
  padding:16px;
  border:1px solid #b8dce8;
  border-top:4px solid #2578b8;
  border-radius:14px;
  background:linear-gradient(180deg,#eef8fc 0%,#f8fcfe 100%);
  box-shadow:0 8px 22px rgba(25,91,121,.06);
}
.discovery-form-cluster-head{
  grid-column:1/-1;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding:0 2px 3px;
}
.discovery-form-cluster-head>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.discovery-form-cluster-head span{
  color:#167a96;
  font-size:12px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.discovery-form-cluster-head strong{color:#0b2f46;font-size:16px;line-height:1.1}
.discovery-form-cluster-head p{margin:0;color:#5d7280;font-size:12px;line-height:1.4;text-align:right;max-width:430px}
.discovery-form-cluster>.discovery-question-card{
  border-top-color:#70bed3!important;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(25,91,121,.035);
}
.discovery-form-cluster>.discovery-question-wide{grid-column:1/-1}
@media(max-width:720px){
  .discovery-form-cluster{grid-template-columns:1fr;padding:12px}
  .discovery-form-cluster-head{align-items:flex-start;flex-direction:column;gap:5px}
  .discovery-form-cluster-head p{text-align:left;max-width:none}
}

/* Website Intelligence V1.2.19 - Website identity + Project Basics balance */
.website-identity-card{
    margin-top:18px;
    padding:14px;
    border:1px solid #cfe4e6;
    border-radius:12px;
    background:linear-gradient(135deg,#f4fbfb 0%,#f7f7ff 100%);
    box-shadow:inset 4px 0 0 #18a89f;
}
.website-identity-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:12px;
}
.website-identity-head span{
    color:#087f82;
    font-size:12px;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.website-identity-head em{
    padding:4px 8px;
    border-radius:999px;
    background:#dff4e8;
    color:#247044;
    font-size:12px;
    font-style:normal;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.website-identity-head em.muted-state{background:#edf2f5;color:#6b7d89}
.website-identity-body{
    display:grid;
    grid-template-columns:minmax(120px,42%) 1fr;
    align-items:center;
    gap:16px;
}
.website-identity-logo{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:104px;
    padding:14px;
    border:1px solid #dce9eb;
    border-radius:10px;
    background:#fff;
}
.website-identity-logo img{
    display:block;
    max-width:100%;
    max-height:86px;
    width:auto;
    height:auto;
    color:inherit;
    stroke:currentColor;
}
.website-identity-placeholder{
    background:linear-gradient(135deg,#182852,#34358f);
    color:#70d6cf;
    font-size:28px;
    font-weight:900;
    letter-spacing:.04em;
}
.website-identity-body>div:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.website-identity-body strong{color:#17304d;font-size:14px;line-height:1.25}
.website-identity-body span{color:#516b7b;font-size:12px;overflow-wrap:anywhere}
.website-identity-body small{margin-top:3px;color:#71838d;font-size:12px;line-height:1.45}

.discovery-project-planning-stack{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:14px;
    min-width:0;
    align-self:stretch;
}
.discovery-project-planning-stack>.discovery-question-card{height:auto;min-height:0}
.discovery-section-project .discovery-project-planning-stack [data-discovery-field="project_type"]{
    flex:0 0 auto;
}
.discovery-section-project .discovery-project-planning-stack [data-discovery-field="desired_launch"]{
    flex:0 0 auto;
}

@media(max-width:900px){
    .website-identity-body{grid-template-columns:1fr}
    .website-identity-logo{min-height:90px}
}

/* Web Review V1.3.0 - exception-management workspace */
.web-review-resolution-board{margin:0 0 16px;padding:18px;border:1px solid #d7e5e9;border-radius:13px;background:linear-gradient(135deg,#f7fbfc 0%,#f7f7ff 100%);box-shadow:0 6px 18px rgba(10,42,65,.04)}
.resolution-board-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.resolution-board-head h2{margin:3px 0 5px;color:#182852;font-size:18px}.resolution-board-head p{margin:0;max-width:760px;color:#5c707c;font-size:12px;line-height:1.55}
.resolution-counts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:15px}.resolution-counts span{padding:10px;border:1px solid #e1e9ec;border-radius:9px;background:#fff;color:#61737d;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.resolution-counts strong{display:block;margin-bottom:2px;color:#182852;font-size:18px;letter-spacing:0}.resolution-counts .ready{border-top:3px solid #45a46b}.resolution-counts .decision{border-top:3px solid #d8aa3d}.resolution-counts .technical{border-top:3px solid #34358f}.resolution-counts .production{border-top:3px solid #3184a0}.resolution-counts .future{border-top:3px solid #7557a8}.resolution-counts .blocking{border-top:3px solid #b94b4b}
.discovery-review-field{grid-template-columns:minmax(150px,.65fr) minmax(180px,.9fr) minmax(180px,.9fr) minmax(210px,1fr)!important}.review-resolution-control{grid-column:2/-1;display:grid;grid-template-columns:210px 1fr;gap:8px;align-items:center;padding:8px 10px;border-radius:8px;background:#f7fafb}.review-resolution-control>span{grid-column:1/-1;color:#667d88;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.review-resolution-control select,.review-resolution-control input,.integration-resolution select,.integration-resolution input{width:100%;min-height:36px;border:1px solid #d4e0e4;border-radius:7px;background:#fff;font-size:12px}
.review-integration-item.technical-risk{border-left:4px solid #34358f}.integration-review-body{min-width:0}.integration-resolution{display:grid;grid-template-columns:210px 1fr;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #e3eaed}
@media(max-width:1100px){.resolution-counts{grid-template-columns:repeat(3,1fr)}.discovery-review-field{grid-template-columns:1fr 1fr!important}.review-resolution-control{grid-column:1/-1}}
@media(max-width:700px){.resolution-board-head{flex-direction:column}.resolution-counts{grid-template-columns:1fr 1fr}.discovery-review-field{grid-template-columns:1fr!important}.review-resolution-control,.integration-resolution{grid-template-columns:1fr}.review-resolution-control{grid-column:auto}}

/* Web Review V1.3.2 - exception-first sidebar workspace */
.web-review-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px;align-items:start;margin-top:18px}
.web-review-sidebar{position:sticky;top:78px;padding:16px 13px;border-radius:15px;background:#0b3854;color:#fff;box-shadow:0 10px 28px rgba(8,44,66,.13)}
.web-review-side-title{padding:2px 8px 12px;border-bottom:1px solid rgba(255,255,255,.15)}.web-review-side-title span{display:block;color:#72d6df;font-size:12px;font-weight:950;letter-spacing:.15em;text-transform:uppercase}.web-review-side-title strong{display:block;margin-top:4px;font-size:15px}
.web-review-nav{display:flex;flex-direction:column;gap:4px;padding:10px 0}.web-review-nav a{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;min-height:48px;padding:7px 8px;border-radius:9px;color:#eaf5f8;text-decoration:none}.web-review-nav a:hover{background:rgba(255,255,255,.08)}.web-review-nav-num{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.13);font-size:12px;font-weight:900}.web-review-nav b{display:block;font-size:12px;line-height:1.15}.web-review-nav small{display:block;margin-top:3px;color:#a9c4cf;font-size:12px;font-weight:900;letter-spacing:.04em}.web-review-nav a[data-review-state="attention"] small{color:#ffd17b}.web-review-nav a[data-review-state="complete"] small{color:#6fdda1}
.web-review-side-progress{padding:12px 8px;border-top:1px solid rgba(255,255,255,.15)}.web-review-side-progress>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:12px;letter-spacing:.05em}.web-review-progress-track{height:6px;margin-top:8px;border-radius:99px;background:rgba(255,255,255,.15);overflow:hidden}.web-review-progress-track i{display:block;height:100%;border-radius:99px;background:#20b2c2}.web-review-side-progress p{margin:7px 0 0;color:#bad0d8;font-size:12px;line-height:1.4}
.web-review-side-attention{display:flex;flex-direction:column;gap:4px;padding:10px 8px;border-top:1px solid rgba(255,255,255,.15);font-size:12px;color:#bfd2d9}.web-review-side-attention strong{margin-bottom:3px;color:#ffd17b;font-size:12px}.web-review-side-clarification{margin:9px 5px 2px;padding:9px;border-radius:8px;background:rgba(80,192,126,.13);color:#78dfa4;font-size:12px;font-weight:900;line-height:1.35}.web-review-side-clarification.has-blocker{background:rgba(211,79,79,.15);color:#ffaaa5}
.web-review-main{min-width:0}.review-board-actions{display:flex;gap:7px;align-items:center}.review-board-actions .active{background:#182852!important;color:#fff!important;border-color:#182852!important}.review-counts-v132{grid-template-columns:repeat(6,minmax(0,1fr))}
.review-attention-count{padding:4px 7px;border-radius:999px;background:#fff0d8;color:#99651d!important;font-weight:900!important}.review-ready-count{color:#33815a!important;font-weight:900!important}.review-consistent-badge{background:#e3f5e9!important;color:#2f7c51!important}.review-discrepancy-badge{background:#fff0d8!important;color:#9a641a!important}.review-ready-message{padding:8px 9px;border:1px solid #d5eadc;border-radius:7px;background:#f3fbf6}.review-ready-message strong{display:block;color:#32805a;font-size:12px}.review-ready-message small{display:block;margin-top:2px;color:#637a6d;font-size:12px;line-height:1.35}.ready-decision .review-ready-edit{margin-top:6px;opacity:.72}.ready-decision:hover .review-ready-edit,.ready-decision:focus-within .review-ready-edit{opacity:1}
.web-review-decision-row[hidden],.web-review-section-v132[hidden]{display:none!important}.web-review-clarification>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;list-style:none}.web-review-clarification>summary::-webkit-details-marker{display:none}.web-review-clarification>summary h3{margin:3px 0}.web-review-clarification>summary>span{color:#8a715d;font-size:12px;font-weight:800}.web-review-clarification .clarification-body{padding-top:12px}
@media(max-width:1050px){.web-review-shell{grid-template-columns:1fr}.web-review-sidebar{position:relative;top:auto}.web-review-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.review-counts-v132{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.web-review-nav{grid-template-columns:1fr}.review-board-actions{width:100%;flex-wrap:wrap}.review-counts-v132{grid-template-columns:1fr 1fr}}

/* Web Review V1.3.3 - readability, fast verification, Discovery-style polish */
.discovery-review-title h1{font-size:34px;line-height:1.05}.discovery-review-title p{font-size:14px;line-height:1.5;max-width:780px}
.web-review-customer-hero{display:grid;grid-template-columns:110px minmax(0,1fr) 220px;gap:18px;align-items:center;margin:0 0 14px;padding:16px 18px;border:1px solid #d6e5e9;border-radius:15px;background:linear-gradient(135deg,#fff 0%,#f7fbfc 58%,#f4f5ff 100%);box-shadow:0 8px 24px rgba(10,42,65,.06)}
.web-review-customer-logo{display:flex;align-items:center;justify-content:center;width:110px;height:82px;padding:10px;border:1px solid #d9e5e8;border-radius:12px;background:#fff}.web-review-customer-logo img{max-width:100%;max-height:100%;object-fit:contain}.web-review-customer-placeholder{background:linear-gradient(135deg,#e8f8f7,#eef0ff);color:#182852;font-size:28px;font-weight:950;letter-spacing:.04em}
.web-review-customer-copy{display:flex;flex-direction:column;gap:4px}.web-review-customer-copy>span,.web-review-customer-status>span{color:#0c9294;font-size:12px;font-weight:950;letter-spacing:.11em;text-transform:uppercase}.web-review-customer-copy>strong{color:#0d3048;font-size:21px;line-height:1.15}.web-review-customer-copy>a{color:#436578;font-size:13px;font-weight:750;text-decoration:none}.web-review-customer-copy>a:hover{text-decoration:underline}
.web-review-customer-status{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid #c9d8e7;border-left:4px solid #5a4cff;border-radius:11px;background:#f7f8ff}.web-review-customer-status>strong{color:#182852;font-size:18px}.web-review-customer-status>small{color:#5f7482;font-size:12px;line-height:1.4}
.discovery-review-summary{gap:10px}.discovery-review-summary>div{padding:13px 14px}.discovery-review-summary .stat-label{font-size:12px}.discovery-review-summary strong{font-size:13px}
.web-review-resolution-board{padding:20px}.resolution-board-head h2{font-size:20px}.resolution-board-head p{font-size:13px;line-height:1.5}.review-counts-v132 span{min-height:64px;padding:10px 12px;font-size:12px}.review-counts-v132 span strong{font-size:20px}
.web-review-sidebar{padding:17px 14px}.web-review-side-title span{font-size:12px}.web-review-side-title strong{font-size:17px}.web-review-nav{gap:5px}.web-review-nav a{grid-template-columns:34px 1fr;min-height:54px;padding:8px 9px}.web-review-nav-num{width:30px;height:30px;font-size:12px}.web-review-nav b{font-size:12px;line-height:1.22}.web-review-nav small{font-size:12px;line-height:1.3}.web-review-nav a[data-review-state="complete"] .web-review-nav-num{background:#dff4e7;color:#24734b;box-shadow:inset 0 0 0 1px rgba(106,219,151,.28)}.web-review-nav a[data-review-state="attention"] .web-review-nav-num{background:#fff0d6;color:#9a641a}.web-review-side-progress>div:first-child,.web-review-side-attention,.web-review-side-progress p,.web-review-side-clarification{font-size:12px}.web-review-side-attention strong{font-size:12px}
.web-review-side-filter{display:block;width:calc(100% - 10px);margin:4px 5px 10px;padding:10px 8px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:rgba(255,255,255,.08);color:#eaf7f8;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.web-review-side-filter:hover,.web-review-side-filter.active{background:#fff;color:#123950;border-color:#fff}
.discovery-review-sticky strong{font-size:13px}.discovery-review-sticky small{font-size:12px;line-height:1.4}
.discovery-review-section>summary{min-height:82px;padding:15px 17px;background:linear-gradient(110deg,#172f62 0%,#253b7a 68%,#3c3996 100%);color:#fff}.discovery-review-section>summary:hover{filter:brightness(1.025)}.discovery-review-section[open]>summary{background:linear-gradient(110deg,#172f62 0%,#253b7a 68%,#3c3996 100%);border-bottom:0}.web-review-section-heading{display:flex;align-items:center;gap:12px}.web-review-section-number{display:flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border:1px solid rgba(108,225,224,.6);border-radius:9px;background:rgba(12,54,83,.45);color:#70e1df;font-size:13px;font-weight:950}.web-review-section-number.is-ready{border-color:#84e0aa;background:#dff4e7;color:#28784f}.web-review-section-number.needs-attention{border-color:#f2c778;background:#fff0d6;color:#9a641a}.discovery-review-section>summary .eyebrow{color:#75dce0;font-size:12px}.discovery-review-section>summary strong{color:#fff;font-size:15px}.review-section-meta{font-size:12px}.review-ready-count{padding:5px 8px;border-radius:999px;background:#dff4e7;color:#28784f!important}.review-attention-count{padding:5px 8px;background:#fff0d6}.discovery-review-section .chevron{color:#fff;font-size:16px}
.discovery-review-fields{padding:4px 16px 14px;background:#fff}.discovery-review-field{gap:12px;padding:13px 0}.discovery-review-field.needs-attention{margin:4px -6px;padding:13px 8px;border:1px solid #ead7b5;border-radius:10px;background:#fffaf3}.discovery-review-field.ready-decision{background:#fff}.discovery-review-label strong{font-size:13px;line-height:1.35}.discovery-review-label span{font-size:12px}.review-consistent-badge{font-size:12px!important}.review-consistent-badge.is-verified{background:#d8f1e2!important;color:#1f6e45!important}.discovery-detected-value,.discovery-sales-value,.discovery-verified-control{padding:12px 13px}.discovery-detected-value>span,.discovery-sales-value>span,.discovery-verified-control>span{font-size:12px!important}.discovery-detected-value>div,.discovery-sales-value>div{font-size:12.5px;line-height:1.45}.discovery-sales-value>div{min-height:48px}.discovery-verified-control input,.discovery-verified-control select,.discovery-verified-control textarea{font-size:12px;min-height:42px}.review-ready-message{padding:10px 11px}.review-ready-message strong{font-size:12px}.review-ready-message small{font-size:12px;line-height:1.45}.review-ready-message.is-verified{background:#eaf8ef;border-color:#b9dfc8}.ready-decision .review-ready-edit{opacity:.55}.ready-decision:hover .review-ready-edit,.ready-decision:focus-within .review-ready-edit{opacity:1}
.review-resolution-control{grid-template-columns:1fr!important;gap:8px;padding:11px 12px;background:#fff7e9;border:1px solid #f0d4a7}.review-resolution-primary{display:flex;align-items:center;justify-content:space-between;gap:14px}.review-resolution-primary>div{display:flex;flex-direction:column;gap:3px}.review-resolution-primary strong{color:#714814;font-size:12px}.review-resolution-primary small{color:#7f6747;font-size:12px;line-height:1.45;max-width:700px}.review-verify-btn{flex:0 0 auto;min-width:112px;background:#169d86!important;border-color:#169d86!important}.review-verify-btn:hover{background:#117d6b!important}.review-other-options{border-top:1px solid #ead7b5;padding-top:7px}.review-other-options>summary{cursor:pointer;color:#3c5870;font-size:12px;font-weight:850}.review-other-options-body{display:grid;grid-template-columns:220px 1fr;gap:8px;margin-top:8px}.review-other-options-body select,.review-other-options-body input{font-size:12px!important}.review-inline-verified{display:flex;flex-direction:column;gap:3px}.review-inline-verified strong{color:#25734c!important}.review-inline-verified small{color:#5e7969!important}.web-review-decision-row.just-verified{transition:opacity .2s ease,transform .2s ease}.web-review-decision-row.just-verified{opacity:.9}
.web-review-clarification p,.review-submit-card p,.integration-review-body p{font-size:12px;line-height:1.5}.discovery-review-integration-card .muted{font-size:12px;line-height:1.45}.integration-review-body>strong{font-size:13px}.integration-review-body>span,.integration-review-body>small{font-size:12px}
@media(max-width:1050px){.web-review-customer-hero{grid-template-columns:90px 1fr}.web-review-customer-logo{width:90px;height:72px}.web-review-customer-status{grid-column:1/-1}.review-other-options-body{grid-template-columns:1fr}}
@media(max-width:700px){.web-review-customer-hero{grid-template-columns:1fr}.web-review-customer-logo{width:100%;height:90px}.review-resolution-primary{align-items:flex-start;flex-direction:column}.review-verify-btn{width:100%}.discovery-review-title h1{font-size:28px}}


/* V1.3.4 Web Review interaction fixes */
.sales-handoff-complete{border-color:#b9dfc8!important;border-left-color:#37a66a!important;background:#f2fbf5!important}.sales-handoff-complete>span{color:#2b7e52!important}.sales-handoff-complete>strong{color:#205f3f!important}
.discovery-review-summary .web-review-progress-summary{position:relative;background:linear-gradient(135deg,#effafb,#f4f7ff);border-color:#c9dfe5}.discovery-review-summary .web-review-progress-summary .stat-label{color:#0c9294}.discovery-review-summary .web-review-progress-summary strong{font-size:22px;color:#182852}.discovery-review-summary .web-review-progress-summary small{display:block;margin-top:3px;color:#73521c;font-size:12px;font-weight:850}
.review-board-actions .btn.active{box-shadow:0 0 0 2px rgba(24,40,82,.12)}

/* Web Review V1.3.5 - navigation reliability, confirmation, and readability polish */
.web-review-shell{grid-template-columns:270px minmax(0,1fr)}
.web-review-sidebar{padding:19px 16px}
.web-review-side-title{padding:3px 9px 14px}
.web-review-side-title span{font-size:12px}
.web-review-side-title strong{font-size:19px;line-height:1.2}
.web-review-nav{gap:6px}
.web-review-nav a{grid-template-columns:38px 1fr;min-height:62px;padding:10px 10px;gap:10px}
.web-review-nav-num{width:34px;height:34px;font-size:12px}
.web-review-nav b{font-size:13px;line-height:1.25}
.web-review-nav small{margin-top:3px;font-size:12px;line-height:1.3;letter-spacing:.03em}
.web-review-side-filter{margin:7px 5px 12px;padding:11px 9px;font-size:12px;text-align:center;text-decoration:none}
.web-review-side-progress{padding:14px 9px}
.web-review-side-progress>div:first-child{font-size:12px}
.web-review-side-progress>div:first-child strong{font-size:12px}
.web-review-side-progress>div:first-child span{font-size:12px;font-weight:900}
.web-review-progress-track{height:8px;margin-top:9px;background:rgba(255,255,255,.13);box-shadow:inset 0 1px 2px rgba(0,0,0,.18)}
.web-review-progress-track i{background:linear-gradient(90deg,#19b9ba 0%,#27a8d1 42%,#5a4cff 100%);box-shadow:0 0 10px rgba(70,122,255,.38)}
.web-review-side-progress p{font-size:12px;line-height:1.45}
.web-review-side-attention{gap:6px;padding:12px 9px;font-size:12px;line-height:1.35}
.web-review-side-attention strong{font-size:12px}
.web-review-side-clarification{padding:10px;font-size:12px}

.web-review-customer-hero{grid-template-columns:110px minmax(0,1fr) 290px}
.web-review-customer-status{padding:16px 19px}
.web-review-customer-status>strong{font-size:19px;white-space:nowrap}
.web-review-customer-status>small{font-size:12.5px;line-height:1.45}

.review-attention-count{padding:6px 10px;font-size:12px!important;line-height:1.15}
.review-section-meta{font-size:12px}

.review-resolution-control.needs-resolution{background:linear-gradient(135deg,#ffefc9 0%,#fff6df 100%);border-color:#e3b65f;box-shadow:inset 4px 0 0 #d79b2d}
.review-resolution-primary{padding:2px 1px}
.review-resolution-primary strong{color:#6a3f08;font-size:13px}
.review-resolution-primary small{color:#70572e;font-size:12px}
.review-other-options{border-top-color:#dfbf7f}

.web-review-verify-success{margin:14px 0 4px;border-left:5px solid #1aa36f;background:#edf9f3}
.web-review-verify-success strong{display:block;margin-bottom:3px;color:#1f704f}

.review-board-actions a{text-decoration:none}
.review-board-actions .btn.active{box-shadow:0 0 0 2px rgba(24,40,82,.12)}

@media(max-width:1050px){
  .web-review-shell{grid-template-columns:1fr}
  .web-review-customer-hero{grid-template-columns:90px 1fr}
  .web-review-customer-status{grid-column:1/-1}
  .web-review-customer-status>strong{white-space:normal}
}

/* Web Review V1.3.6: section navigation alignment */
.web-review-nav a.is-active{
  background:linear-gradient(135deg,rgba(45,203,203,.18),rgba(79,70,229,.22));
  border-color:rgba(126,249,235,.55);
  box-shadow:inset 3px 0 0 #70eadb,0 5px 16px rgba(7,35,61,.15);
}
.web-review-nav a.is-active b{color:#fff}
.web-review-nav a.is-active .web-review-nav-num{box-shadow:0 0 0 3px rgba(126,249,235,.15)}
.discovery-review-section{scroll-margin-top:92px}


/* Web Review V1.3.7: section hierarchy and synchronized navigation */
.discovery-review-title .eyebrow{
  display:inline-flex;
  align-items:center;
  margin-bottom:8px;
  padding:6px 10px;
  border:1px solid #b9dfe5;
  border-radius:999px;
  background:rgba(235,249,250,.92);
  color:#087c88;
  font-size:12px;
  font-weight:900;
  letter-spacing:.11em;
  line-height:1;
}
.web-review-section-title-copy{
  color:#fff;
  font-size:25px;
  font-weight:900;
  line-height:1.08;
  letter-spacing:-.02em;
}
.discovery-review-section>summary{
  min-height:86px;
}
.web-review-section-heading{
  gap:14px;
}
@media(max-width:700px){
  .web-review-section-title-copy{font-size:20px}
  .discovery-review-title .eyebrow{font-size:12px;letter-spacing:.08em}
}

/* Web Review V1.3.8 - workflow actions + actionable attention navigation */
.web-review-top-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex:0 0 auto;
}
.web-review-teal-btn{
    background:linear-gradient(135deg,#13a6a8 0%,#138f98 100%)!important;
    border:1px solid #128b92!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(18,155,160,.2)!important;
}
.web-review-teal-btn:hover{
    background:linear-gradient(135deg,#119296 0%,#0e7e87 100%)!important;
    border-color:#0e7e87!important;
    color:#fff!important;
}
.web-review-top-submit{min-height:44px;padding-left:19px;padding-right:19px}
.web-review-sidebar-save{
    display:flex;
    width:calc(100% - 10px);
    margin:3px 5px 9px;
    min-height:42px;
    font-size:12px;
    text-decoration:none;
}

/* The sidebar attention area is now a filter dashboard rather than passive text. */
.web-review-side-attention{
    gap:9px;
    padding:13px 7px 12px;
    font-size:12px;
}
.web-review-side-attention .attention-total{
    display:grid;
    grid-template-columns:44px 1fr;
    gap:10px;
    align-items:center;
    padding:9px;
    border:1px solid rgba(255,209,123,.22);
    border-radius:10px;
    background:rgba(255,196,79,.08);
    color:#fff;
    text-decoration:none;
    transition:.16s background,.16s border-color,.16s transform;
}
.web-review-side-attention .attention-total:hover,
.web-review-side-attention .attention-total.is-active{
    background:rgba(255,196,79,.16);
    border-color:rgba(255,209,123,.52);
    transform:translateY(-1px);
}
.attention-total-number{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    border-radius:50%;
    background:linear-gradient(135deg,#ffd77f,#e9a82c);
    color:#603b00;
    font-size:20px;
    font-weight:950;
    box-shadow:0 5px 12px rgba(0,0,0,.18);
}
.web-review-side-attention .attention-total strong{
    display:block;
    margin:0;
    color:#ffe19d;
    font-size:12px;
    line-height:1.15;
    letter-spacing:.035em;
}
.web-review-side-attention .attention-total small{
    display:block;
    margin-top:3px;
    color:#c9dce3;
    font-size:12px;
    line-height:1.3;
}
.attention-filter-list{display:flex;flex-direction:column;gap:5px}
.attention-filter-row{
    display:grid;
    grid-template-columns:31px 1fr auto;
    gap:8px;
    align-items:center;
    min-height:39px;
    padding:6px 8px;
    border:1px solid transparent;
    border-radius:9px;
    color:#eef8fa;
    font-size:12px;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;
    transition:.14s background,.14s border-color,.14s transform;
}
.attention-filter-row:not(.is-zero):hover,
.attention-filter-row.is-active{
    background:rgba(255,255,255,.1);
    border-color:rgba(255,255,255,.18);
    transform:translateX(2px);
}
.attention-filter-row b{font-size:18px;color:#dcebf0;line-height:1}
.attention-filter-number{
    display:flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    border-radius:9px;
    font-size:13px;
    font-weight:950;
    color:#fff;
    background:rgba(255,255,255,.12);
}
.attention-filter-row.decision .attention-filter-number{background:#d6a232;color:#fff9e8}
.attention-filter-row.technical .attention-filter-number{background:#5254ba}
.attention-filter-row.production .attention-filter-number{background:#2389a2}
.attention-filter-row.future .attention-filter-number{background:#805faf}
.attention-filter-row.blocking .attention-filter-number{background:#bb4f4f}
.attention-filter-row.is-zero{opacity:.44;cursor:default}
.attention-filter-row.is-zero .attention-filter-number{background:rgba(255,255,255,.1)}
.attention-filter-row.is-active{box-shadow:inset 3px 0 0 #7be1df}

/* Keep the progress strip useful without competing with the page-level submit action. */
.discovery-review-sticky>div:last-child{min-width:112px;justify-content:flex-end}
.discovery-review-sticky .web-review-teal-btn{min-width:112px}

@media(max-width:900px){
    .discovery-review-title{gap:14px}
    .web-review-top-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}
}
@media(max-width:600px){
    .web-review-top-actions{display:grid;grid-template-columns:1fr}
    .web-review-top-actions .btn{width:100%}
}

/* Web Review V1.3.9 - customer identity polish */
.web-review-customer-hero{
  position:relative;
  grid-template-columns:138px minmax(0,1fr) 290px;
  gap:24px;
  min-height:154px;
  padding:22px 24px 22px 28px;
  overflow:hidden;
  border-color:#cfe2e7;
  background:linear-gradient(112deg,#ffffff 0%,#f6fcfc 52%,#f1f5ff 100%);
  box-shadow:0 10px 28px rgba(10,42,65,.075);
}
.web-review-customer-hero:before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:5px;
  background:linear-gradient(180deg,#14a9aa 0%,#5a4cff 100%);
}
.web-review-customer-hero:after{
  content:"";position:absolute;width:260px;height:260px;left:115px;top:-175px;border-radius:50%;
  background:radial-gradient(circle,rgba(20,169,170,.09) 0%,rgba(20,169,170,0) 70%);pointer-events:none
}
.web-review-customer-logo{
  position:relative;z-index:1;width:138px;height:108px;padding:14px;
  border-color:#cbdde2;border-radius:15px;
  box-shadow:0 7px 18px rgba(13,48,72,.09);
}
.web-review-customer-copy{position:relative;z-index:1;gap:7px;justify-content:center}
.web-review-customer-copy>span{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.13em}
.web-review-customer-copy>span:after{content:"";width:42px;height:2px;border-radius:2px;background:#18a8aa;opacity:.7}
.web-review-customer-copy>strong{font-size:25px;line-height:1.12;letter-spacing:-.015em}
.web-review-customer-copy>a{display:inline-flex;align-items:center;gap:6px;width:max-content;font-size:14px;font-weight:800;color:#315e72}
.web-review-customer-copy>a:before{content:"↗";display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#e7f7f7;color:#0c9294;font-size:12px;font-weight:950}
.web-review-customer-status{position:relative;z-index:1;align-self:stretch;justify-content:center}
@media(max-width:1050px){
  .web-review-customer-hero{grid-template-columns:110px 1fr;min-height:0;padding:20px 22px 20px 26px}
  .web-review-customer-logo{width:110px;height:88px}
  .web-review-customer-status{grid-column:1/-1}
}
@media(max-width:700px){
  .web-review-customer-hero{grid-template-columns:1fr}
  .web-review-customer-logo{width:100%;height:100px}
  .web-review-customer-copy>strong{font-size:22px}
}

/* Web Review V1.3.10 - completion state */
.discovery-review-summary .web-review-progress-summary .stat-label{font-size:12px;line-height:1.2;letter-spacing:.11em;font-weight:900}
.discovery-review-summary .web-review-progress-summary.is-complete{background:linear-gradient(135deg,#ecfbf5 0%,#f2fffb 48%,#eefbff 100%);border-color:#71d3aa;box-shadow:0 10px 28px rgba(20,156,126,.12),inset 4px 0 0 #18a67c}
.discovery-review-summary .web-review-progress-summary.is-complete .stat-label{color:#117b62;font-size:12px}
.discovery-review-summary .web-review-progress-summary.is-complete strong{color:#11664f;font-size:28px}
.discovery-review-summary .web-review-progress-summary.is-complete small{color:#26735f;font-size:12px;line-height:1.35}
.web-review-top-submit.is-ready{box-shadow:0 8px 20px rgba(11,157,157,.28),0 0 0 3px rgba(42,195,169,.10);font-weight:900}
.web-review-complete-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin:14px 0 16px;padding:17px 20px;border:1px solid #78d6ae;border-radius:15px;background:linear-gradient(100deg,#eafaf3 0%,#f2fffa 52%,#eefbff 100%);box-shadow:0 12px 30px rgba(19,137,111,.10),inset 5px 0 0 #18a67c}
.web-review-complete-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#16a47c,#1ab4a6);color:#fff;font-size:24px;font-weight:950;box-shadow:0 7px 16px rgba(22,164,124,.25)}
.web-review-complete-banner strong{display:block;color:#12563f;font-size:18px;line-height:1.15;margin-bottom:4px}
.web-review-complete-banner p{margin:0;color:#42675e;font-size:12px;line-height:1.45}
.web-review-complete-ready{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;background:#dff7e9;border:1px solid #9bd9b4;color:#14724f;font-size:12px;font-weight:950;letter-spacing:.10em;white-space:nowrap}
@media(max-width:800px){.web-review-complete-banner{grid-template-columns:auto 1fr}.web-review-complete-ready{grid-column:1/-1;width:max-content}}

/* Web Review V1.3.11 - submitted handoff + Estimate Setup transition */
.web-review-top-estimate-form{margin:0}
.web-review-top-estimate{min-width:170px;box-shadow:0 8px 20px rgba(11,157,157,.22)}
.web-review-submitted-success{padding:15px 18px;border-color:#a8d98e;background:linear-gradient(90deg,#edf9df,#f4fce9);color:#315d28}
.web-review-submitted-success strong{font-size:14px;color:#245121;margin-right:4px}
.web-review-next-stage{margin:15px 0 18px;border:1px solid #b9d9dd;border-radius:18px;background:linear-gradient(135deg,#f4fcfb 0%,#ffffff 52%,#f4f4ff 100%);box-shadow:0 14px 34px rgba(24,40,82,.09),inset 5px 0 0 #14aaa9;overflow:hidden}
.web-review-stage-track{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid #dce9eb;background:linear-gradient(90deg,#effbf8,#f5f8ff)}
.web-review-stage-track>i{height:3px;border-radius:999px;background:linear-gradient(90deg,#25b7a5,#47b9c9,#6552e8)}
.web-review-stage-track .stage{display:flex;align-items:center;gap:10px;min-width:0}
.web-review-stage-track .stage>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-size:12px;font-weight:950}
.web-review-stage-track .stage.done>span{background:#dff6e8;color:#17724d;border:1px solid #9fd9b6}
.web-review-stage-track .stage.next>span{background:linear-gradient(135deg,#17aaa8,#5052d6);color:#fff;box-shadow:0 6px 14px rgba(54,108,192,.22)}
.web-review-stage-track small{display:block;color:#68808a;font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.web-review-stage-track strong{display:block;margin-top:1px;color:#18304f;font-size:13px}
.web-review-stage-track .stage.next strong{color:#1a8686}
.web-review-next-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:26px;padding:22px 24px}
.web-review-next-copy .eyebrow{color:#13a0a2;font-size:12px}
.web-review-next-copy h2{margin:5px 0 7px;color:#182852;font-size:25px;line-height:1.1}
.web-review-next-copy p{max-width:760px;margin:0;color:#516a76;font-size:12px;line-height:1.55}
.web-review-next-cta{min-width:190px;padding:14px 20px;font-size:14px;font-weight:900;box-shadow:0 10px 24px rgba(12,158,157,.22)}
.web-review-side-progress.is-verified{margin-top:8px;padding-top:14px}
.web-review-side-progress.is-verified>div:first-child strong{color:#7ce1d5;font-size:12px}
.web-review-side-progress.is-verified p{color:#d0e5e8;font-size:12px}
.web-review-side-verified{display:flex;align-items:center;gap:10px;margin:12px 5px 3px;padding:11px 12px;border:1px solid rgba(91,219,172,.25);border-radius:10px;background:linear-gradient(135deg,rgba(33,171,135,.17),rgba(37,179,184,.12));color:#8be6bd}
.web-review-side-verified>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#26aa83;color:#fff;font-size:16px;font-weight:950}
.web-review-side-verified strong{display:block;color:#9bf0c8;font-size:12px;letter-spacing:.08em}
.web-review-side-verified small{display:block;margin-top:2px;color:#c2dfe0;font-size:12px}
.web-review-sidebar .web-review-nav a small{letter-spacing:.035em}
@media(max-width:850px){.web-review-stage-track{grid-template-columns:1fr;gap:8px}.web-review-stage-track>i{display:none}.web-review-next-copy{grid-template-columns:1fr}.web-review-next-cta{width:100%}.web-review-top-estimate{min-width:0}}

/* V1.4.0 - Verified Scope -> Estimate Setup */
.estimate-setup-title .estimate-title-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.estimate-verified-handoff{margin:0 0 22px;border:1px solid #b9dfe0;border-radius:20px;background:linear-gradient(135deg,#f2fbfa 0%,#ffffff 50%,#f5f5ff 100%);box-shadow:0 16px 38px rgba(19,55,82,.09),inset 5px 0 0 #13aaa9;overflow:hidden}
.estimate-verified-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:22px 26px 18px}
.estimate-verified-intro .eyebrow{font-size:12px;color:#129b9d}
.estimate-verified-intro h2{margin:5px 0 7px;color:#0d2d45;font-size:27px;line-height:1.1}
.estimate-verified-intro p{margin:0;max-width:780px;color:#536b78;font-size:13px;line-height:1.55}
.estimate-handoff-state{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.estimate-handoff-state span,.estimate-handoff-state strong{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.025em;white-space:nowrap}
.estimate-handoff-state span{background:#e8f8ef;border:1px solid #a9dfbf;color:#196d4d}
.estimate-handoff-state strong{background:linear-gradient(135deg,#11a9a8,#4c52d5);color:#fff;box-shadow:0 7px 15px rgba(40,110,170,.18)}
.estimate-scope-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #dcebed;background:rgba(239,248,249,.72)}
.estimate-scope-kpis>div{padding:18px 22px;border-right:1px solid #dcebed}
.estimate-scope-kpis>div:last-child{border-right:0}
.estimate-scope-kpis strong{display:block;color:#122d52;font-size:27px;line-height:1;margin-bottom:6px}
.estimate-scope-kpis span{display:block;color:#647986;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.075em}
.estimate-scope-kpis .needs-review strong{color:#b5780c}
.estimate-scope-kpis .complete strong{color:#15805f}

.wizard-step-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.wizard-step-copy>b{font-size:inherit}
.estimate-nav-status{display:block;font-size:12px!important;font-weight:950!important;letter-spacing:.055em!important;line-height:1.15!important}
.estimate-nav-status.applied{color:#77e3bd!important}
.estimate-nav-status.needs{color:#ffd77a!important}
.wizard-step-link.active .estimate-nav-status.applied{color:#168262!important}
.wizard-step-link.active .estimate-nav-status.needs{color:#9c6400!important}

.estimate-scope-section-summary{margin:18px 0 22px;padding:15px 17px;border-radius:13px;border:1px solid #cfe5df;background:linear-gradient(100deg,#eefaf5,#f8fdfb)}
.estimate-scope-section-summary>div:first-child{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.estimate-scope-section-summary>div:first-child strong{font-size:14px;color:#17684e}
.estimate-scope-section-summary>div:first-child span{font-size:12px;color:#597169}
.estimate-scope-section-summary.has-review{border-color:#efd092;background:linear-gradient(100deg,#fff8e9,#fffdf8);box-shadow:inset 4px 0 0 #d9a128}
.estimate-scope-section-summary.has-review>div:first-child strong{color:#835507}
.estimate-review-items{display:grid;gap:8px;margin-top:12px}
.estimate-review-items>span{display:grid;grid-template-columns:minmax(160px,.75fr) minmax(100px,.5fr) minmax(260px,1.4fr);gap:10px;align-items:center;padding:9px 11px;border-radius:9px;background:rgba(255,255,255,.72);border:1px solid #f0dfbd;color:#5e4d29;font-size:12px}
.estimate-review-items>span>b{color:#553b0d;font-size:12px}
.estimate-review-items>span>small{color:#7f6d4c;font-size:12px;line-height:1.35}
.scope-origin-badge{display:inline-flex;align-items:center;margin-left:8px;padding:3px 7px;border-radius:999px;background:#e7f8f1;border:1px solid #b8e4d3;color:#17775b;font-size:12px!important;line-height:1.1;font-weight:950!important;letter-spacing:.045em;text-transform:uppercase;vertical-align:middle;white-space:nowrap}
.component-name .scope-origin-badge{transform:translateY(-1px)}

@media(max-width:900px){
  .estimate-verified-intro{grid-template-columns:1fr}
  .estimate-handoff-state{justify-content:flex-start}
  .estimate-scope-kpis{grid-template-columns:1fr}
  .estimate-scope-kpis>div{border-right:0;border-bottom:1px solid #dcebed}
  .estimate-scope-kpis>div:last-child{border-bottom:0}
  .estimate-review-items>span{grid-template-columns:1fr}
}

/* V1.4.1 - Estimate Setup UX polish */
.estimate-setup-title h1{max-width:900px}
.estimate-view-discovery{
  display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 17px;
  border:1px solid #82cfd1!important;border-radius:11px!important;
  background:#fff!important;color:#087f82!important;font-weight:900!important;text-decoration:none!important;
  box-shadow:0 7px 18px rgba(12,143,146,.10);transition:.15s transform,.15s box-shadow,.15s background
}
.estimate-view-discovery:before{content:"↗";display:grid;place-items:center;width:22px;height:22px;margin-right:8px;border-radius:50%;background:#e6f8f7;color:#0b9294;font-size:12px;font-weight:950}
.estimate-view-discovery:hover{background:#f1fbfb!important;box-shadow:0 9px 22px rgba(12,143,146,.16);transform:translateY(-1px)}
.estimate-scope-kpis .attention-sections strong{color:#b5780c}

/* Project basics should read as a polished set of verified records, not a loose form grid. */
.wizard-panel[data-step="0"] .card{padding:28px 30px 30px}
.wizard-panel[data-step="0"] .grid3{gap:16px 18px;align-items:stretch}
.estimate-project-field{
  display:flex;flex-direction:column;min-width:0;padding:13px 14px 14px;
  border:1px solid #d9e5e9;border-radius:13px;background:#fbfdfe;
  box-shadow:0 4px 12px rgba(13,48,72,.025)
}
.estimate-project-field.is-verified{
  border-color:#c7e5dc;background:linear-gradient(145deg,#f7fcfa 0%,#fbfefe 100%);
  box-shadow:inset 3px 0 0 #43b999,0 4px 13px rgba(24,123,98,.035)
}
.estimate-project-field>label{
  display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:24px;
  margin:0 0 9px;font-size:13px;line-height:1.2
}
.estimate-field-label{display:block;min-width:0}
.estimate-project-field .scope-origin-badge{flex:none;margin:0;padding:4px 7px;font-size:12px!important}
.estimate-project-field input,.estimate-project-field select{
  min-height:47px;margin:0;border-color:#b9cfd8;border-radius:10px;background:#fff;
  font-size:14px;font-weight:650;box-shadow:0 2px 5px rgba(13,48,72,.025)
}
.estimate-project-field.is-verified input,.estimate-project-field.is-verified select{border-color:#a9d4c7;background:#fff}
.estimate-project-field input:focus,.estimate-project-field select:focus{border-color:#14a5a7;box-shadow:0 0 0 3px rgba(20,165,167,.11)}
.estimate-project-field .field-help{margin-top:8px;min-height:0;font-size:12px;line-height:1.45;color:#607783}
.wizard-panel[data-step="0"] .estimate-notes-field{padding:14px 15px 15px;border:1px solid #d9e5e9;border-radius:13px;background:#fbfdfe}
.wizard-panel[data-step="0"] .estimate-notes-field>label{margin-bottom:9px;font-size:13px}
.wizard-panel[data-step="0"] .estimate-notes-field textarea{border-color:#b9cfd8;background:#fff}

@media(max-width:1050px){
  .wizard-panel[data-step="0"] .grid3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .wizard-panel[data-step="0"] .card{padding:22px 18px}
  .wizard-panel[data-step="0"] .grid3{grid-template-columns:1fr}
}


/* V1.4.2 - Workflow header, handoff tracker and estimate navigation polish */
.workflow-context-badge{
  display:inline-flex!important;align-items:center!important;width:auto!important;
  margin:0 0 10px!important;padding:7px 11px!important;
  border:1px solid #b9dfe5!important;border-radius:999px!important;
  background:rgba(235,249,250,.94)!important;color:#087c88!important;
  font-size:12px!important;font-weight:900!important;letter-spacing:.11em!important;
  line-height:1!important;text-transform:uppercase!important;
  box-shadow:0 3px 9px rgba(14,104,119,.05)
}
.discovery-review-title .workflow-context-badge{margin-bottom:8px!important}
.estimate-setup-title .workflow-context-badge{margin-bottom:10px!important}

/* Verified-discovery Estimate Setup has one clear escape path in the sticky sidebar. */
.sidebar-cancel-btn{
  display:flex!important;align-items:center;justify-content:center;min-height:43px;width:100%;
  margin-top:3px;padding:10px 12px;border:1px solid rgba(222,240,244,.52);border-radius:10px;
  background:rgba(255,255,255,.075);color:#dcecf0!important;font-size:12px;font-weight:850;
  text-decoration:none!important;transition:.15s background,.15s border-color,.15s transform
}
.sidebar-cancel-btn:before{content:"×";margin-right:7px;font-size:17px;line-height:1;font-weight:500;color:#9fd5dc}
.sidebar-cancel-btn:hover{background:rgba(255,255,255,.13);border-color:rgba(127,224,224,.7);color:#fff!important;transform:translateY(-1px)}

/* Connected handoff tracker. This replaces the loose pills with a deliberate end-to-end workflow cue. */
.estimate-handoff-state{
  display:grid;grid-template-columns:auto minmax(28px,52px) auto minmax(28px,52px) auto;
  gap:8px;align-items:center;justify-content:end;min-width:390px
}
.estimate-handoff-state>i{display:block;height:3px;border-radius:999px;background:linear-gradient(90deg,#35b895,#36b9b6,#4b56d2);opacity:.8}
.estimate-handoff-step{display:flex;align-items:center;gap:8px;min-width:0}
.estimate-handoff-step>span{
  display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;padding:0!important;
  border-radius:50%!important;font-size:12px!important;font-weight:950!important;letter-spacing:0!important
}
.estimate-handoff-step>div{min-width:0}
.estimate-handoff-step small{display:block;margin:0 0 2px;color:#71838d;font-size:12px;font-weight:900;letter-spacing:.11em;line-height:1;text-transform:uppercase}
.estimate-handoff-step strong{display:block!important;min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;color:#17324e!important;font-size:12px!important;line-height:1.12!important;letter-spacing:0!important;white-space:nowrap}
.estimate-handoff-step.done>span{background:#e1f7e9!important;border:1px solid #9dd9b3!important;color:#17724d!important;box-shadow:0 3px 10px rgba(34,145,99,.08)}
.estimate-handoff-step.active>span{background:linear-gradient(135deg,#12aaa8,#4c52d5)!important;border:0!important;color:#fff!important;box-shadow:0 7px 16px rgba(55,92,196,.22)}
.estimate-handoff-step.active strong{color:#087f82!important}

@media(max-width:1050px){
  .estimate-handoff-state{min-width:0;grid-template-columns:auto 24px auto 24px auto;justify-content:start}
}
@media(max-width:760px){
  .estimate-handoff-state{display:flex;flex-wrap:wrap;gap:10px}
  .estimate-handoff-state>i{display:none}
}

/* V1.4.3 Estimate Decision Resolution */
.estimate-decision-list{display:grid;gap:14px;margin:0 0 22px}
.estimate-decision-card{border:1px solid #e8c77f;border-radius:16px;background:linear-gradient(135deg,#fff9ec 0%,#fffdf8 65%,#fff8e9 100%);box-shadow:0 10px 26px rgba(92,67,16,.08),inset 4px 0 0 #dca628;padding:17px 18px 16px}
.estimate-decision-card.is-resolved{border-color:#abdcc9;background:linear-gradient(135deg,#effaf6,#fbfffd);box-shadow:0 10px 24px rgba(22,111,81,.07),inset 4px 0 0 #2dbb8a}
.estimate-decision-card.needs-clarification{border-color:#efb5ae;background:linear-gradient(135deg,#fff5f3,#fffafa);box-shadow:inset 4px 0 0 #cb5349}
.estimate-decision-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:13px}
.estimate-decision-kicker{font-size:12px;line-height:1;text-transform:uppercase;letter-spacing:.14em;font-weight:950;color:#a56d00;margin-bottom:5px}
.estimate-decision-card.is-resolved .estimate-decision-kicker{color:#18815f}
.estimate-decision-head h3{margin:0;color:#12344e;font-size:18px;line-height:1.15}
.estimate-decision-state{flex:0 0 auto;border-radius:999px;padding:7px 10px;background:#fff0c7;color:#8b5a00;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}
.estimate-decision-card.is-resolved .estimate-decision-state{background:#dff7ed;color:#187355}
.estimate-decision-evidence{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);gap:14px;align-items:stretch;margin-bottom:14px}
.estimate-decision-evidence>div,.estimate-decision-evidence>p{margin:0;border:1px solid rgba(205,168,91,.34);border-radius:11px;background:rgba(255,255,255,.78);padding:11px 12px}
.estimate-decision-evidence small{display:block;color:#108b8d;text-transform:uppercase;letter-spacing:.09em;font-size:12px;font-weight:950;margin-bottom:5px}
.estimate-decision-evidence strong{font-size:13px;color:#17364c}
.estimate-decision-evidence p{font-size:12px;color:#6e5b34;line-height:1.45}
.estimate-decision-question{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin:4px 0 11px}
.estimate-decision-question strong{font-size:14px;color:#193a52}
.estimate-decision-question span{font-size:12px;color:#6a7983}
.estimate-decision-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.estimate-decision-option{display:block;cursor:pointer}
.estimate-decision-option input{position:absolute;opacity:0;pointer-events:none}
.estimate-decision-option>span{display:block;min-height:76px;border:1px solid #d7e1e5;border-radius:12px;background:#fff;padding:12px 13px;transition:.16s ease}
.estimate-decision-option b{display:block;color:#15364e;font-size:12px;margin-bottom:5px}
.estimate-decision-option small{display:block;color:#647884;font-size:12px;line-height:1.35}
.estimate-decision-option input:checked+span{border-color:#15a7a8;background:#ecfbfa;box-shadow:0 0 0 2px rgba(21,167,168,.12)}
.estimate-decision-option:last-child input:checked+span{border-color:#c95a51;background:#fff3f1;box-shadow:0 0 0 2px rgba(201,90,81,.10)}
.estimate-decision-details{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(199,165,92,.3)}
.estimate-decision-details label{font-size:12px;text-transform:uppercase;letter-spacing:.07em;font-weight:900;color:#526b78}
.estimate-decision-details input,.estimate-decision-details textarea{margin-top:5px;background:#fff}
@media(max-width:900px){.estimate-decision-options{grid-template-columns:1fr}.estimate-decision-evidence,.estimate-decision-details{grid-template-columns:1fr}}


/* =========================================================
   V1.4.4 - Estimate Decision UX + Quoter typography standard
   Product rule: rendered text should never be smaller than 12px.
   Normal explanatory UI copy should target 16px+ where space permits.
   ========================================================= */
.estimate-nav-status{font-size:12px!important;line-height:1.25!important;letter-spacing:.045em!important;margin-top:3px}
.estimate-nav-status.applied{color:#63e4ae!important}
.estimate-nav-status.needs{color:#ffd46f!important}

.estimate-scope-section-summary>div:first-child strong{font-size:18px!important}
.estimate-scope-section-summary>div:first-child span{font-size:14px!important;line-height:1.45}

.estimate-decision-card{padding:20px 21px 19px}
.estimate-decision-kicker{font-size:12px!important}
.estimate-decision-head h3{font-size:21px}
.estimate-decision-state{font-size:12px!important;padding:8px 11px}
.estimate-decision-evidence small{font-size:12px!important}
.estimate-decision-evidence strong{font-size:16px}
.estimate-decision-evidence p{font-size:14px;line-height:1.5}
.estimate-decision-question{margin:7px 0 10px}
.estimate-decision-question strong{font-size:17px;line-height:1.35}
.estimate-decision-instruction{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;padding:11px 13px;border-radius:11px;background:#fff3cf;border:1px solid #e9c979;color:#65440b}
.estimate-decision-instruction strong{font-size:16px;line-height:1.25}
.estimate-decision-instruction span{font-size:13px;line-height:1.4;color:#77623a;text-align:right;max-width:590px}

.estimate-decision-options{gap:12px}
.estimate-decision-option>span{position:relative;min-height:104px;padding:15px 16px 13px 48px;border-width:2px;box-shadow:0 3px 10px rgba(19,52,78,.04)}
.estimate-decision-option>span:hover{border-color:#84cfd0;background:#f8ffff;transform:translateY(-1px)}
.estimate-decision-option b{font-size:16px;margin-bottom:6px;line-height:1.25}
.estimate-decision-option small{font-size:13px;line-height:1.4}
.estimate-choice-indicator{position:absolute;left:15px;top:15px;width:20px;height:20px;border-radius:50%;border:2px solid #8ca7b1;background:#fff;box-shadow:inset 0 0 0 4px #fff}
.estimate-choice-selected{display:none;margin-top:9px;color:#107a6c;font-size:12px;font-style:normal;font-weight:950;letter-spacing:.05em;text-transform:uppercase}
.estimate-decision-option input:checked+span{border-color:#15a7a8;background:linear-gradient(135deg,#e8fbf9,#f7fffe);box-shadow:0 0 0 3px rgba(21,167,168,.13),0 8px 18px rgba(21,167,168,.08)}
.estimate-decision-option input:checked+span .estimate-choice-indicator{border-color:#129f91;background:#16aa96;box-shadow:inset 0 0 0 4px #fff}
.estimate-decision-option input:checked+span .estimate-choice-selected{display:block}
.estimate-decision-option:last-child input:checked+span{border-color:#c95a51;background:#fff3f1;box-shadow:0 0 0 3px rgba(201,90,81,.10)}
.estimate-decision-option:last-child input:checked+span .estimate-choice-indicator{border-color:#bf4b43;background:#cc5b52}
.estimate-decision-option:last-child input:checked+span .estimate-choice-selected{color:#a83c35}

.estimate-decision-details{display:none;grid-template-columns:200px minmax(0,1fr);gap:14px;margin-top:14px;padding:15px;border-top:1px solid rgba(199,165,92,.3);border-radius:10px;background:rgba(255,255,255,.62)}
.estimate-decision-details.is-visible{display:grid}
.estimate-decision-details label{font-size:13px!important}
.estimate-decision-details label span{font-size:12px;color:#81919a;font-weight:700;text-transform:none;letter-spacing:0}
.estimate-decision-details input,.estimate-decision-details textarea{font-size:16px!important}
.estimate-decision-details small{display:block;margin-top:5px;font-size:12px;color:#775f32;line-height:1.35}

.save-state.saving .save-state-dot{background:#e0aa2b;box-shadow:0 0 0 3px rgba(224,170,43,.16)}

/* Readable defaults for the Quoter. These reinforce the 12px floor after
   legacy selectors and keep day-to-day form copy comfortably above it. */
body{font-size:16px}
label,input,select,textarea,button,.btn{font-size:max(12px,1em)}
.field-help,.desc,.step-intro,.estimate-verified-intro p{font-size:14px;line-height:1.5}

@media(max-width:900px){
  .estimate-decision-instruction{align-items:flex-start;flex-direction:column}
  .estimate-decision-instruction span{text-align:left}
  .estimate-decision-details{grid-template-columns:1fr}
}

/* V1.4.5 Estimate decision completion + autosave return polish */
.estimate-decision-confirmation{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:14px 0;padding:14px 16px;border:1px solid #9edbc5;border-radius:12px;background:#effbf6;color:#17654e;font-size:14px;line-height:1.45}
.estimate-decision-confirmation strong{font-size:16px;font-weight:900}
.estimate-decision-confirmation span{font-size:13px;color:#426b60;text-align:right}
@media(max-width:760px){.estimate-decision-confirmation{align-items:flex-start;flex-direction:column}.estimate-decision-confirmation span{text-align:left}}

/* V1.4.7 Clarification workflow + persistent estimate section return */
.estimate-nav-status.clarification{color:#ff9b90!important;font-size:12px!important;font-weight:950!important;letter-spacing:.035em}
.estimate-scope-section-summary.has-clarification{border-color:#efaaa3;background:#fff5f3;box-shadow:inset 4px 0 0 #c94e45}
.estimate-scope-section-summary.has-clarification strong{color:#a63f38}
.estimate-scope-section-summary.has-clarification span{color:#7a504d}
.estimate-decision-card.needs-clarification .estimate-decision-kicker{color:#a83e36}
.estimate-decision-card.needs-clarification .estimate-decision-state{background:#ffe1dc;color:#a13d36}
.estimate-clarification-open{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:14px 0;padding:14px 16px;border:1px solid #efaaa3;border-radius:12px;background:#fff0ed;color:#9b3e37;line-height:1.45}
.estimate-clarification-open strong{font-size:16px;font-weight:950;white-space:nowrap}
.estimate-clarification-open span{font-size:14px;color:#77504c;text-align:right;max-width:720px}
.estimate-clarification-details{display:none;margin-top:14px;padding:16px;border:2px solid #e67c72;border-radius:12px;background:linear-gradient(135deg,#fff4f2,#fffafa)}
.estimate-clarification-details.is-visible{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 14px;align-items:end}
.estimate-clarification-copy{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.estimate-clarification-copy strong{font-size:17px;color:#923c35}
.estimate-clarification-copy span{font-size:14px;line-height:1.45;color:#745653;max-width:720px;text-align:right}
.estimate-clarification-notes{min-height:92px;font-size:16px!important;background:#fff!important;border-color:#e2aaa4!important}
.estimate-clarification-save{align-self:stretch;min-width:210px;background:#c94e45!important;border-color:#c94e45!important;color:#fff!important;font-size:14px!important}
.estimate-clarification-save:hover{background:#a93e37!important;border-color:#a93e37!important}
.estimate-decision-option:last-child input:checked+span .estimate-choice-selected{font-size:12px!important;font-weight:950}
@media(max-width:800px){.estimate-clarification-details.is-visible{grid-template-columns:1fr}.estimate-clarification-copy{flex-direction:column}.estimate-clarification-copy span,.estimate-clarification-open span{text-align:left}.estimate-clarification-open{flex-direction:column}.estimate-clarification-save{min-height:48px}}

/* V1.4.8 Estimate decision state synchronization + spacing polish */
.estimate-decision-list{gap:22px!important;margin-bottom:30px!important}
.estimate-decision-card{padding:24px 24px 22px!important}
.estimate-decision-head{margin-bottom:18px!important}
.estimate-decision-evidence{gap:18px!important;margin-bottom:18px!important}
.estimate-decision-evidence>div,.estimate-decision-evidence>p{padding:14px 15px!important}
.estimate-decision-question{margin:12px 0 15px!important}
.estimate-decision-instruction{margin-bottom:18px!important;padding:14px 16px!important}
.estimate-decision-options{gap:16px!important;margin-bottom:4px}
.estimate-decision-option>span{min-height:116px!important;padding:17px 18px 15px 52px!important}
.estimate-choice-indicator{left:17px!important;top:18px!important}
.estimate-decision-details{margin-top:20px!important;padding:18px!important;gap:18px!important}
.estimate-clarification-details{margin-top:20px!important;padding:20px!important;gap:16px 18px!important}
.estimate-clarification-copy{margin-bottom:2px}
.estimate-decision-confirmation,.estimate-clarification-open{margin:18px 0!important;padding:16px 18px!important}
.estimate-decision-card:not(.needs-clarification) .estimate-clarification-details:not(.is-visible){display:none!important}
.estimate-decision-card.needs-clarification .estimate-decision-state{background:#ffe1dc!important;color:#a13d36!important}
.estimate-decision-card:not(.needs-clarification):not(.is-resolved) .estimate-decision-state{background:#fff0c7!important;color:#8b5a00!important}
@media(max-width:900px){.estimate-decision-card{padding:20px!important}.estimate-decision-options{gap:12px!important}}

/* V1.4.9 Verified Discovery creative mapping */
.scope-origin-badge.adjusted{
  background:#fff4dc;
  border-color:#efc768;
  color:#8a5a00;
}
.supplemental-design-component{
  margin-bottom:0;
  border-bottom-left-radius:0;
  border-bottom-right-radius:0;
}
.supplemental-design-notes{
  margin:-1px 0 22px;
  padding:20px;
  border:1px solid #9fd9df;
  border-top:0;
  border-radius:0 0 16px 16px;
  background:linear-gradient(135deg,#f3fcfc 0%,#f8fbff 100%);
}
.supplemental-design-notes[hidden]{display:none!important}
.supplemental-notes-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:12px;
}
.supplemental-notes-heading strong{
  display:block;
  margin-top:5px;
  font-size:16px;
  color:#0d3048;
}
.supplemental-notes-heading .required-note{
  flex:none;
  padding:6px 10px;
  border-radius:999px;
  background:#fff2d0;
  border:1px solid #efd28b;
  color:#805500;
  font-size:12px;
  font-weight:800;
}
.supplemental-design-notes textarea{
  min-height:110px;
  font-size:16px;
  line-height:1.45;
}

/* V1.5.0 SEO + Content decision workflow */
.content-allocation-workflow,.list-management-decision{
  margin:0 0 22px;padding:22px;border:2px solid #e1ad3b;border-radius:15px;background:linear-gradient(135deg,#fffaf0,#fffdf8);box-shadow:0 5px 16px rgba(45,65,80,.05)
}
.content-allocation-workflow.complete,.list-management-decision.resolved{border-color:#56c49b;background:linear-gradient(135deg,#f0fcf7,#fbfffd)}
.content-allocation-workflow.over{border-color:#d95a50;background:#fff5f3}
.content-allocation-head,.list-management-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.content-allocation-head .component-name,.list-management-head .component-name{font-size:21px;margin:3px 0 5px}
.content-allocation-head .desc,.list-management-head .desc{font-size:15px;line-height:1.5;max-width:760px}
.content-allocation-state,.list-management-state{flex:0 0 auto;padding:8px 12px;border-radius:999px;background:#fff0c7;color:#8b5a00;font-size:12px;font-weight:950;letter-spacing:.06em}
.content-allocation-workflow.complete .content-allocation-state,.list-management-decision.resolved .list-management-state{background:#daf5e9;color:#157253}
.content-allocation-metrics{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #d8e5e8;border-radius:12px;overflow:hidden;background:#fff;margin-bottom:14px}
.content-allocation-metrics>div{padding:15px 18px;border-right:1px solid #d8e5e8}.content-allocation-metrics>div:last-child{border-right:0}
.content-allocation-metrics strong{display:block;font-size:25px;color:#0d3048}.content-allocation-metrics span{display:block;margin-top:2px;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#657b89}
.content-allocation-message{font-size:15px;font-weight:750;line-height:1.45;margin:0 0 15px;color:#73500c}
.content-allocation-workflow.complete .content-allocation-message{color:#17654e}.content-allocation-workflow.over .content-allocation-message{color:#a33d36}
.content-allocation-confirm,.list-management-save{min-height:44px;font-size:14px}.content-allocation-confirm:disabled,.list-management-save:disabled{opacity:.5;cursor:not-allowed}
.list-management-evidence{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:13px 15px;border:1px solid #d6e7e4;border-radius:11px;background:#fff}
.list-management-evidence span{font-size:12px;font-weight:950;letter-spacing:.07em;text-transform:uppercase;color:#0a8e90}.list-management-evidence strong{font-size:15px;color:#17384d}
.list-management-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.list-management-options label{position:relative;cursor:pointer}.list-management-options input{position:absolute;opacity:0;pointer-events:none}
.list-management-options span{display:block;min-height:88px;padding:15px 16px;border:2px solid #d4e0e5;border-radius:12px;background:#fff}
.list-management-options b{display:block;font-size:16px;color:#14344b;margin-bottom:5px}.list-management-options small{display:block;font-size:13px;line-height:1.4;color:#607483}
.list-management-options input:checked+span{border-color:#13a6a7;background:#eefdFA;box-shadow:0 0 0 3px rgba(19,166,167,.1)}
.list-management-quantity{margin:2px 0 16px;padding:16px;border:1px solid #cfe2e5;border-radius:12px;background:#fff}.list-management-quantity[hidden]{display:none!important}
.list-management-quantity>label{display:block;font-size:14px;margin-bottom:8px}.list-management-quantity .quantity-input-wrap{max-width:250px}.list-management-quantity .quantity-reference{font-size:13px;margin-top:8px}
@media(max-width:760px){.content-allocation-head,.list-management-head{flex-direction:column}.content-allocation-metrics,.list-management-options{grid-template-columns:1fr}.content-allocation-metrics>div{border-right:0;border-bottom:1px solid #d8e5e8}.content-allocation-metrics>div:last-child{border-bottom:0}}

/* V1.5.4 - Estimate Setup completion state */
.estimate-verified-handoff.is-complete{
  border-color:#a9ddc4;
  background:linear-gradient(135deg,#f2fbf6 0%,#ffffff 52%,#f2fbfa 100%);
  box-shadow:0 16px 38px rgba(19,111,82,.10),inset 5px 0 0 #1aa36f;
}
.estimate-scope-kpis .attention-sections.complete strong{color:#15805f}
.estimate-setup-complete-banner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:16px;
  margin:0 0 22px;
  padding:18px 20px;
  border:1px solid #a8ddc2;
  border-radius:18px;
  background:linear-gradient(135deg,#eefaf3 0%,#ffffff 55%,#f1fbfa 100%);
  box-shadow:0 12px 28px rgba(18,111,80,.10);
}
.estimate-setup-complete-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border-radius:50%;
  background:linear-gradient(135deg,#1aa36f,#10a9a7);
  color:#fff;
  font-size:24px;
  font-weight:900;
  box-shadow:0 8px 18px rgba(26,163,111,.22);
}
.estimate-setup-complete-banner strong{
  display:block;
  color:#126243;
  font-size:20px;
  line-height:1.15;
  margin-bottom:4px;
}
.estimate-setup-complete-banner p{
  margin:0;
  color:#4d6b60;
  font-size:16px;
  line-height:1.45;
}
.estimate-setup-complete-next{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:#daf4e6;
  border:1px solid #9fd9b7;
  color:#176848;
  font-size:12px;
  font-weight:900;
  letter-spacing:.07em;
  white-space:nowrap;
}
.wizard-save-panel .sidebar-save-review-ready{
  background:linear-gradient(135deg,#0fa9a6,#158f91)!important;
  border-color:#0f9b99!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(15,169,166,.20);
}
.wizard-save-panel .sidebar-save-review-ready:hover{
  filter:brightness(.96);
}
@media(max-width:760px){
  .estimate-setup-complete-banner{grid-template-columns:auto 1fr}
  .estimate-setup-complete-next{grid-column:1/-1;justify-self:start}
}

/* V1.5.5 - Estimate Summary alignment and pre-finalization workflow polish */
.estimate-summary-title{align-items:flex-end;margin-bottom:18px}
.estimate-summary-title h1{margin-top:0}
.estimate-summary-title p{max-width:760px}
.estimate-summary-title .actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.estimate-review-workflow{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:20px 22px;border-left:4px solid #18aeb2;background:linear-gradient(135deg,#f5fcfc,#fbfbff)}
.estimate-review-workflow h2{margin:3px 0 5px;font-size:24px}
.estimate-review-workflow .muted{max-width:620px;font-size:14px;line-height:1.5}
.estimate-review-workflow .review-handoff{min-width:390px}
.estimate-review-card{padding:24px 26px}
.estimate-review-card .card-head h2{font-size:27px;margin-top:4px}
.estimate-review-card .card-head .muted{font-size:14px;line-height:1.5}
.review-list{padding:16px 18px;border-radius:12px;margin-top:14px}
.review-list>strong{display:block;font-size:15px;margin-bottom:8px}
.review-list ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.review-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:11px 12px;border-radius:10px;background:rgba(255,255,255,.7);font-size:14px;line-height:1.45}
.review-list li>span{min-width:0}
.review-fix-link{flex:0 0 auto;display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;border:1px solid #6ecdd2;border-radius:9px;background:#fff;color:#087d86!important;font-size:12px;font-weight:900;text-decoration:none;white-space:nowrap}
.review-fix-link:hover{background:#effbfb;border-color:#16a9ad}
.estimate-summary-kpis{margin-bottom:22px;gap:16px}
.summary-kpi{position:relative;overflow:hidden;min-height:130px;padding:22px 24px;border:1px solid #d8e5e9;border-radius:16px;background:linear-gradient(145deg,#fff,#fbfdfe);box-shadow:0 9px 24px rgba(10,45,67,.055)}
.summary-kpi:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;border-radius:0 0 16px 16px}
.summary-kpi.investment:after{background:linear-gradient(90deg,#12aaa8,#22bfd0)}
.summary-kpi.hours:after{background:linear-gradient(90deg,#8abf31,#c8df37)}
.summary-kpi.scale:after{background:linear-gradient(90deg,#ef8e31,#f05b37)}
.summary-kpi .stat-label{font-size:12px;letter-spacing:.12em;font-weight:900}
.summary-kpi .money{margin-top:8px;font-size:34px;line-height:1.05;color:#092f4a}
.summary-kpi .money small{font-size:14px;font-weight:800;color:#647986}
.summary-kpi .kpi-detail{margin-top:8px;color:#657c88;font-size:13px;font-weight:600}
.scope-card h2{font-size:22px}
.scope-card .muted{font-size:14px;line-height:1.45}
.scope-card .summary-table{font-size:14px}
.scope-card .summary-table th{font-size:12px}

@media(max-width:980px){
  .estimate-review-workflow{align-items:flex-start;flex-direction:column}
  .estimate-review-workflow .review-handoff{min-width:0;width:100%;justify-content:start}
}
@media(max-width:760px){
  .estimate-summary-title{align-items:flex-start}
  .estimate-summary-title .actions{justify-content:flex-start}
  .review-list li{align-items:flex-start;flex-direction:column}
  .review-fix-link{width:100%;justify-content:center}
}

/* V1.5.6 - Estimate Setup validation integration + Estimate Review polish */
.project-required-input-summary{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  padding:18px 20px!important;
  border:1px solid #e5b34c!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#fff8e9 0%,#fffdf7 72%,#fffaf0 100%)!important;
  box-shadow:inset 4px 0 0 #e0a326,0 8px 20px rgba(111,78,12,.06);
}
.project-required-input-summary strong{font-size:18px!important;color:#77510a}
.project-required-input-summary span:not(.required-input-count){font-size:14px!important;line-height:1.5;color:#6f6248}
.required-input-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:#fff0c4;
  border:1px solid #e6c46f;
  color:#805400;
  font-size:12px!important;
  font-weight:950;
  letter-spacing:.07em;
  white-space:nowrap;
}
.estimate-project-field.needs-required-input{
  position:relative;
  border:2px solid #e1aa37!important;
  background:linear-gradient(145deg,#fff9ed,#ffffff)!important;
  box-shadow:0 0 0 4px rgba(225,170,55,.09),0 10px 24px rgba(89,68,23,.08)!important;
}
.estimate-project-field.needs-required-input input{
  border-color:#dca22d!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(225,170,55,.08);
}
.required-field-badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  margin-left:6px;
  border-radius:999px;
  background:#fff0c7;
  border:1px solid #e4c165;
  color:#845700;
  font-size:12px!important;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.field-required-message{
  display:flex;
  flex-direction:column;
  gap:3px;
  margin-top:10px;
  padding:11px 12px;
  border-radius:10px;
  background:#fff4da;
  border:1px solid #edcf86;
  color:#76500a;
}
.field-required-message strong{font-size:13px!important}
.field-required-message span{font-size:13px!important;line-height:1.45;color:#755f37}
.estimate-focus-pulse{
  animation:estimateFocusPulse 1.05s ease-in-out 0s 3;
}
@keyframes estimateFocusPulse{
  0%,100%{box-shadow:0 0 0 4px rgba(22,169,170,.08),0 10px 24px rgba(89,68,23,.08)}
  50%{box-shadow:0 0 0 7px rgba(22,169,170,.22),0 14px 30px rgba(22,169,170,.12)}
}

/* Estimate Review is now a first-class workflow step rather than a legacy summary page. */
.estimate-summary-title{
  padding:22px 24px;
  border:1px solid #cfe3e7;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fdfd 0%,#ffffff 58%,#f6f8ff 100%);
  box-shadow:0 12px 30px rgba(10,45,67,.065);
}
.estimate-summary-title h1{font-size:38px;line-height:1.06}
.estimate-summary-title p{font-size:16px;line-height:1.5;color:#5f7684}
.estimate-summary-title .quote-meta{margin-top:12px}
.estimate-review-workflow{
  position:relative;
  overflow:hidden;
  border:1px solid #b8dfe1;
  border-left:5px solid #12a8aa;
  border-radius:20px;
  box-shadow:0 14px 34px rgba(8,74,88,.08);
}
.estimate-review-workflow:after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-100px;
  top:-120px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(99,91,255,.10),rgba(99,91,255,0) 68%);
  pointer-events:none;
}
.estimate-review-workflow h2{font-size:28px!important;color:#0b314a}
.estimate-review-workflow .eyebrow{font-size:12px!important}
.review-handoff.four-stage{min-width:560px}
.review-handoff.four-stage .estimate-handoff-step strong{font-size:13px}
.review-handoff.four-stage .estimate-handoff-step.active span{
  box-shadow:0 7px 18px rgba(41,98,215,.24);
}
.estimate-review-card{
  border-radius:20px!important;
  box-shadow:0 13px 30px rgba(11,49,74,.065);
}
.estimate-review-card.has-errors{
  border:1px solid #e7aaa2!important;
  border-left:5px solid #cc4d43!important;
  background:linear-gradient(135deg,#fff8f7,#fff 62%);
}
.estimate-review-card.has-warnings{
  border:1px solid #e7c676!important;
  border-left:5px solid #daa22a!important;
  background:linear-gradient(135deg,#fffaf0,#fff 62%);
}
.estimate-review-card.clear{
  border:1px solid #a9dcc5!important;
  border-left:5px solid #20a571!important;
  background:linear-gradient(135deg,#f3fcf7,#fff 62%);
}
.review-list.errors{background:#fff0ed;border:1px solid #ecc0ba}
.review-list.errors li{border:1px solid #efd1cc;background:#fffafa}
.review-list.errors .review-fix-link{
  border-color:#dc8177;
  color:#a33f37!important;
  background:#fff;
}
.review-list.errors .review-fix-link:hover{background:#fff3f1;border-color:#c65349}
.summary-kpi{transition:transform .18s ease,box-shadow .18s ease}
.summary-kpi:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(10,45,67,.09)}
.scope-card{
  border-radius:18px!important;
  box-shadow:0 8px 22px rgba(10,45,67,.045);
}
.scope-card>summary{padding-top:20px!important;padding-bottom:20px!important}
.estimate-records-card{border-radius:18px!important}

@media(max-width:1100px){
  .review-handoff.four-stage{min-width:0;width:100%;flex-wrap:wrap}
}
@media(max-width:760px){
  .project-required-input-summary{grid-template-columns:1fr}
  .required-input-count{justify-self:start}
  .estimate-summary-title{padding:18px}
  .estimate-summary-title h1{font-size:31px}
}

/* V1.5.7 - Review remediation return flow + finalization ready state */
.estimate-review-fix-context{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:0 0 18px;
  padding:16px 18px;
  border:1px solid #d8b868;
  border-left:5px solid #d39a22;
  border-radius:16px;
  background:linear-gradient(135deg,#fff8e9 0%,#fffdf8 70%);
  box-shadow:0 10px 24px rgba(107,77,18,.06);
}
.estimate-review-fix-context>div{display:flex;align-items:center;gap:12px}
.estimate-review-fix-icon{
  width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  background:#fff0c2;border:1px solid #dfbe65;color:#7a5208;font-size:20px;font-weight:900;flex:0 0 auto;
}
.estimate-review-fix-context strong{font-size:18px;color:#68470a}
.estimate-review-fix-context p{margin:3px 0 0;font-size:14px;line-height:1.45;color:#705f3d}
.estimate-review-fix-context>span{
  display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;
  background:#fff0c7;border:1px solid #e0c06d;color:#7e5605;font-size:12px;font-weight:950;letter-spacing:.06em;white-space:nowrap;
}
.sidebar-return-review{
  background:linear-gradient(135deg,#10a8aa,#24b49b)!important;
  border-color:#10a8aa!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(16,168,170,.2);
}
.estimate-field-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}
.estimate-field-heading label{margin:0;min-width:0;flex:1 1 auto}
.estimate-field-label{display:block;font-size:15px;line-height:1.3;font-weight:800;color:#0c3149}
.estimate-field-badges{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;flex:0 0 auto}
.estimate-project-field .scope-origin-badge,.estimate-project-field .required-field-badge{margin-left:0!important}

.review-finalization-ready{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  margin-top:16px;
  padding:18px 20px!important;
  border:1px solid #9fd5bd!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#ecfbf4,#f8fffb 68%)!important;
  color:#174e3a!important;
  box-shadow:0 10px 24px rgba(31,139,96,.08);
}
.review-ready-icon{
  width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
  background:#20aa77;color:#fff;font-size:24px;font-weight:950;box-shadow:0 7px 16px rgba(32,170,119,.22);
}
.review-finalization-ready strong{display:block;font-size:20px;color:#14553d}
.review-finalization-ready p{margin:4px 0 0;font-size:14px;line-height:1.45;color:#4e6d61}
.review-ready-finalize{min-height:44px;padding-left:18px;padding-right:18px;font-size:14px!important;font-weight:900;white-space:nowrap}
.estimate-review-card.clear .card-head h2{font-size:30px!important;color:#14553d}
.estimate-review-card.clear .pill.final{background:#e6f8ee;border-color:#a8dcc1;color:#176a4b}

@media(max-width:760px){
  .estimate-review-fix-context{align-items:flex-start;flex-direction:column}
  .estimate-review-fix-context>span{align-self:flex-start}
  .estimate-field-heading{flex-direction:column;gap:7px}
  .estimate-field-badges{justify-content:flex-start}
  .review-finalization-ready{grid-template-columns:auto 1fr}
  .review-ready-finalize{grid-column:1/-1;width:100%}
}


/* V1.5.9 - Persistent Estimate Review remediation focus */
.estimate-focus-required{
  border-color:#18a9aa!important;
  box-shadow:0 0 0 5px rgba(22,169,170,.16),0 14px 32px rgba(22,169,170,.12)!important;
  background:linear-gradient(180deg,#f8ffff 0%,#f2fbfb 100%)!important;
}
.estimate-focus-required .estimate-field-label{color:#087d80!important}

/* V1.6.0 - Customer identity + Finalize & Send finish-line workflow */
.estimate-identity-title{align-items:center!important;padding:20px 22px!important}
.estimate-identity-main{display:flex;align-items:center;gap:18px;min-width:0;flex:1 1 auto}
.estimate-identity-logo{width:112px;height:92px;flex:0 0 112px;display:flex;align-items:center;justify-content:center;padding:10px;border:1px solid #cfe2e7;border-radius:15px;background:linear-gradient(145deg,#fff,#f5fbfc);box-shadow:0 7px 18px rgba(10,49,73,.07)}
.estimate-identity-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.estimate-identity-placeholder{font-size:28px;font-weight:950;letter-spacing:.04em;color:#163d55;background:linear-gradient(135deg,#e8f8f7,#eef0ff)}
.estimate-identity-copy{min-width:0}
.estimate-identity-copy h1{margin:7px 0 2px!important}
.estimate-identity-domain{display:inline-block;margin:0 0 5px;color:#0b8f94;font-size:13px;font-weight:850;text-decoration:none}
.estimate-identity-domain:hover{text-decoration:underline}
.estimate-identity-copy>p{margin-top:3px!important}
.email-recipient-panel.open{scroll-margin-top:24px}
.email-recipient-panel.finalize-panel-focus{animation:finalizePanelPulse 1.8s ease-out;box-shadow:0 0 0 4px rgba(21,174,178,.16),0 18px 40px rgba(10,49,73,.12)}
@keyframes finalizePanelPulse{0%{transform:translateY(4px);box-shadow:0 0 0 0 rgba(21,174,178,.42),0 12px 26px rgba(10,49,73,.08)}35%{transform:translateY(0);box-shadow:0 0 0 7px rgba(21,174,178,.18),0 18px 40px rgba(10,49,73,.12)}100%{box-shadow:0 0 0 4px rgba(21,174,178,.16),0 18px 40px rgba(10,49,73,.12)}}
.email-recipient-panel.open .email-panel-head h3{font-size:25px;color:#0b314a;margin:3px 0 5px}
.finalization-success-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;margin:0 0 18px;padding:19px 22px;border:1px solid #91d4b5;border-left:5px solid #1ca46f;border-radius:17px;background:linear-gradient(135deg,#edfbf4,#fbfffd);box-shadow:0 12px 28px rgba(28,137,94,.09)}
.finalization-success-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#20aa77;color:#fff;font-size:27px;font-weight:950;box-shadow:0 7px 17px rgba(32,170,119,.22)}
.finalization-success-card strong{display:block;margin:2px 0 3px;color:#14553d;font-size:21px}
.finalization-success-card p{margin:0;color:#46675b;font-size:14px;line-height:1.5}
.finalization-success-card small{display:block;margin-top:5px;color:#58766b;font-size:12px;font-weight:700}
.estimate-final-workflow{border-left-color:#20a571!important;background:linear-gradient(135deg,#f2fcf7,#fbfbff)!important}
.review-handoff.five-stage{min-width:650px}
.review-handoff.five-stage .estimate-handoff-step strong{font-size:12px}
.review-handoff.five-stage .final-step span{background:linear-gradient(135deg,#14a7ac,#4f5dde)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 7px 18px rgba(47,104,197,.24)}
@media(max-width:1180px){.review-handoff.five-stage{min-width:0;width:100%;flex-wrap:wrap}.estimate-final-workflow{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.estimate-identity-title{align-items:flex-start!important}.estimate-identity-main{align-items:flex-start;flex-direction:column}.estimate-identity-logo{width:100%;height:100px;flex-basis:auto}.finalization-success-card{grid-template-columns:auto 1fr}}

/* V1.6.1 - Final Estimate identity, workflow, and resend polish */
.estimate-identity-logo{
  width:150px;
  height:118px;
  flex:0 0 150px;
  padding:12px;
}
.estimate-identity-main{gap:22px}
.estimate-identity-copy h1{font-size:40px!important;line-height:1.05!important}
.estimate-identity-domain{font-size:14px}

.estimate-final-workflow{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:20px!important;
  align-items:stretch!important;
  padding:22px 24px!important;
}
.estimate-final-workflow-copy{max-width:760px}
.estimate-final-workflow .review-handoff.five-stage{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(34px,1fr) auto minmax(34px,1fr) auto minmax(34px,1fr) auto minmax(34px,1fr) auto!important;
  gap:12px!important;
  justify-content:stretch!important;
  align-items:center!important;
}
.estimate-final-workflow .review-handoff.five-stage>i{width:100%}
.estimate-final-workflow .review-handoff.five-stage .estimate-handoff-step{min-width:0}
.estimate-final-workflow .review-handoff.five-stage .estimate-handoff-step strong{font-size:13px!important;white-space:nowrap}
.estimate-final-workflow .review-handoff.five-stage .estimate-handoff-step small{font-size:12px!important}

#resend-email-panel.open{scroll-margin-top:28px}
#resend-email-panel.open .email-panel-head h3{font-size:27px!important}

@media(max-width:1100px){
  .estimate-final-workflow .review-handoff.five-stage{
    grid-template-columns:auto minmax(20px,1fr) auto minmax(20px,1fr) auto!important;
    row-gap:16px!important;
  }
  .estimate-final-workflow .review-handoff.five-stage>i:nth-of-type(3),
  .estimate-final-workflow .review-handoff.five-stage>i:nth-of-type(4){display:none}
  .estimate-final-workflow .review-handoff.five-stage .estimate-handoff-step:nth-of-type(7){grid-column:1}
  .estimate-final-workflow .review-handoff.five-stage .estimate-handoff-step:nth-of-type(9){grid-column:3}
}
@media(max-width:760px){
  .estimate-identity-logo{width:100%;height:120px;flex-basis:auto}
  .estimate-identity-copy h1{font-size:32px!important}
  .estimate-final-workflow .review-handoff.five-stage{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:12px!important}
  .estimate-final-workflow .review-handoff.five-stage>i{display:none!important}
}


/* V1.6.2 - Final Estimate visual polish + duplicate discovery continuity */
.estimate-identity-logo{
  width:180px!important;
  height:132px!important;
  flex:0 0 180px!important;
  padding:4px!important;
}
.estimate-identity-logo img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important}
.estimate-final-workflow{
  padding:26px 28px!important;
  border:1px solid #9ed9c3!important;
  border-left:6px solid #20a571!important;
  box-shadow:0 14px 34px rgba(17,111,83,.08)!important;
}
.estimate-final-workflow-copy h2{font-size:31px!important;margin:4px 0 8px!important}
.estimate-final-workflow-copy .muted{font-size:15px!important;line-height:1.5!important}
.estimate-final-workflow .review-handoff.five-stage{
  margin-top:4px;
  padding:18px 20px;
  border:1px solid #d7ebe4;
  border-radius:16px;
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
#resend-email-panel.open{
  border:2px solid #19a8ad!important;
  box-shadow:0 0 0 5px rgba(25,168,173,.12),0 18px 40px rgba(10,49,73,.12)!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fefe 100%)!important;
}
#resend-email-panel.open .email-panel-head{padding-bottom:8px}
@media(max-width:760px){
  .estimate-identity-logo{width:100%!important;height:145px!important;flex-basis:auto!important}
  .estimate-final-workflow{padding:20px!important}
}


/* V1.6.3 - Universal estimate presentation + navigation terminology */
.top{gap:18px!important}
.brand-wrap{min-width:0!important}
.brand-sub{display:flex!important;align-items:center!important;gap:8px!important;white-space:nowrap}
.pilot-inline{position:static!important;margin:0!important;transform:none!important;font-size:12px!important;padding:3px 8px!important;line-height:1!important}
.top nav{gap:6px!important;align-items:center!important}
.top nav>a,.header-feedback-btn{white-space:nowrap}
.account-menu{position:relative;display:flex;align-items:center;margin-left:2px}
.account-menu-toggle{border:0;cursor:pointer;font:inherit}
.account-menu-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:3000;width:220px;padding:10px;background:#fff;border:1px solid #cfe2e7;border-radius:14px;box-shadow:0 16px 38px rgba(9,43,66,.20)}
.account-menu-panel[hidden]{display:none!important}
.account-menu-name{font-size:15px;font-weight:800;color:#0b2f48;padding:8px 10px 2px}
.account-menu-email{font-size:12px;color:#61788a;padding:0 10px 10px;overflow-wrap:anywhere}
.account-menu-panel a{display:block!important;padding:10px!important;border-radius:9px!important;color:#0b2f48!important;text-decoration:none!important;font-size:14px!important;font-weight:700!important}
.account-menu-panel a:hover{background:#eef8fa!important}
.estimate-review-workflow{display:grid!important;grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr)!important;gap:28px!important;align-items:center!important}
.estimate-review-workflow .review-handoff.two-stage,.estimate-review-workflow .review-handoff.three-stage{width:100%;min-width:0}
.estimate-review-workflow .review-handoff.two-stage .estimate-handoff-step,.estimate-review-workflow .review-handoff.three-stage .estimate-handoff-step{min-width:0}
#resend-email-panel.open{background:linear-gradient(180deg,#f5ffff 0%,#ffffff 100%)!important;border-left:6px solid #18a8ad!important}
@media(max-width:1180px){
  .top{padding-left:18px!important;padding-right:18px!important}
  .top nav{gap:3px!important}
  .top nav>a,.header-feedback-btn{padding-left:9px!important;padding-right:9px!important}
  .brand-sub{font-size:12px!important}
  .estimate-review-workflow{grid-template-columns:1fr!important;gap:18px!important}
}
@media(max-width:900px){
  .top{align-items:flex-start!important}
  .top nav{flex-wrap:wrap!important;justify-content:flex-end!important}
  .brand-sub{white-space:normal}
}


/* V1.6.4 - Unified Discovery recovery + stable review/final workflow layout */
/* Final Estimate must always own the full row. V1.6.3's generic review grid must not squeeze it. */
.estimate-review-workflow.estimate-final-workflow{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:22px!important;
  align-items:stretch!important;
}
.estimate-final-workflow .review-handoff.five-stage{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(36px,1fr) auto minmax(36px,1fr) auto minmax(36px,1fr) auto minmax(36px,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
}
.estimate-final-workflow .review-handoff.five-stage>i{
  width:100%!important;
  min-width:28px!important;
}
.estimate-final-workflow .review-handoff.five-stage .estimate-handoff-step strong{
  white-space:nowrap!important;
}
/* Give the customer mark enough presence without overpowering the estimate identity. */
.estimate-identity-logo{
  width:190px!important;
  height:142px!important;
  flex:0 0 190px!important;
  padding:5px!important;
}
.estimate-identity-logo img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
}
/* Keep the resend task visually active for as long as it is open. */
#resend-email-panel.open{
  border:2px solid #18a8ad!important;
  border-left:7px solid #18a8ad!important;
  box-shadow:0 0 0 5px rgba(24,168,173,.12),0 18px 40px rgba(10,49,73,.12)!important;
  background:linear-gradient(180deg,#f2ffff 0%,#ffffff 100%)!important;
}
@media(max-width:1180px){
  .estimate-final-workflow .review-handoff.five-stage{
    grid-template-columns:auto minmax(20px,1fr) auto minmax(20px,1fr) auto!important;
    row-gap:16px!important;
  }
  .estimate-final-workflow .review-handoff.five-stage>i:nth-of-type(3),
  .estimate-final-workflow .review-handoff.five-stage>i:nth-of-type(4){display:none!important}
}
@media(max-width:760px){
  .estimate-identity-logo{width:100%!important;height:150px!important;flex-basis:auto!important}
  .estimate-final-workflow .review-handoff.five-stage{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important}
  .estimate-final-workflow .review-handoff.five-stage>i{display:none!important}
}


/* V1.6.5 - Draft Estimate Review uses the same full-width workflow rail as Final Estimate. */
.estimate-review-workflow.estimate-draft-workflow{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:20px!important;
  align-items:stretch!important;
}
.estimate-draft-workflow-copy{max-width:760px}
.estimate-draft-workflow .review-handoff.four-stage{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(36px,1fr) auto minmax(36px,1fr) auto minmax(36px,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
}
.estimate-draft-workflow .review-handoff.four-stage>i{
  width:100%!important;
  min-width:28px!important;
}
.estimate-draft-workflow .review-handoff.four-stage .estimate-handoff-step strong{white-space:nowrap!important}
.estimate-draft-workflow .review-handoff.two-stage{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(60px,1fr) auto!important;
  gap:16px!important;
  align-items:center!important;
}
.estimate-draft-workflow .review-handoff.two-stage>i{width:100%!important;min-width:44px!important}
@media(max-width:920px){
  .estimate-draft-workflow .review-handoff.four-stage{
    grid-template-columns:auto 1fr auto 1fr auto!important;
  }
  .estimate-draft-workflow .review-handoff.four-stage>i:nth-of-type(3){display:none!important}
  .estimate-draft-workflow .review-handoff.four-stage .estimate-handoff-step:nth-of-type(7){grid-column:1}
}
@media(max-width:720px){
  .estimate-draft-workflow .review-handoff.four-stage,
  .estimate-draft-workflow .review-handoff.two-stage{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:12px!important;
  }
  .estimate-draft-workflow .review-handoff.four-stage>i,
  .estimate-draft-workflow .review-handoff.two-stage>i{display:none!important}
}

/* V1.6.6 - Finalize panel active-state alignment */
#finalize-email-panel.open{
  border:2px solid #18a8ad!important;
  border-left:7px solid #18a8ad!important;
  box-shadow:0 0 0 5px rgba(24,168,173,.12),0 18px 40px rgba(10,49,73,.12)!important;
  background:linear-gradient(180deg,#f2ffff 0%,#ffffff 100%)!important;
  scroll-margin-top:28px;
}
#finalize-email-panel.open .email-panel-head{
  padding-bottom:8px;
}
#finalize-email-panel.open .email-panel-head h3{
  font-size:27px!important;
}
#finalize-email-panel.open .eyebrow::after{
  content:' · ACTIVE';
  color:#0b8f94;
}

/* V1.6.7 - Final estimate identity footer + clean recipient formatting */
.estimate-summary-title.estimate-identity-title{
  display:block!important;
  padding:0!important;
  overflow:hidden;
}
.estimate-identity-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:24px 26px 20px;
}
.estimate-identity-main{
  align-items:center!important;
}
.estimate-identity-logo{
  width:200px!important;
  height:150px!important;
  flex:0 0 200px!important;
  padding:8px!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,#ffffff 0%,#f4fbfc 100%)!important;
  box-shadow:0 8px 22px rgba(10,49,73,.08)!important;
}
.estimate-identity-copy{
  padding:4px 0;
}
.estimate-identity-copy>p{
  max-width:760px;
}
.estimate-identity-footer{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  padding:14px 26px;
  border-top:1px solid #d9e7ea;
  background:linear-gradient(90deg,#f5fbfb 0%,#f8fafc 58%,#f5f7ff 100%);
}
.estimate-meta-item{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  padding-left:14px;
  border-left:1px solid #cfe0e4;
  color:#4f6877;
}
.estimate-meta-item small{
  font-size:12px!important;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:none;
  color:#6f8692;
}
.estimate-meta-item strong{
  font-size:14px;
  color:#18384d;
}
#resend-email-panel textarea[name="recipients"]{
  line-height:1.65;
}
@media(max-width:900px){
  .estimate-identity-top{align-items:flex-start;flex-direction:column}
  .estimate-identity-top>.actions{width:100%;justify-content:flex-start}
}
@media(max-width:760px){
  .estimate-identity-top{padding:20px}
  .estimate-identity-logo{width:100%!important;height:155px!important;flex-basis:auto!important}
  .estimate-identity-footer{padding:13px 20px;gap:10px}
  .estimate-meta-item{width:100%;padding-left:0;border-left:0;border-top:1px solid #d8e5e8;padding-top:9px}
}

/* V1.6.8 - Final estimate finishing details: balanced actions + trackable estimate ID */
.estimate-identity-top>.actions{
  width:210px;
  flex:0 0 210px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:10px;
}
.estimate-identity-top>.actions .btn,
.estimate-identity-top>.actions form,
.estimate-identity-top>.actions form .btn{
  width:100%;
  box-sizing:border-box;
}
.workflow-context-badge{
  display:inline-flex!important;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.workflow-context-badge .context-stage,
.workflow-context-badge .context-discovery-id{
  color:#0c7f8b;
}
.workflow-context-badge .context-estimate-id{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 9px;
  border:1px solid #55bcc3;
  border-radius:999px;
  background:linear-gradient(135deg,#dff8f7,#eef7ff);
  color:#0a5973;
  font-weight:950;
  letter-spacing:.07em;
  box-shadow:0 2px 7px rgba(13,115,132,.08);
}
.workflow-context-badge .context-separator{
  color:#85a6b1;
  font-weight:900;
}
.estimate-final-workflow .final-step span{
  font-weight:950!important;
}
@media(max-width:900px){
  .estimate-identity-top>.actions{
    width:100%;
    flex:1 1 auto;
  }
}

/* =========================================================
   Estimates Dashboard V2
   ========================================================= */
.estimates-dashboard-hero{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:28px;
}
.estimates-dashboard-hero > div:first-child{max-width:820px;}
.estimates-dashboard-hero .hero-actions{margin:0;flex:0 0 auto;}

.estimate-kpi-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
    margin:0 0 24px;
}
.estimate-kpi{
    position:relative;
    min-width:0;
    background:#fff;
    border:1px solid #d9e7eb;
    border-radius:17px;
    padding:20px 20px 22px;
    box-shadow:0 12px 28px rgba(9,47,67,.06);
    overflow:hidden;
}
.estimate-kpi > span{
    display:block;
    color:#607487;
    font-size:12px;
    font-weight:850;
    letter-spacing:.1em;
    text-transform:uppercase;
    margin-bottom:9px;
}
.estimate-kpi > strong{
    display:block;
    color:var(--navy);
    font-size:28px;
    line-height:1.05;
    margin-bottom:8px;
}
.estimate-kpi > small{display:block;color:#66798a;font-size:12px;line-height:1.35;min-height:32px;}
.kpi-accent{position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--cyan);}
.kpi-accent.lime{background:var(--lime);}.kpi-accent.teal{background:#18a6a6;}.kpi-accent.orange{background:var(--orange);}.kpi-accent.green{background:#25ae73;}

.estimate-dashboard-controls{
    display:grid;
    grid-template-columns:auto minmax(260px,1fr);
    gap:18px 28px;
    align-items:end;
    padding:22px 24px;
    margin-bottom:24px;
}
.estimate-dashboard-controls h2{margin:3px 0 0;}
.estimate-search-wrap{justify-self:end;width:min(100%,460px);}
.estimate-search-wrap input{
    width:100%;
    min-height:46px;
    border:1px solid #bfd5dc;
    border-radius:12px;
    padding:0 15px;
    background:#fff;
    color:var(--navy);
    font-size:14px;
}
.estimate-filter-tabs{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid #e2ecef;padding-top:16px;}
.estimate-filter{
    border:1px solid #cbdde2;
    border-radius:999px;
    background:#f7fbfc;
    color:#4c6576;
    min-height:38px;
    padding:0 15px;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}
.estimate-filter:hover{border-color:#69bdca;color:var(--navy);}
.estimate-filter.active{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 5px 14px rgba(9,47,67,.15);}

.estimate-dashboard-section{margin:0 0 28px;}
.estimate-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 4px 13px;}
.estimate-section-head h2{margin:4px 0 3px;color:var(--navy);font-size:24px;}
.estimate-section-head p{margin:0;color:#65798a;font-size:13px;}
.estimate-dashboard-list{display:grid;gap:13px;}
.estimate-dashboard-row{
    background:#fff;
    border:1px solid #d8e6ea;
    border-radius:18px;
    box-shadow:0 10px 26px rgba(10,48,66,.055);
    overflow:hidden;
}
.estimate-dashboard-row[hidden]{display:none!important;}
.estimate-row-main{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 20px 15px;}
.estimate-row-identity{min-width:0;}
.estimate-row-id{display:inline-flex;color:#09899a;font-size:12px;font-weight:900;letter-spacing:.07em;text-decoration:none;margin-bottom:5px;}
.estimate-row-identity h3{margin:0 0 5px;font-size:19px;line-height:1.15;}
.estimate-row-identity h3 a{color:var(--navy);text-decoration:none;}
.estimate-row-identity h3 a:hover,.estimate-row-id:hover{text-decoration:underline;}
.estimate-row-meta{color:#6b7e8d;font-size:12px;}.estimate-row-meta span{margin:0 5px;color:#9babb5;}
.estimate-row-numbers{display:grid;grid-template-columns:repeat(2,minmax(95px,auto));gap:12px;flex:0 0 auto;}
.estimate-row-numbers > div{background:#f5fafb;border:1px solid #dce9ec;border-radius:12px;padding:10px 13px;text-align:right;}
.estimate-row-numbers span{display:block;color:#738693;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;}
.estimate-row-numbers strong{display:block;color:var(--navy);font-size:18px;line-height:1.1;}

.estimate-lifecycle{
    display:grid;
    grid-template-columns:minmax(118px,1fr) 28px minmax(118px,1fr) 28px minmax(118px,1fr) 28px minmax(118px,1fr);
    align-items:center;
    gap:8px;
    margin:0 20px;
    padding:13px 15px;
    background:linear-gradient(90deg,#f7fcfa 0%,#f6fbfc 52%,#fbf9ff 100%);
    border:1px solid #dce9e7;
    border-radius:13px;
}
.lifecycle-item{min-width:0;position:relative;padding-left:12px;border-left:3px solid #c9d7dc;}
.lifecycle-item.complete{border-color:#25ae73;}.lifecycle-item.pending{border-color:#e4a72e;}.lifecycle-item.warning{border-color:#dd8a28;}.lifecycle-item.stopped{border-color:#cf4c4c;}.lifecycle-item.future{border-color:#8d76c7;}
.lifecycle-label{display:block;color:#6d7f8d;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px;}
.lifecycle-item strong{display:block;color:var(--navy);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lifecycle-item small{display:block;color:#6e808d;font-size:12px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.lifecycle-connector{height:2px;background:linear-gradient(90deg,#4bc0ac,#5d75ef);border-radius:2px;opacity:.7;}

.estimate-draft-state{display:flex;align-items:center;gap:10px;margin:0 20px;padding:12px 14px;border:1px solid #d9e7eb;border-radius:13px;background:#f7fbfc;}
.estimate-state-dot{width:10px;height:10px;border-radius:50%;background:#13a9bd;box-shadow:0 0 0 5px rgba(19,169,189,.1);flex:0 0 auto;}
.estimate-draft-state strong{display:block;color:var(--navy);font-size:13px;}.estimate-draft-state small{display:block;color:#6c7f8e;font-size:12px;margin-top:2px;}
.estimate-row-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-top:1px solid #edf2f4;margin-top:14px;background:#fbfdfe;}
.estimate-row-badges{display:flex;gap:6px;flex-wrap:wrap;min-height:24px;align-items:center;}
.estimate-row-footer .row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;}.estimate-row-footer form{display:inline-flex;margin:0;}
.estimate-filter-empty{display:flex;flex-direction:column;gap:4px;text-align:center;padding:30px;margin-bottom:28px;}.estimate-filter-empty span{color:#6c7f8e;font-size:13px;}

@media(max-width:1180px){
    .estimate-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
    .estimate-lifecycle{grid-template-columns:repeat(4,minmax(120px,1fr));}
    .lifecycle-connector{display:none;}
}
@media(max-width:820px){
    .estimates-dashboard-hero{align-items:flex-start;flex-direction:column;}
    .estimate-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .estimate-dashboard-controls{grid-template-columns:1fr;}.estimate-search-wrap{justify-self:stretch;width:100%;}.estimate-filter-tabs{grid-column:1;}
    .estimate-row-main{align-items:flex-start;flex-direction:column;}.estimate-row-numbers{width:100%;}.estimate-row-numbers > div{text-align:left;}
    .estimate-lifecycle{grid-template-columns:repeat(2,minmax(0,1fr));}
    .estimate-row-footer{align-items:flex-start;flex-direction:column;}.estimate-row-footer .row-actions{justify-content:flex-start;}
}
@media(max-width:520px){
    .estimate-kpi-grid{grid-template-columns:1fr;}
    .estimate-lifecycle{grid-template-columns:1fr;}
    .estimate-row-numbers{grid-template-columns:1fr 1fr;}
}

/* =========================================================
   V1.7.1 - Estimates Dashboard visual hierarchy + contrast
   ========================================================= */
.estimates-dashboard-hero{
    border:1px solid rgba(126,218,229,.2);
    box-shadow:0 22px 52px rgba(5,40,63,.16);
}
.estimates-dashboard-hero .btn{
    background:linear-gradient(135deg,#18b5c3 0%,#0b8fa5 100%);
    border-color:transparent;
    box-shadow:0 9px 22px rgba(18,169,195,.25);
}

.estimate-kpi-grid{gap:16px;}
.estimate-kpi{
    min-height:132px;
    padding:22px 20px 24px;
    border:1px solid rgba(10,77,99,.12);
    box-shadow:0 14px 32px rgba(7,42,62,.075);
    transition:transform .18s ease,box-shadow .18s ease;
}
.estimate-kpi:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 36px rgba(7,42,62,.11);
}
.estimate-kpi:nth-child(1){background:linear-gradient(145deg,#ffffff 0%,#edf9fb 100%);}
.estimate-kpi:nth-child(2){background:linear-gradient(145deg,#ffffff 0%,#f5f9e8 100%);}
.estimate-kpi:nth-child(3){background:linear-gradient(145deg,#ffffff 0%,#e9f8f7 100%);}
.estimate-kpi:nth-child(4){background:linear-gradient(145deg,#ffffff 0%,#fff4ee 100%);}
.estimate-kpi:nth-child(5){background:linear-gradient(145deg,#ffffff 0%,#edf9f2 100%);}
.estimate-kpi > strong{font-size:31px;letter-spacing:-.035em;}
.estimate-kpi > span{color:#4f6979;}
.estimate-kpi .kpi-accent{height:5px;}

.estimate-dashboard-controls{
    position:relative;
    overflow:hidden;
    border:1px solid #c7e2e7;
    border-top:4px solid var(--cyan);
    background:linear-gradient(120deg,#ffffff 0%,#f4fbfc 58%,#eef7fb 100%);
    box-shadow:0 16px 36px rgba(7,42,62,.07);
}
.estimate-dashboard-controls:after{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    border-radius:50%;
    right:-90px;
    top:-110px;
    background:radial-gradient(circle,rgba(18,169,195,.13),rgba(18,169,195,0) 70%);
    pointer-events:none;
}
.estimate-dashboard-controls h2{font-size:27px;color:var(--navy);}
.estimate-search-wrap{position:relative;z-index:1;}
.estimate-search-wrap input{
    min-height:50px;
    border:1px solid #a9d0d8;
    box-shadow:0 3px 10px rgba(8,61,82,.05) inset;
}
.estimate-search-wrap input:focus{
    outline:0;
    border-color:var(--cyan);
    box-shadow:0 0 0 4px rgba(18,169,195,.12);
}
.estimate-filter-tabs{position:relative;z-index:1;gap:9px;}
.estimate-filter{
    background:#fff;
    border-color:#bed7dd;
    color:#355467;
    box-shadow:0 2px 6px rgba(8,47,66,.04);
}
.estimate-filter.active{
    background:linear-gradient(135deg,#06283f 0%,#0d4661 100%);
    border-color:#06283f;
    box-shadow:0 7px 16px rgba(6,40,63,.18);
}

.estimate-dashboard-section{
    position:relative;
    margin-bottom:34px;
}
.estimate-section-head{
    align-items:center;
    margin:0 0 14px;
    padding:17px 20px 18px;
    border-radius:18px;
    overflow:hidden;
    position:relative;
    box-shadow:0 11px 26px rgba(6,40,63,.08);
}
.estimate-section-head:after{
    content:"";
    position:absolute;
    inset:auto -45px -90px auto;
    width:190px;
    height:190px;
    border-radius:50%;
    pointer-events:none;
}
.draft-estimates-section .estimate-section-head{
    background:linear-gradient(115deg,#06283f 0%,#0b3550 72%,#0a5266 100%);
    border-left:5px solid #1ab4c3;
}
.draft-estimates-section .estimate-section-head:after{
    background:radial-gradient(circle,rgba(18,169,195,.28),rgba(18,169,195,0) 68%);
}
.final-estimates-section .estimate-section-head{
    background:linear-gradient(115deg,#08324a 0%,#104966 72%,#0a6a72 100%);
    border-left:5px solid #38c5b4;
}
.final-estimates-section .estimate-section-head:after{
    background:radial-gradient(circle,rgba(56,197,180,.28),rgba(56,197,180,0) 68%);
}
.estimate-section-head .eyebrow{color:#7de1e8;margin-bottom:4px;}
.estimate-section-head h2{color:#fff;font-size:25px;margin:2px 0 2px;}
.estimate-section-head p{color:#c7dbe4;font-size:13px;}
.section-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:32px;
    height:32px;
    margin-left:7px;
    padding:0 9px;
    border-radius:999px;
    vertical-align:2px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    color:#fff;
    font-size:14px;
}

.estimate-dashboard-list{gap:15px;}
.estimate-dashboard-row{
    position:relative;
    border-color:#d3e4e8;
    box-shadow:0 12px 28px rgba(8,47,66,.065);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.estimate-dashboard-row:hover{
    transform:translateY(-1px);
    box-shadow:0 16px 34px rgba(8,47,66,.095);
    border-color:#b9d8de;
}
.estimate-row-draft:before,
.estimate-row-final:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    bottom:0;
    width:5px;
    z-index:2;
}
.estimate-row-draft:before{background:linear-gradient(180deg,#18b3c4,#0878c9);}
.estimate-row-final:before{background:linear-gradient(180deg,#26b88b,#12a9c3);}
.estimate-row-main{
    background:linear-gradient(110deg,#ffffff 0%,#fbfdfe 58%,#f2fafb 100%);
    padding-left:24px;
}
.estimate-row-final .estimate-row-main{
    background:linear-gradient(110deg,#ffffff 0%,#f8fcfb 58%,#edf9f6 100%);
}
.estimate-row-id{
    padding:4px 9px;
    border-radius:999px;
    background:#eaf8fb;
    border:1px solid #b8e0e6;
    color:#087a8e;
    text-decoration:none;
}
.estimate-row-identity h3{font-size:20px;}
.estimate-row-numbers > div{
    background:linear-gradient(145deg,#f7fbfc,#edf6f8);
    border-color:#d1e4e8;
    min-width:112px;
}
.estimate-row-numbers strong{font-size:19px;}

.estimate-draft-state{
    margin-top:1px;
    background:linear-gradient(90deg,#f2fbfc 0%,#edf7fb 100%);
    border-color:#cce5e9;
    border-left:4px solid #18b3c4;
}
.estimate-draft-state strong{font-size:14px;}

.estimate-row-final .estimate-lifecycle{
    background:linear-gradient(90deg,#effaf5 0%,#eef8fa 50%,#f5f2fb 100%);
    border-color:#cfe3de;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.lifecycle-item{
    padding:8px 10px 8px 13px;
    border-radius:8px;
    background:rgba(255,255,255,.58);
}
.lifecycle-item.complete{background:rgba(234,249,241,.9);}
.lifecycle-item.pending{background:rgba(255,247,227,.92);}
.lifecycle-item.future{background:rgba(246,242,253,.92);}
.lifecycle-item.stopped{background:rgba(253,239,239,.92);}
.lifecycle-item.warning{background:rgba(255,242,232,.92);}
.lifecycle-label{color:#587180;}
.lifecycle-item strong{font-size:14px;}
.lifecycle-connector{height:3px;opacity:.85;}

.estimate-row-footer{
    background:linear-gradient(90deg,#fbfdfe,#f6fafb);
    padding-left:24px;
}
.estimate-row-footer .btn.small{
    min-height:38px;
    border-radius:9px;
}
.estimate-row-final .estimate-row-footer .btn.small:not(.outline){
    background:linear-gradient(135deg,#0b8fa5,#0878c9);
    border-color:transparent;
}

@media(max-width:820px){
    .estimate-section-head{padding:16px 17px;}
    .estimate-section-head h2{font-size:23px;}
}

/* Estimates Dashboard V1.7.2 - elevate record-level investment and hours */
.estimate-row-numbers{
    gap:10px;
    align-self:stretch;
}
.estimate-row-numbers > div{
    min-width:132px;
    min-height:72px;
    padding:10px 14px 11px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-radius:11px;
    box-shadow:0 5px 13px rgba(7,42,62,.055);
}
.estimate-row-numbers > div:first-child{
    min-width:154px;
    background:linear-gradient(145deg,#f2fbfb 0%,#e3f6f7 100%);
    border-color:#a9dce1;
    border-bottom:3px solid #16aeb8;
}
.estimate-row-numbers > div:last-child{
    background:linear-gradient(145deg,#f6f9fc 0%,#eaf2f8 100%);
    border-color:#c3d7e4;
    border-bottom:3px solid #315a8d;
}
.estimate-row-numbers span{
    font-size:11px;
    font-weight:900;
    letter-spacing:.085em;
    color:#587180;
}
.estimate-row-numbers > div:first-child span:before{content:"EST. ";}
.estimate-row-numbers strong{
    margin-top:3px;
    font-size:22px;
    line-height:1.05;
    letter-spacing:-.025em;
    color:#123c55;
}
.estimate-row-numbers > div:first-child strong{
    font-size:25px;
    color:#087f89;
}
.estimate-row-numbers > div:last-child strong{color:#244a78;}
@media(max-width:820px){
    .estimate-row-numbers > div,
    .estimate-row-numbers > div:first-child{min-width:0;}
}

/* Proposal / Contract Routing V1.8.0 */
.proposal-routing-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,390px);
    gap:24px;
    align-items:center;
    margin:18px 0;
    padding:24px 26px;
    border:1px solid #c8e4e7;
    border-left:5px solid #18aeb8;
    background:linear-gradient(120deg,#ffffff 0%,#f1fbfb 62%,#f3f6ff 100%);
    box-shadow:0 14px 30px rgba(8,47,66,.06);
}
.proposal-routing-card.route-needed{
    border-left-color:#e0a11a;
    background:linear-gradient(120deg,#fffdf7 0%,#fff8e9 54%,#f7fbfc 100%);
}
.proposal-routing-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:3px 0 6px;}
.proposal-routing-title-row h2{margin:0;font-size:24px;}
.proposal-routing-copy>p{margin:0;color:#526a7a;font-size:14px;line-height:1.55;max-width:820px;}
.proposal-route-summary{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px;}
.proposal-route-summary>div{min-width:155px;padding:10px 12px;border:1px solid #cfe2e6;border-radius:10px;background:rgba(255,255,255,.78);}
.proposal-route-summary span{display:block;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#64808e;margin-bottom:3px;}
.proposal-route-summary strong{display:block;font-size:14px;color:#0b334b;}
.proposal-routing-control{display:grid;gap:8px;padding:15px;border:1px solid #c4dce2;border-radius:13px;background:rgba(255,255,255,.82);}
.proposal-routing-control label{font-size:12px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;color:#496676;}
.proposal-routing-control select{min-height:46px;}
.proposal-routing-control .btn{justify-content:center;}
.proposal-routing-migration{padding:14px 16px;border-radius:12px;background:#fff3d8;border:1px solid #edcf88;display:grid;gap:4px;}
.proposal-routing-migration strong{font-size:14px;color:#72520b;}
.proposal-routing-migration span{font-size:12px;color:#735e2f;}

.proposal-admin-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:5px solid #17aeb9;background:linear-gradient(120deg,#fff 0%,#effafa 70%,#f3f4ff 100%);}
.proposal-admin-intro h2{font-size:28px;margin:3px 0 7px;}
.proposal-admin-intro p{font-size:14px;color:#536d7b;max-width:780px;line-height:1.55;}
.proposal-admin-stats{display:flex;gap:10px;flex-wrap:wrap;}
.proposal-admin-stats>div{min-width:92px;padding:14px;border-radius:12px;background:#082f48;color:#fff;text-align:center;}
.proposal-admin-stats strong{display:block;font-size:24px;}
.proposal-admin-stats span{display:block;font-size:12px;color:#9ddde3;font-weight:800;text-transform:uppercase;letter-spacing:.05em;}
.proposal-admin-section{margin-top:18px;}
.proposal-admin-section .card-head{margin-bottom:14px;}
.proposal-admin-section .card-head h2{font-size:25px;}
.proposal-admin-list{display:grid;gap:12px;}
.proposal-admin-row{padding:14px;border:1px solid #d4e4e8;border-radius:13px;background:linear-gradient(110deg,#fff,#f7fbfc);}
.proposal-admin-row-main{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr);gap:12px;margin-bottom:10px;}
.proposal-admin-row-map{display:flex;align-items:end;gap:10px;flex-wrap:wrap;}
.proposal-admin-row label,.proposal-admin-add-grid label{font-size:12px;font-weight:900;color:#456172;display:grid;gap:5px;}
.proposal-admin-row input,.proposal-admin-row select,.proposal-admin-add-grid input,.proposal-admin-add-grid select{min-height:42px;}
.proposal-admin-row-map>label:not(.proposal-admin-check):not(.proposal-admin-order){min-width:220px;flex:1;}
.proposal-admin-order{width:86px;}
.proposal-admin-check{display:flex!important;grid-template-columns:auto auto!important;align-items:center;gap:7px!important;min-height:42px;padding:0 8px;white-space:nowrap;}
.proposal-admin-check input{min-height:0!important;width:auto;}
.proposal-admin-add{margin-top:14px;border:1px dashed #73cbd5;border-radius:13px;background:#f4fbfc;}
.proposal-admin-add summary{cursor:pointer;padding:14px 16px;font-size:14px;font-weight:900;color:#087d8f;}
.proposal-admin-add-grid{display:grid;grid-template-columns:1.1fr 1.2fr 1fr .55fr auto auto;gap:10px;padding:0 16px 16px;align-items:end;}
.template-row .proposal-admin-row-main{grid-template-columns:1fr 1fr;}
.channel-row .proposal-admin-row-main{grid-template-columns:.8fr 1.2fr;}
.compact-success{margin:12px 0;}

@media(max-width:900px){
    .proposal-routing-card{grid-template-columns:1fr;}
    .proposal-admin-intro{align-items:flex-start;flex-direction:column;}
    .proposal-admin-row-main{grid-template-columns:1fr;}
    .proposal-admin-add-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:620px){
    .proposal-admin-add-grid{grid-template-columns:1fr;}
    .proposal-admin-row-map{align-items:stretch;flex-direction:column;}
    .proposal-admin-order{width:100%;}
}

/* Proposal Routing V1.8.1 UX polish */
.proposal-admin-guide{margin-top:16px;padding:25px 28px;border-left:5px solid #19b6c0;background:linear-gradient(120deg,#fff 0%,#f1fbfb 66%,#f4f6ff 100%)}
.proposal-admin-guide h2{font-size:27px;margin:4px 0 8px}.proposal-admin-guide p{font-size:14px;line-height:1.55;color:#526b7b;max-width:980px}
.proposal-guide-steps{display:flex;align-items:center;gap:12px;margin:20px 0 14px;flex-wrap:wrap}.proposal-guide-steps>div{display:flex;align-items:center;gap:10px;padding:12px 15px;border:1px solid #c9e4e7;border-radius:12px;background:#fff;min-width:185px}.proposal-guide-steps strong{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#07334c;color:#fff;font-size:14px}.proposal-guide-steps span{display:grid;font-size:12px;color:#607887}.proposal-guide-steps b{font-size:14px;color:#0a344c}.proposal-guide-steps i,.proposal-guide-example i{font-style:normal;color:#17aebb;font-weight:900}
.proposal-guide-example{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:12px 14px;border-radius:11px;background:#0a3852;color:#fff;font-size:12px}.proposal-guide-example b{color:#7ee3e6;text-transform:uppercase;letter-spacing:.07em}.proposal-guide-example span{font-weight:800}.proposal-guide-note{font-size:12px!important;margin:11px 0 0!important}
.proposal-admin-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.proposal-admin-tab{display:flex;align-items:center;justify-content:center;gap:9px;padding:15px;border:1px solid #c9dde3;border-radius:13px;background:#fff;text-decoration:none;color:#173d55;box-shadow:0 6px 16px rgba(9,48,66,.04)}.proposal-admin-tab strong{font-size:21px;color:#0a344c}.proposal-admin-tab span{font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.proposal-admin-tab.active{background:linear-gradient(110deg,#08364f,#087f8b);border-color:#087f8b;color:#fff}.proposal-admin-tab.active strong{color:#fff}
.proposal-admin-item{border:1px solid #d3e4e8;border-radius:13px;background:#fff;overflow:hidden}.proposal-admin-item>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;list-style:none}.proposal-admin-item>summary::-webkit-details-marker{display:none}.proposal-admin-item>summary>div:first-child{display:grid;gap:5px}.proposal-admin-item>summary strong{font-size:15px;color:#0b334b}.proposal-admin-item>summary span{font-size:12px;color:#607987}.proposal-admin-item>summary i{font-style:normal;color:#15aeb9;font-weight:900}.proposal-item-state{display:flex!important;align-items:center;gap:8px!important}.proposal-item-state>b{font-size:12px;color:#087f8b}.status-pill{display:inline-flex!important;width:auto!important;padding:5px 8px;border-radius:999px;font-size:12px!important;font-weight:900!important}.status-active{background:#e4f8ee;color:#18764d!important}.status-muted{background:#edf2f4;color:#667984!important}.status-fallback{background:#fff3d8;color:#8a6205!important}.proposal-admin-item[open]>summary{background:#f1fafb;border-bottom:1px solid #d4e6e9}.proposal-admin-item .proposal-admin-row{border:0;border-radius:0;background:#fff;padding:18px}.proposal-admin-row small{font-size:12px;font-weight:600;color:#6c818d;line-height:1.35}.proposal-field-help{width:100%;padding:9px 11px;border-radius:9px;background:#f1f7f8;color:#5b727f;font-size:12px}.proposal-field-help b{color:#183f55}.proposal-admin-add{border-style:solid;background:#f2fbfc}.proposal-admin-add summary{font-size:13px}.proposal-admin-section>.card-head .muted{font-size:13px;line-height:1.5;max-width:900px}
@media(max-width:720px){.proposal-admin-tabs{grid-template-columns:1fr}.proposal-guide-steps{align-items:stretch;flex-direction:column}.proposal-guide-steps>i{display:none}.proposal-guide-steps>div{width:100%}.proposal-admin-item>summary{align-items:flex-start;flex-direction:column}.proposal-item-state{width:100%}}

/* Proposal Routing V1.8.2 design-system alignment */
.proposal-admin-guide{
  position:relative;
  overflow:hidden;
  border:1px solid #c8e5e7;
  border-left:6px solid #15b2bd;
  box-shadow:0 16px 34px rgba(7,48,68,.08);
}
.proposal-admin-guide:after{
  content:"";
  position:absolute;
  width:260px;height:260px;border-radius:50%;
  right:-120px;top:-145px;
  background:radial-gradient(circle,rgba(20,179,190,.14),rgba(20,179,190,0) 68%);
  pointer-events:none;
}
.proposal-admin-guide .eyebrow{font-size:13px;letter-spacing:.15em;color:#21aebe}
.proposal-admin-guide h2{font-size:29px;line-height:1.12;color:#0a3148}
.proposal-guide-steps{gap:10px}
.proposal-guide-steps>div{
  min-width:200px;
  padding:14px 16px;
  border-color:#bedde1;
  box-shadow:0 7px 18px rgba(8,54,79,.05);
}
.proposal-guide-steps strong{width:34px;height:34px;font-size:15px;box-shadow:0 5px 12px rgba(7,51,76,.18)}
.proposal-guide-steps b{font-size:15px}
.proposal-guide-steps span{font-size:12px;line-height:1.4}
.proposal-guide-example{
  padding:14px 16px;
  border:1px solid rgba(118,225,229,.22);
  background:linear-gradient(105deg,#07334c 0%,#07536a 64%,#087f8b 100%);
  box-shadow:0 8px 20px rgba(7,51,76,.10);
}
.proposal-guide-note{padding-left:2px;color:#5d7482!important}

.proposal-admin-tabs{gap:14px;margin:20px 0}
.proposal-admin-tab{
  min-height:66px;
  border:1px solid #c5dde2;
  box-shadow:0 8px 20px rgba(8,50,70,.055);
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}
.proposal-admin-tab:hover{transform:translateY(-1px);border-color:#73cbd3;box-shadow:0 10px 22px rgba(8,50,70,.08)}
.proposal-admin-tab.active{
  background:linear-gradient(110deg,#07354e 0%,#076b7a 58%,#0aa1a9 100%);
  box-shadow:0 12px 26px rgba(5,91,108,.18);
}
.proposal-admin-tab.active span{color:#d8fbfb}

.proposal-admin-section{
  border:1px solid #d1e3e7;
  box-shadow:0 16px 36px rgba(8,48,66,.07);
}
.proposal-admin-section>.card-head{
  padding-bottom:16px;
  margin-bottom:16px;
  border-bottom:1px solid #e3edf0;
}
.proposal-admin-section>.card-head h2{font-size:27px;color:#0a3148}
.proposal-admin-section>.card-head .eyebrow{font-size:12px;letter-spacing:.14em}
.proposal-admin-section>.card-head .muted{font-size:14px;max-width:920px}
.proposal-admin-list{gap:13px}

.proposal-admin-item{
  position:relative;
  border:1px solid #cee1e5;
  border-radius:14px;
  box-shadow:0 5px 14px rgba(8,48,66,.035);
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.proposal-admin-item:before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:#19aeb9;opacity:0;border-radius:14px 0 0 14px;transition:opacity .15s ease;
}
.proposal-admin-item:hover{border-color:#9fd4da;box-shadow:0 8px 19px rgba(8,48,66,.07)}
.proposal-admin-item:hover:before,.proposal-admin-item[open]:before{opacity:1}
.proposal-admin-item>summary{min-height:76px;padding:17px 20px}
.proposal-admin-item>summary strong{font-size:17px;line-height:1.25}
.proposal-admin-item>summary span{font-size:13px;line-height:1.35}
.proposal-item-state{gap:10px!important}
.status-pill{font-size:12px!important;padding:6px 10px}
.proposal-edit-action{
  display:inline-flex!important;align-items:center;justify-content:center;
  min-width:58px;min-height:32px;padding:5px 10px;border-radius:9px;
  background:#eef9fa;color:#087c89!important;font-size:12px!important;font-weight:900;
  border:1px solid #c3e8ea;
}
.proposal-admin-item[open]{border-color:#19aeb9;box-shadow:0 12px 28px rgba(11,117,128,.12)}
.proposal-admin-item[open]>summary{
  background:linear-gradient(110deg,#eefafa 0%,#f5fbfc 62%,#f4f6ff 100%);
  border-bottom:1px solid #bfe1e4;
}
.proposal-admin-item[open] .proposal-edit-action{background:#0a7f8d;color:#fff!important;border-color:#0a7f8d}
.proposal-admin-item[open] .proposal-edit-action:before{content:"Editing";font-size:12px}
.proposal-admin-item[open] .proposal-edit-action{font-size:0!important}
.proposal-admin-item .proposal-admin-row{padding:20px 20px 21px;background:linear-gradient(180deg,#fff 0%,#fbfefe 100%)}
.proposal-admin-row label,.proposal-admin-add-grid label{font-size:12px;color:#294e63}
.proposal-admin-row input,.proposal-admin-row select,.proposal-admin-add-grid input,.proposal-admin-add-grid select{min-height:46px;border-color:#bdd5dc;background:#fff}
.proposal-admin-row input:focus,.proposal-admin-row select:focus,.proposal-admin-add-grid input:focus,.proposal-admin-add-grid select:focus{border-color:#17aeba;box-shadow:0 0 0 3px rgba(23,174,186,.11)}
.proposal-admin-row .btn.secondary,.proposal-admin-add-grid .btn.secondary{background:#12aab5;border-color:#12aab5;color:#fff;box-shadow:0 7px 15px rgba(12,140,153,.14)}
.proposal-admin-row .btn.secondary:hover,.proposal-admin-add-grid .btn.secondary:hover{background:#087c89;border-color:#087c89}
.proposal-field-help{padding:11px 13px;border:1px solid #dbeaed;background:#f2f8f9;font-size:12px;line-height:1.45}

.proposal-admin-add{
  margin-top:18px;
  border:1px solid #8fd5dc;
  border-radius:14px;
  background:linear-gradient(110deg,#f1fbfc,#f7fcfd);
  overflow:hidden;
  box-shadow:0 6px 15px rgba(8,74,88,.04);
}
.proposal-admin-add summary{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;
  padding:15px 17px;list-style:none;color:#0a5267;
}
.proposal-admin-add summary::-webkit-details-marker{display:none}
.proposal-add-icon{
  display:grid;place-items:center;width:34px;height:34px;border-radius:10px;
  background:#0a7f8d;color:#fff;font-size:21px;font-weight:900;line-height:1;
}
.proposal-admin-add summary>span:nth-child(2){display:grid;gap:2px}
.proposal-admin-add summary b{font-size:15px;color:#0b334b}
.proposal-admin-add summary small{font-size:12px;color:#647d89;font-weight:600}
.proposal-add-cta{padding:7px 10px;border-radius:8px;background:#fff;border:1px solid #b9dce1;font-size:12px;font-weight:900;color:#087c89}
.proposal-admin-add[open]{border-color:#16aeb9;box-shadow:0 10px 24px rgba(8,111,124,.10)}
.proposal-admin-add[open] summary{border-bottom:1px solid #cce5e8}
.proposal-admin-add-grid{padding:16px 17px 18px;background:#fff}

@media(max-width:720px){
  .proposal-admin-guide h2{font-size:25px}
  .proposal-admin-add summary{grid-template-columns:auto 1fr}.proposal-add-cta{display:none}
}


/* Proposal Routing V1.8.3 reference-pattern cleanup */
/* Typography policy: proposal-routing UI never renders below 12px. */
.proposal-admin-guide,
.proposal-admin-tabs,
.proposal-admin-section{font-size:14px;}
.proposal-admin-guide small,
.proposal-admin-tabs small,
.proposal-admin-section small,
.proposal-admin-section .status-pill,
.proposal-admin-section .proposal-edit-action,
.proposal-admin-section .proposal-field-help,
.proposal-admin-section label{font-size:12px!important;}

/* Compact secondary navigation. Keep page title as the primary visual anchor. */
.page-title .proposal-admin-title-actions{align-self:flex-start;}
.proposal-admin-back{
  min-height:40px!important;
  padding:9px 14px!important;
  border-radius:10px!important;
  font-size:13px!important;
  font-weight:900!important;
  white-space:nowrap;
  background:rgba(255,255,255,.62)!important;
  border-color:#b9d4dc!important;
  box-shadow:none!important;
}
.proposal-admin-back:hover{
  background:#fff!important;
  border-color:#75cbd3!important;
  transform:translateY(-1px);
}

/* All controls share one baseline. Explanatory copy gets its own row below. */
.proposal-admin-row-map{
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(250px,1.25fr) 86px auto auto auto;
  align-items:end;
  gap:10px;
}
.channel-row .proposal-admin-row-map{
  grid-template-columns:86px auto auto auto;
  justify-content:start;
}
.template-row .proposal-admin-row-map{
  grid-template-columns:minmax(260px,1fr) 86px auto auto;
}
.proposal-admin-row-map>label:not(.proposal-admin-check):not(.proposal-admin-order){min-width:0;}
.proposal-admin-save{
  min-height:46px!important;
  padding:0 16px!important;
  align-self:end;
  white-space:nowrap;
}
.proposal-admin-help-stack{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:10px;
}
.proposal-admin-help-stack .proposal-field-help{margin:0;}

@media(max-width:1050px){
  .proposal-admin-row-map,
  .template-row .proposal-admin-row-map{grid-template-columns:1fr 1fr 86px auto;}
  .proposal-admin-save{grid-column:auto;}
  .proposal-admin-help-stack{grid-template-columns:1fr;}
}
@media(max-width:760px){
  .page-title .proposal-admin-title-actions{width:auto;}
  .proposal-admin-row-map,
  .template-row .proposal-admin-row-map,
  .channel-row .proposal-admin-row-map{display:flex;align-items:stretch;flex-direction:column;}
  .proposal-admin-save{width:100%;}
  .proposal-admin-back{width:auto!important;}
}

/* Proposal Routing V1.8.4 channel action-row alignment */
.channel-row .proposal-admin-row-map{
  align-items:end;
}
.channel-row .proposal-admin-check,
.channel-row .proposal-admin-save{
  min-height:46px!important;
  height:46px;
  align-self:end;
}
.channel-row .proposal-admin-check{
  display:flex!important;
  align-items:center!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin:0!important;
}
.channel-row .proposal-admin-save{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
}
@media(max-width:760px){
  .channel-row .proposal-admin-check,
  .channel-row .proposal-admin-save{height:auto;min-height:46px!important;}
}


/* Proposal Routing V1.8.5 channel footer layout */
.channel-row .proposal-admin-row-map{
  grid-template-columns:86px auto auto;
  align-items:end;
  justify-content:start;
  margin-bottom:12px;
}
.proposal-channel-footer{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding-top:12px;
  border-top:1px solid #dbe9ed;
}
.proposal-template-note{
  flex:1;
  min-width:0;
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 13px;
  border:1px solid #d7e8ec;
  border-radius:10px;
  background:#f5fafb;
  color:#587180;
  font-size:12px;
  line-height:1.45;
}
.proposal-template-note b,
.proposal-template-note strong{color:#173f56;}
.proposal-template-note-icon{
  flex:0 0 22px;
  width:22px;
  height:22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#dff5f7;
  color:#078996;
  font-size:12px;
  font-weight:900;
}
.proposal-channel-footer .proposal-admin-save{
  flex:0 0 auto;
  align-self:flex-end;
  margin:0 0 1px!important;
}
@media(max-width:760px){
  .proposal-channel-footer{flex-direction:column;align-items:stretch;}
  .proposal-channel-footer .proposal-admin-save{width:100%;}
}


/* Proposal Routing V1.8.5 final channel footer correction */
.channel-row .proposal-admin-row-map{
  grid-template-columns:86px auto auto;
  justify-content:start;
  align-items:end;
  margin-bottom:0;
}
.proposal-channel-footer{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end!important;
  column-gap:24px;
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid #dbe9ed;
}
.proposal-template-note{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#5b7381;
  font-size:12px;
  line-height:1.45;
}
.proposal-template-note-icon{
  flex:0 0 24px;
  width:24px;
  height:24px;
  border-radius:999px;
  background:#e3f6f7;
  color:#087f8b;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
}
.proposal-channel-footer .proposal-admin-save{
  grid-column:2;
  justify-self:end;
  align-self:end!important;
  min-width:130px;
  min-height:46px!important;
  margin:0!important;
}
@media(max-width:760px){
  .proposal-channel-footer{grid-template-columns:1fr;row-gap:12px;}
  .proposal-channel-footer .proposal-admin-save{grid-column:1;width:100%;justify-self:stretch;}
}

/* V1.8.6 Proposal Routing admin management polish */
.status-order{
  background:#eef7f8!important;
  color:#426474!important;
  border:1px solid #d2e6e9;
}
.proposal-order-guide{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:14px;
  padding:10px 12px;
  border-radius:10px;
  background:#f2f8f9;
  border:1px solid #d8e8eb;
  color:#5b7380;
  font-size:12px;
  line-height:1.45;
}
.proposal-order-guide b{color:#153f56;white-space:nowrap;}
.proposal-delete-row{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  padding:10px 18px 16px;
  background:#fff;
  border-top:1px solid #edf3f4;
  color:#71848e;
  font-size:12px;
}
.proposal-delete-row form{margin:0;}
.btn.danger-outline{
  background:#fff;
  border:1px solid #d97a7a;
  color:#a23d3d;
  box-shadow:none;
}
.btn.danger-outline:hover{
  background:#fff3f3;
  border-color:#c94d4d;
  color:#8d2929;
}
@media(max-width:720px){
  .proposal-order-guide{flex-direction:column;gap:3px;}
  .proposal-delete-row{align-items:stretch;flex-direction:column;}
  .proposal-delete-row .btn{width:100%;}
}

/* Final Estimate consolidation V1.8.7 */
.estimate-review-workflow.estimate-final-workflow{
  padding:16px 20px!important;
  display:grid!important;
  grid-template-columns:minmax(190px,.55fr) minmax(0,2.45fr)!important;
  gap:20px!important;
  align-items:center!important;
  margin-bottom:14px!important;
}
.estimate-final-workflow-copy h2{font-size:21px!important;margin:2px 0 3px!important;line-height:1.15!important}
.estimate-final-workflow-copy .muted{font-size:12px!important;line-height:1.35!important}
.estimate-final-workflow .review-handoff.five-stage,
.estimate-final-workflow .review-handoff.three-stage{padding:10px 12px!important;margin:0!important;min-height:0!important}
.estimate-final-workflow .estimate-handoff-step span{width:30px!important;height:30px!important;min-width:30px!important;font-size:12px!important}
.estimate-final-workflow .review-handoff.five-stage .estimate-handoff-step strong,
.estimate-final-workflow .review-handoff.three-stage .estimate-handoff-step strong{font-size:12px!important}
.final-summary-kpis{grid-template-columns:1.25fr .9fr 1fr 1fr!important;gap:12px!important;margin:0 0 14px!important}
.final-summary-kpis .summary-kpi{padding:17px 18px!important;min-height:118px!important}
.final-summary-kpis .money{font-size:29px!important;line-height:1.1!important;margin-top:7px!important}
.final-summary-kpis .validity .date-value{font-size:23px!important}
.final-summary-kpis .validity{border-bottom:3px solid #4f88a5}
.final-summary-kpis .validity.expired{border-bottom-color:#c85d4c;background:#fff8f5}
.final-summary-kpis .kpi-detail{font-size:12px!important;margin-top:8px!important}
.estimate-wi-card{margin-bottom:14px!important}
.estimate-wi-card>summary{padding:13px 18px!important}
.estimate-wi-card>summary strong{font-size:16px!important}
.estimate-wi-card>summary .muted{font-size:12px!important}
.estimate-management-card{padding:0!important;overflow:hidden;margin-bottom:18px!important;border:1px solid #d6e4e8!important}
.estimate-management-head{padding:15px 18px 12px;border-bottom:1px solid #dbe7ea;background:#f8fbfc}
.estimate-management-head h2{font-size:20px!important;margin:2px 0 2px!important}
.estimate-management-head p{font-size:12px!important;margin:0!important}
.estimate-management-stack{display:block}
.management-row{margin:0!important;border:0!important;border-radius:0!important;border-bottom:1px solid #dbe7ea!important;background:#fff!important;box-shadow:none!important;padding:0!important}
.management-row:last-child{border-bottom:0!important}
details.management-row>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 18px!important;background:#fff!important}
details.management-row>summary::-webkit-details-marker{display:none}
details.management-row>summary:hover{background:#f7fbfc!important}
details.management-row[open]>summary{background:#f4fafb!important;border-bottom:1px solid #dbe7ea}
.management-row summary strong,.management-action-row strong{display:block;color:#102f45;font-size:15px!important;line-height:1.25}
.management-label{display:block;color:#5f7887;font-size:12px!important;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}
.management-summary-status{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.management-chevron{font-size:16px!important;color:#567281;transition:transform .18s ease}
details.management-row[open] .management-chevron{transform:rotate(180deg)}
.management-row-body{padding:16px 18px 18px;background:#fbfdfe}
.management-row-body .proposal-routing-copy{padding:0!important}
.management-row-body .proposal-routing-copy h3{font-size:18px!important;margin:0 0 5px!important}
.management-row-body .proposal-routing-copy p{font-size:12px!important}
.management-row-body .proposal-routing-control{margin-top:12px!important}
.management-row-body .sales-outcome-compact-row{padding:0!important}
.management-action-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 18px!important}
.management-action-row small{display:block;color:#687d89;font-size:12px!important;margin-top:2px}
.estimate-management-card .compact-admin-tools>summary{border-radius:0!important}
.estimate-management-card .compact-admin-body{padding:16px 18px 18px!important;background:#fbfdfe}
.estimate-management-card .compact-admin-tools .eyebrow{font-size:12px!important}
.estimate-management-card .compact-admin-tools .muted{font-size:12px!important}
@media(max-width:1050px){
  .estimate-review-workflow.estimate-final-workflow{grid-template-columns:1fr!important}
  .final-summary-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .final-summary-kpis{grid-template-columns:1fr!important}
  .management-action-row{align-items:stretch;flex-direction:column}
  .management-action-row .btn{width:100%}
}

/* Final Estimate V1.8.8 - compact management and consolidated project details */
.estimate-management-card details.proposal-routing-card{display:block!important;grid-template-columns:none!important;gap:0!important;align-items:initial!important}
.estimate-management-card .proposal-routing-card.route-needed{background:#fff!important;border-left:0!important}
.estimate-management-card .management-row-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;align-items:start}
.estimate-management-card .proposal-routing-control{margin:0!important;padding:13px!important}
.estimate-management-card .proposal-routing-copy>p{max-width:680px}
.estimate-management-card .proposal-route-summary{margin-top:10px}
.estimate-management-card .sales-outcome-card .management-row-body{display:block}
.project-details-card{padding:0!important;overflow:hidden;margin-bottom:18px!important}
.project-details-head{padding:16px 18px 13px;border-bottom:1px solid #dbe7ea;background:#f8fbfc}
.project-details-head h2{font-size:20px!important;margin:2px 0 2px!important}
.project-details-head p{font-size:12px!important;margin:0!important}
.project-details-overview{display:grid;grid-template-columns:1.4fr .8fr .8fr .8fr;gap:0;border-bottom:1px solid #dbe7ea}
.project-details-overview>div{padding:14px 18px;border-right:1px solid #e3ecef;min-width:0}
.project-details-overview>div:last-child{border-right:0}
.project-details-overview strong{display:block;font-size:14px!important;color:#102f45;overflow-wrap:anywhere}
.project-details-reference-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
.project-reference-block{padding:14px 18px;min-width:0}
.project-reference-block+ .project-reference-block{border-left:1px solid #e3ecef}
.project-reference-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.project-reference-title .eyebrow{font-size:12px!important}
.project-reference-copy{font-size:12px!important;line-height:1.55;color:#405c6d}
.maintenance-reference{display:grid;grid-template-columns:minmax(140px,.65fr) minmax(0,1.35fr);gap:18px;font-size:12px!important;color:#405c6d}
.maintenance-reference span{display:block;font-size:12px!important;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#647e8c;margin-bottom:4px}
.maintenance-reference strong{font-size:13px!important;color:#102f45}
@media(max-width:900px){
 .estimate-management-card .management-row-body{grid-template-columns:1fr}
 .project-details-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
 .project-details-overview>div:nth-child(2){border-right:0}
 .project-details-overview>div:nth-child(-n+2){border-bottom:1px solid #e3ecef}
 .project-details-reference-grid{grid-template-columns:1fr}
 .project-reference-block+ .project-reference-block{border-left:0;border-top:1px solid #e3ecef}
}
@media(max-width:600px){
 .project-details-overview{grid-template-columns:1fr}
 .project-details-overview>div{border-right:0!important;border-bottom:1px solid #e3ecef!important}
 .project-details-overview>div:last-child{border-bottom:0!important}
 .maintenance-reference{grid-template-columns:1fr}
}

/* Final Estimate V1.8.9 - collapsible secondary panels */
.estimate-secondary-panel{padding:0!important;overflow:hidden;margin-bottom:14px!important;border:1px solid #d6e4e8!important;border-radius:16px!important;background:#fff!important;box-shadow:0 12px 28px rgba(15,47,69,.06)!important}
.estimate-secondary-panel>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 18px!important;background:linear-gradient(90deg,#f8fcfc 0%,#fbfdfe 100%);min-height:76px}
.estimate-secondary-panel>summary::-webkit-details-marker{display:none}
.estimate-secondary-panel>summary:hover{background:linear-gradient(90deg,#f3fbfb 0%,#f8fcfd 100%)}
.estimate-secondary-panel[open]>summary{border-bottom:1px solid #dbe7ea}
.estimate-secondary-summary-copy{min-width:0}
.estimate-secondary-summary-copy .eyebrow{font-size:12px!important;margin-bottom:3px!important}
.estimate-secondary-summary-copy h2{font-size:20px!important;line-height:1.15!important;margin:0 0 3px!important;color:#102f45}
.estimate-secondary-summary-copy p{font-size:12px!important;line-height:1.4!important;margin:0!important}
.estimate-secondary-summary-meta{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 0 auto}
.estimate-secondary-summary-meta .pill{margin:0!important;white-space:nowrap}
.estimate-secondary-summary-meta .estimate-record-chevron{font-size:18px!important;line-height:1;color:#476c7d;transition:transform .18s ease}
.estimate-secondary-panel[open]>.estimate-secondary-summary .estimate-record-chevron{transform:rotate(180deg)}
.estimate-secondary-body{background:#fff}
.estimate-management-card.estimate-secondary-panel{border-left:4px solid #18a9b8!important}
.project-reference-panel{border-left:4px solid #f0a02f!important}
.project-reference-chip{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;background:#eef6f8;border:1px solid #d7e6ea;color:#385c6c;font-size:12px!important;font-weight:800;white-space:nowrap}
.estimate-management-card .estimate-management-stack{border-top:0!important}
.estimate-management-card .management-row:first-child{border-top:0!important}
.estimate-management-card .compact-success{margin:14px 18px!important}
.project-details-card .project-details-overview{border-top:0!important}
@media(max-width:820px){
  .estimate-secondary-panel>summary{align-items:flex-start;flex-direction:column;gap:10px}
  .estimate-secondary-summary-meta{justify-content:flex-start}
}

/* Final Estimate V1.8.10 - Sales-facing proposal routing */
.proposal-sales-routing{display:block!important;padding:18px!important}
.proposal-sales-routing>.proposal-routing-copy{margin-bottom:16px}
.proposal-route-picker{display:grid;gap:16px}
.proposal-route-group{border:1px solid #d6e5e9;border-radius:14px;background:#fff;overflow:hidden}
.proposal-route-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:15px 16px;border-bottom:1px solid #dce9ec;background:#f8fbfc}
.proposal-route-group-head h4{margin:2px 0 3px;font-size:17px;color:#102f45}
.proposal-route-group-head p{margin:0;font-size:12px;color:#587080;line-height:1.45}
.proposal-route-kicker{display:block;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#159aaa}
.better-proposals-group{border-color:#a9dfe4;box-shadow:0 0 0 2px rgba(24,169,184,.05)}
.better-proposals-group .proposal-route-group-head{background:linear-gradient(90deg,#effbfc,#f9fcfd)}
.better-proposals-badge{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:#0b8392;color:#fff;font-size:12px;font-weight:900;letter-spacing:.02em}
.proposal-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}
.proposal-choice{position:relative;display:flex;gap:11px;min-height:128px;padding:14px;border:1px solid #d8e5e9;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.proposal-choice:hover{border-color:#7fcbd4;box-shadow:0 5px 14px rgba(15,62,82,.08);transform:translateY(-1px)}
.proposal-choice input{position:absolute;opacity:0;pointer-events:none}
.proposal-choice:has(input:checked){border:2px solid #159eae;background:#f2fcfd;box-shadow:0 0 0 3px rgba(21,158,174,.08)}
.proposal-choice-check{flex:0 0 24px;width:24px;height:24px;border:1px solid #bdd5db;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:transparent;font-size:12px;font-weight:900;background:#fff}
.proposal-choice:has(input:checked) .proposal-choice-check{background:#159eae;border-color:#159eae;color:#fff}
.proposal-choice-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.proposal-choice-copy strong{font-size:14px!important;color:#102f45;line-height:1.3}
.proposal-choice-copy small{font-size:12px!important;color:#5b7180;line-height:1.45}
.proposal-template-line,.proposal-channel-line{margin-top:auto;font-size:12px;color:#466474;line-height:1.35}
.proposal-template-line b{color:#087f8d}
.other-routes-group .proposal-route-kicker{color:#667f8e}
.other-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.other-choice{min-height:112px;background:#fbfcfd}
.proposal-route-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 15px;border:1px solid #cfe2e6;border-radius:12px;background:#f5fafb}
.proposal-route-actions>div{display:grid;gap:2px}
.proposal-route-actions strong{font-size:13px;color:#14384e}
.proposal-route-actions span{font-size:12px;color:#5b7180}
.proposal-route-actions .btn{min-width:210px;justify-content:center}
@media(max-width:900px){.proposal-choice-grid,.other-choice-grid{grid-template-columns:1fr}.proposal-choice{min-height:auto}.proposal-route-actions{align-items:stretch;flex-direction:column}.proposal-route-actions .btn{width:100%}}

/* Final Estimate V1.8.11 - Proposal routing visual hierarchy */
.proposal-sales-routing{background:#f7fafb!important}
.proposal-route-picker{gap:18px}
.proposal-route-group{box-shadow:0 6px 18px rgba(13,48,67,.05)}
.better-proposals-group{border:1px solid #b7c9cc;background:#f5f5f5;box-shadow:0 8px 22px rgba(10,10,10,.08)}
.better-proposals-group .proposal-route-group-head{padding:17px 18px;background:linear-gradient(100deg,#ced9de 0%,#f0ece2 62%,#f5f5f5 100%);border-bottom-color:#c6d2d5}
.better-proposals-heading{display:flex;align-items:center;gap:14px;min-width:0}
.better-proposals-mark{flex:0 0 42px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#fff;border:1px solid #d6d6d6;box-shadow:0 3px 9px rgba(10,10,10,.08);padding:7px}
.better-proposals-mark img{display:block;width:100%;height:100%;object-fit:contain}
.better-proposals-group .proposal-route-kicker{color:#333}
.better-proposals-group .proposal-route-group-head h4{color:#0a0a0a}
.better-proposals-badge{background:#1f1f1f;color:#fff;text-decoration:none;border:1px solid #0a0a0a;box-shadow:0 2px 7px rgba(10,10,10,.12)}
.better-proposals-badge:hover{background:#333;color:#fff}
.better-proposals-group .proposal-choice-grid{background:#eef2f3;padding:14px}
.better-choice{border-color:#cfd7d9;background:#fff;border-top:4px solid #97b2ab;box-shadow:0 3px 9px rgba(10,10,10,.04)}
.better-choice:hover{border-color:#97b2ab;box-shadow:0 7px 18px rgba(10,10,10,.10)}
.better-choice:has(input:checked){border:2px solid #466f67;border-top:5px solid #466f67;background:#f3f8f6;box-shadow:0 0 0 4px rgba(70,111,103,.12),0 8px 18px rgba(10,10,10,.08)}
.better-choice:has(input:checked) .proposal-choice-check{background:#466f67;border-color:#466f67}
.better-choice .proposal-template-line{margin-top:auto;padding-top:8px;border-top:1px solid #e0e6e5;color:#667477}
.better-choice .proposal-template-line b{color:#466f67}
.other-routes-group{border-color:#d8e0e3;background:#f5f7f8;box-shadow:none}
.other-routes-group .proposal-route-group-head{background:#e9eef0;border-bottom-color:#d5dfe2}
.other-routes-group .proposal-route-kicker{color:#526b78}
.other-routes-group .proposal-choice-grid{background:#f5f7f8;padding:14px}
.other-choice{background:#fff;border-color:#d7e0e3;box-shadow:none}
.other-choice:hover{border-color:#aebfc5;box-shadow:0 5px 13px rgba(15,62,82,.06)}
.other-choice:has(input:checked){border:2px solid #607d89;background:#f3f7f8;box-shadow:0 0 0 3px rgba(96,125,137,.10)}
.other-choice:has(input:checked) .proposal-choice-check{background:#607d89;border-color:#607d89}
.proposal-route-actions{border-color:#bcd5da;background:linear-gradient(90deg,#eaf5f6,#f7fafb);box-shadow:inset 4px 0 0 #159eae}
.proposal-route-actions strong{font-size:14px;color:#102f45}
@media(max-width:700px){.better-proposals-heading{align-items:flex-start}.better-proposals-mark{flex-basis:36px;width:36px;height:36px}.better-proposals-badge{display:none}}

/* V1.8.12 - Sales routing visual refinement */
.better-proposals-group .proposal-route-group-head>div:first-child{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.better-proposals-group .better-proposals-heading{flex:1 1 auto;min-width:0}
.better-proposals-group .better-proposals-badge{
  align-self:center;
  margin:0;
  white-space:nowrap;
}
.proposal-route-actions{
  padding:16px 18px!important;
  border-color:#087f8b!important;
  background:linear-gradient(105deg,#073e50 0%,#087f8b 72%,#10a6ad 100%)!important;
  box-shadow:0 8px 22px rgba(7,78,88,.16),inset 4px 0 0 #5ee0d7!important;
}
.proposal-route-actions>div{gap:4px!important}
.proposal-route-actions strong{
  font-size:16px!important;
  line-height:1.25;
  color:#fff!important;
}
.proposal-route-actions span{
  font-size:12px!important;
  color:#d7f4f2!important;
  line-height:1.45;
}
.proposal-route-actions .btn{
  background:#fff!important;
  border-color:#fff!important;
  color:#07384a!important;
  box-shadow:0 5px 14px rgba(0,0,0,.14);
}
.proposal-route-actions .btn:hover{
  background:#edfafa!important;
  border-color:#edfafa!important;
  color:#062f3f!important;
}
@media(max-width:700px){
  .better-proposals-group .proposal-route-group-head>div:first-child{align-items:flex-start;flex-direction:column}
  .better-proposals-group .better-proposals-badge{align-self:flex-start}
}

/* V1.8.13 - Better Proposals full-width header + denser option cards */
.better-proposals-group .proposal-route-group-head.better-proposals-full-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  padding:16px 18px!important;
  gap:20px!important;
  background:linear-gradient(100deg,#d6e2e4 0%,#eef1ec 55%,#f4eee4 100%)!important;
}
.better-proposals-full-head .better-proposals-heading{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.better-proposals-full-head .better-proposals-head-copy{
  min-width:0;
}
.better-proposals-full-head .better-proposals-head-copy h4{
  margin:1px 0 2px!important;
  font-size:18px!important;
  line-height:1.2!important;
}
.better-proposals-full-head .better-proposals-head-copy p{
  font-size:13px!important;
  line-height:1.4!important;
}
.better-proposals-full-head .better-proposals-badge{
  flex:0 0 auto!important;
  margin:0!important;
  align-self:center!important;
  padding:8px 13px!important;
  border-radius:10px!important;
  background:#466f67!important;
  border-color:#466f67!important;
  color:#fff!important;
  box-shadow:none!important;
}
.better-proposals-full-head .better-proposals-badge:hover{
  background:#365951!important;
  border-color:#365951!important;
}
.better-proposals-group .better-proposals-choice-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  padding:14px!important;
  background:#eef3f2!important;
}
.better-proposals-group .better-choice{
  min-height:108px!important;
  padding:13px 14px!important;
  gap:10px!important;
  border-top-width:3px!important;
}
.better-proposals-group .better-choice .proposal-choice-copy{
  gap:5px!important;
}
.better-proposals-group .better-choice .proposal-choice-copy strong{
  font-size:16px!important;
  line-height:1.2!important;
}
.better-proposals-group .better-choice .proposal-choice-copy small{
  font-size:13px!important;
  line-height:1.35!important;
}
.better-proposals-group .better-choice .proposal-template-line{
  font-size:12px!important;
  line-height:1.3!important;
  padding-top:6px!important;
}
@media(max-width:900px){
  .better-proposals-group .proposal-route-group-head.better-proposals-full-head{align-items:flex-start!important}
  .better-proposals-group .better-proposals-choice-grid{grid-template-columns:1fr!important}
  .better-proposals-group .better-choice{min-height:auto!important}
}
@media(max-width:700px){
  .better-proposals-group .proposal-route-group-head.better-proposals-full-head{flex-direction:column!important}
  .better-proposals-full-head .better-proposals-badge{align-self:flex-start!important}
}

/* V1.8.14 - Better Proposals header alignment + complementary route gradients */
.better-proposals-group .proposal-route-group-head.better-proposals-full-head{
  grid-template-columns:auto 1fr auto!important;
}
.better-proposals-full-head .better-proposals-heading{
  justify-content:flex-start!important;
  gap:16px!important;
}
.better-proposals-full-head .better-proposals-mark{
  flex:0 0 54px!important;
  width:54px!important;
  height:54px!important;
  padding:8px!important;
  border-radius:12px!important;
}
.better-proposals-full-head .better-proposals-head-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  text-align:left!important;
  margin:0!important;
}
.better-proposals-full-head .better-proposals-head-copy .proposal-route-kicker,
.better-proposals-full-head .better-proposals-head-copy h4,
.better-proposals-full-head .better-proposals-head-copy p{
  text-align:left!important;
}
.better-proposals-full-head .better-proposals-badge{
  margin-left:auto!important;
}

.other-routes-group{
  border-color:#c2d7da!important;
  background:#f3f7f7!important;
  box-shadow:0 6px 18px rgba(5,49,72,.05)!important;
}
.other-routes-group .proposal-route-group-head{
  background:linear-gradient(100deg,#edf4f3 0%,#e2eceb 55%,#d5e4e5 100%)!important;
  border-bottom-color:#c6d7d9!important;
}
.other-routes-group .proposal-route-kicker{
  color:#54717a!important;
}
.other-routes-group .proposal-route-group-head h4{
  color:#15384a!important;
}
.other-routes-group .other-choice-grid{
  background:linear-gradient(100deg,#f6f9f9 0%,#edf3f3 100%)!important;
}
.other-routes-group .proposal-choice{
  background:#fff!important;
}

@media(max-width:700px){
  .better-proposals-full-head .better-proposals-mark{
    flex-basis:48px!important;
    width:48px!important;
    height:48px!important;
  }
}

/* V1.9.0 - Estimate revision workflow */
.revision-pill{background:#e8f4ff!important;color:#135d8c!important;border:1px solid #bfddf1!important}
.superseded-pill{background:#eef1f3!important;color:#62727c!important;border:1px solid #d8e0e4!important}
.estimate-revision-edit-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-2px 0 18px;padding:15px 18px;border:1px solid #bbdce0;border-left:5px solid #159eae;border-radius:14px;background:linear-gradient(105deg,#f1fbfb 0%,#f8fbfb 65%,#eef8f7 100%);box-shadow:0 6px 16px rgba(9,63,83,.05)}
.estimate-revision-edit-banner.scope-change{border-color:#e6c77f;border-left-color:#dc9f1b;background:linear-gradient(105deg,#fffaf0,#fffdf8)}
.estimate-revision-edit-banner strong{display:block;font-size:16px;color:#102f45;margin:2px 0 3px}.estimate-revision-edit-banner p{margin:0;color:#5a7180;font-size:12px;line-height:1.45}
.revision-context-card{padding:18px 20px;border-left:5px solid #159eae;background:linear-gradient(105deg,#f2fbfb,#fff)}
.revision-context-card.needs-review{border-left-color:#dc9f1b;background:linear-gradient(105deg,#fff9ec,#fff)}
.revision-context-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.revision-context-head h2{margin:2px 0 4px}.revision-context-head p{margin:0;color:#536b7a;font-size:13px}
.revision-safety-callout{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;border:1px solid #efd49a;border-radius:12px;background:#fffaf0}.revision-safety-callout>div{display:grid;gap:4px}.revision-safety-callout strong{font-size:14px;color:#744d08}.revision-safety-callout span{font-size:12px;color:#6f6248;line-height:1.45}.revision-simple-note{margin-top:14px;padding:12px 14px;border-radius:10px;background:#eef8f7;color:#41636b;font-size:12px;line-height:1.45}
.revision-management-row summary{cursor:pointer}.revision-management-row .management-summary-status{display:flex;align-items:center;gap:8px}.revision-create-panel{padding:18px 20px;border-top:1px solid #d9e7ea;background:linear-gradient(105deg,#f6fbfb,#fff)}.revision-create-intro h3{margin:2px 0 4px;font-size:18px}.revision-create-intro p{margin:0 0 15px;color:#5a7180;font-size:12px}.revision-create-form{display:grid;gap:14px}.revision-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.revision-type-card{display:flex!important;align-items:flex-start!important;gap:11px;padding:14px 15px;border:1px solid #c9dce1;border-radius:12px;background:#fff;cursor:pointer}.revision-type-card:hover{border-color:#159eae}.revision-type-card:has(input:checked){border:2px solid #159eae;background:#f1fbfb;box-shadow:0 0 0 3px rgba(21,158,174,.08)}.revision-type-card.safety:has(input:checked){border-color:#dc9f1b;background:#fffaf0;box-shadow:0 0 0 3px rgba(220,159,27,.08)}.revision-type-card input{margin-top:3px}.revision-type-card span{display:grid;gap:4px}.revision-type-card strong{font-size:14px;color:#102f45}.revision-type-card small{font-size:12px;color:#5d7180;line-height:1.45}.revision-reason-label{display:grid!important;gap:7px;font-size:12px;font-weight:800;color:#14384e}.revision-reason-label textarea{min-height:84px}.revision-create-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.revision-safety-hint{font-size:12px;color:#617683}.superseded-revision-row{background:#f6f8f9}.superseded-revision-row strong{color:#5d6d76}
@media(max-width:800px){.revision-type-grid{grid-template-columns:1fr}.revision-create-actions,.revision-safety-callout,.estimate-revision-edit-banner{align-items:stretch;flex-direction:column}.revision-create-actions .btn,.revision-safety-callout .btn{width:100%}}
.estimate-row-id-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

/* V1.9.1 - revision workflow polish */
.estimate-row-id-line{align-items:center!important;min-height:27px}
.estimate-row-id-line .estimate-row-id{margin-bottom:0!important;line-height:26px!important}
.estimate-row-id-line .revision-pill,.estimate-row-id-line .superseded-pill{display:inline-flex!important;align-items:center!important;min-height:26px!important;line-height:1!important;margin:0!important;padding-top:0!important;padding-bottom:0!important}
.estimate-lock-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #d3dde2;border-radius:999px;background:#f1f5f7;font-size:13px;line-height:1;filter:grayscale(.15)}

/* Match the approved Better Proposals visual hierarchy for revision creation. */
.revision-create-panel{padding:0!important;overflow:hidden;background:#f7fbfb!important}
.revision-create-intro{position:relative;min-height:92px;padding:18px 180px 18px 82px;border-bottom:1px solid #c6dbdc;background:linear-gradient(105deg,#dce9e8 0%,#eef2e8 58%,#f7eee3 100%)}
.revision-create-intro:before{content:'↻';position:absolute;left:18px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:11px;background:#fff;color:#0a6f7b;font-size:28px;font-weight:900;box-shadow:0 5px 13px rgba(10,56,72,.12)}
.revision-create-intro:after{content:'Estimate Revision';position:absolute;right:18px;top:50%;transform:translateY(-50%);padding:9px 14px;border-radius:10px;background:#49766f;color:#fff;font-size:12px;font-weight:900;letter-spacing:.02em}
.revision-create-intro .eyebrow{color:#315c61!important;font-size:12px!important;letter-spacing:.12em!important}
.revision-create-intro h3{font-size:18px!important;line-height:1.2;margin:2px 0 3px!important}
.revision-create-intro p{font-size:13px!important;margin:0!important;line-height:1.4!important}
.revision-create-form{gap:16px!important;padding:18px!important;background:linear-gradient(180deg,#f7fbfb 0%,#f1f7f7 100%)}
.revision-type-grid{gap:14px!important}
.revision-type-card{min-height:100px!important;align-items:flex-start!important;padding:16px 18px!important;border-top:3px solid #91b5ae!important;background:#fff!important}
.revision-type-card.safety{border-top-color:#d7b373!important}
.revision-type-card strong{font-size:15px!important;line-height:1.25!important}
.revision-type-card small{font-size:13px!important;line-height:1.45!important}
.revision-reason-label{font-size:13px!important}
.revision-reason-label textarea{font-size:13px!important;background:#fff!important}
.revision-create-actions{padding:14px 16px!important;border:1px solid #0c8792!important;border-left:5px solid #075c67!important;border-radius:12px;background:linear-gradient(100deg,#045563 0%,#0c7d87 52%,#13a6ae 100%)!important}
.revision-safety-hint{color:#fff!important;font-size:13px!important;font-weight:700!important;line-height:1.4!important}
.revision-create-actions .btn{min-width:180px!important;background:#fff!important;color:#0a3449!important;border-color:#fff!important;box-shadow:none!important}
.revision-create-actions .btn:hover{background:#eef7f8!important;color:#082d40!important}

/* Superseded Final Estimate: obvious, calm, locked historical record. */
.superseded-revision-row{position:relative!important;display:grid!important;grid-template-columns:52px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;margin:0!important;padding:15px 18px!important;border:1px solid #c9d7dc!important;border-left:5px solid #718691!important;background:linear-gradient(105deg,#edf3f4 0%,#f7f9f9 62%,#eef5f6 100%)!important}
.superseded-lock{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:#fff;color:#526b77;font-size:22px;box-shadow:0 4px 12px rgba(8,45,63,.08)}
.superseded-revision-copy{display:grid;gap:3px;min-width:0}
.superseded-revision-copy .management-label{color:#607985!important}
.superseded-revision-copy strong{font-size:15px!important;color:#263f4d!important}
.superseded-revision-copy small{font-size:12px!important;color:#60747d!important;line-height:1.4!important}
.superseded-revision-row .btn{white-space:nowrap}
@media(max-width:800px){
  .revision-create-intro{padding:76px 18px 18px}
  .revision-create-intro:before{top:17px;left:18px;transform:none}
  .revision-create-intro:after{top:21px;right:18px;transform:none}
  .superseded-revision-row{grid-template-columns:46px 1fr!important}
  .superseded-revision-row .btn{grid-column:1/-1;width:100%}
}

/* V1.9.2 - Estimate revision cards + Find an Estimate Item */
.estimate-item-finder{
  position:relative;
  margin:0 0 14px;
  padding:12px;
  border:1px solid rgba(142,198,213,.28);
  border-radius:12px;
  background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(15,166,177,.08));
}
.estimate-item-finder>label{
  display:block;
  margin-bottom:7px;
  color:#dff7fa;
  font-size:12px;
  font-weight:900;
  letter-spacing:.035em;
}
.estimate-item-search-wrap{
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 10px;
  min-height:40px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:9px;
  background:#fff;
  color:#087b88;
}
.estimate-item-search-wrap>span{font-size:20px;line-height:1;font-weight:900;transform:translateY(-1px)}
.estimate-item-search-wrap input{
  width:100%;
  min-width:0;
  padding:9px 0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:#0b3147!important;
  font-size:12px!important;
}
.estimate-item-search-wrap input::placeholder{color:#78909d}
.estimate-item-finder>small{
  display:block;
  margin-top:7px;
  color:#9ecbd5;
  font-size:12px;
  line-height:1.35;
}
.estimate-item-results{
  position:absolute;
  z-index:80;
  top:72px;
  left:11px;
  width:340px;
  max-width:calc(100vw - 36px);
  padding:7px;
  border:1px solid #b9d5dc;
  border-radius:12px;
  background:#fff;
  box-shadow:0 16px 34px rgba(3,43,62,.23);
}
.estimate-item-results button{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 11px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:#0b3147;
  text-align:left;
  cursor:pointer;
}
.estimate-item-results button:hover,.estimate-item-results button:focus{background:#edf8f9;outline:none}
.estimate-item-results button strong{font-size:13px;line-height:1.25}
.estimate-item-results button span{
  flex:none;
  padding:4px 7px;
  border-radius:999px;
  background:#e8f5f6;
  color:#23727c;
  font-size:12px;
  font-weight:800;
}
.estimate-item-empty{padding:11px;color:#617683;font-size:12px;line-height:1.4}
.estimate-item-located{
  position:relative;
  border-color:#11a7b7!important;
  box-shadow:0 0 0 4px rgba(17,167,183,.14),0 12px 28px rgba(6,90,105,.12)!important;
  background-image:linear-gradient(110deg,rgba(230,250,250,.82),rgba(255,255,255,.98))!important;
}
.estimate-item-located:before{
  content:'Located';
  position:absolute;
  z-index:2;
  top:-11px;
  right:14px;
  padding:4px 9px;
  border-radius:999px;
  background:#087f8c;
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.035em;
  box-shadow:0 4px 10px rgba(4,69,82,.18);
}

/* Revision choices use the same clear hierarchy as approved routing choices. */
.revision-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
.revision-type-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:14px!important;
  min-height:0!important;
  padding:18px!important;
  text-align:left!important;
  border:1px solid #c5d9dd!important;
  border-top:4px solid #73a99f!important;
  border-radius:13px!important;
  background:linear-gradient(160deg,#fff 0%,#f8fbfb 100%)!important;
  box-shadow:0 5px 13px rgba(7,56,72,.045)!important;
}
.revision-type-card.safety{
  border-top-color:#d59c2d!important;
  background:linear-gradient(160deg,#fff 0%,#fffaf0 100%)!important;
}
.revision-type-card:hover{transform:translateY(-1px);border-color:#0fa3b2!important;box-shadow:0 8px 18px rgba(7,74,89,.09)!important}
.revision-type-card:has(input:checked){border:2px solid #0aa4b5!important;border-top:4px solid #0aa4b5!important;background:linear-gradient(150deg,#eefafa 0%,#fff 78%)!important;box-shadow:0 0 0 3px rgba(10,164,181,.10)!important}
.revision-type-card.safety:has(input:checked){border-color:#d69720!important;border-top-color:#d69720!important;background:linear-gradient(150deg,#fff8e9 0%,#fff 78%)!important;box-shadow:0 0 0 3px rgba(214,151,32,.10)!important}
.revision-type-card>input{
  width:20px!important;
  height:20px!important;
  margin:3px 0 0!important;
  accent-color:#0aa4b5;
}
.revision-type-card.safety>input{accent-color:#d69720}
.revision-type-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important;min-width:0!important;text-align:left!important}
.revision-type-tag{
  display:inline-flex!important;
  width:auto!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  background:#e7f4f2!important;
  color:#36766e!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}
.revision-type-card.safety .revision-type-tag{background:#fff0d4!important;color:#94620a!important}
.revision-type-card strong{font-size:16px!important;line-height:1.2!important;color:#0c3047!important;margin-top:2px!important}
.revision-type-card small{font-size:13px!important;line-height:1.42!important;color:#4f6878!important;font-weight:650!important}
.revision-type-card em{
  display:block;
  margin-top:auto;
  padding-top:8px;
  border-top:1px solid #dde8ea;
  color:#54727d;
  font-size:12px;
  line-height:1.35;
  font-style:normal;
  font-weight:800;
}
.revision-type-card.safety em{border-top-color:#eee0bd;color:#7c672f}

@media(max-width:1100px){
  .estimate-item-results{width:300px}
}
@media(max-width:800px){
  .estimate-item-results{position:fixed;top:auto;left:18px;right:18px;width:auto;max-width:none}
  .revision-type-grid{grid-template-columns:1fr!important}
}

/* V1.9.3 - proactive page allocation guard */
.page-allocation-alert{margin-top:12px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e6bd65;border-left:4px solid #d99116;border-radius:12px;background:linear-gradient(110deg,#fff7e8 0%,#fffdf7 58%,#edf9f8 100%);box-shadow:0 8px 20px rgba(20,48,64,.06)}
.page-allocation-alert[hidden]{display:none!important}
.page-allocation-alert-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff0c8;color:#8a5a00;font-size:18px;font-weight:900;border:1px solid #e6bd65}
.page-allocation-alert-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.page-allocation-alert-copy strong{font-size:14px;color:#0b2e45}
.page-allocation-alert-copy span{font-size:12px;line-height:1.45;color:#536b79}
.page-allocation-jump{white-space:nowrap;background:#087d84!important;border-color:#087d84!important;color:#fff!important}
.page-allocation-jump:hover{background:#075f68!important;border-color:#075f68!important}
@media(max-width:820px){.page-allocation-alert{grid-template-columns:38px 1fr}.page-allocation-jump{grid-column:1/-1;width:100%}}

/* V1.9.4 Revision family grouping + page allocation handoff */
.page-allocation-alert-wide{margin:16px 0 4px;width:100%;box-sizing:border-box;grid-template-columns:38px minmax(0,1fr) auto;padding:14px 16px}
.page-allocation-alert-wide .page-allocation-alert-copy small{display:block;margin-top:2px;color:#6d5a2c;font-size:12px;line-height:1.4}
.page-allocation-alert-wide .page-allocation-jump{min-width:190px}
.estimate-revision-family{display:flex;flex-direction:column;gap:0}
.estimate-revision-history-dropdown{margin:-1px 14px 18px;border:1px solid #cfe0e5;border-radius:0 0 14px 14px;background:#f6fafb;overflow:hidden}
.estimate-revision-history-dropdown>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:11px;padding:12px 16px;color:#31566a;background:linear-gradient(90deg,#edf7f5 0%,#f7fafb 55%,#f4f7fb 100%)}
.estimate-revision-history-dropdown>summary::-webkit-details-marker{display:none}
.revision-history-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #cfe0e5;font-size:13px}
.estimate-revision-history-dropdown>summary div{display:flex;flex-direction:column;gap:1px;min-width:0}
.estimate-revision-history-dropdown>summary strong{font-size:13px;color:#17384c}
.estimate-revision-history-dropdown>summary small{font-size:12px;color:#6a7f8b}
.revision-history-chevron{margin-left:auto;font-size:17px;transition:transform .18s ease}
.estimate-revision-history-dropdown[open] .revision-history-chevron{transform:rotate(180deg)}
.estimate-revision-history-list{padding:14px;background:#edf4f6;display:flex;flex-direction:column;gap:14px}
.estimate-revision-history-list .estimate-dashboard-row{margin:0;box-shadow:none;opacity:.94}
@media(max-width:820px){.page-allocation-alert-wide{grid-template-columns:38px 1fr}.page-allocation-alert-wide .page-allocation-jump{grid-column:1/-1;width:100%}.estimate-revision-history-dropdown{margin-left:8px;margin-right:8px}}


/* Estimate Revisions V1.9.5 - clearer history drawer + allocation handoff */
.estimate-revision-history-dropdown{
    margin-top:10px;
    border:1px solid #0f4f68;
    border-radius:14px;
    overflow:hidden;
    background:#0a2f45;
    box-shadow:0 12px 28px rgba(6,38,56,.12);
}
.estimate-revision-history-dropdown>summary{
    min-height:64px;
    padding:13px 16px;
    background:linear-gradient(90deg,#0b354c 0%,#0e5369 58%,#0a7180 100%);
    color:#fff;
    border-bottom:1px solid rgba(255,255,255,.08);
}
.estimate-revision-history-dropdown>summary strong{color:#fff;font-size:14px;}
.estimate-revision-history-dropdown>summary small{color:#c7dde4;}
.revision-history-icon{
    width:34px;height:34px;
    background:rgba(255,255,255,.1);
    border-color:rgba(255,255,255,.22);
    color:#fff;
}
.revision-history-chevron{
    width:32px;height:32px;
    display:grid;place-items:center;
    border-radius:50%;
    background:rgba(255,255,255,.1);
    border:1px solid rgba(255,255,255,.2);
    color:#fff;
    font-size:19px;
}
.estimate-revision-history-dropdown[open] .revision-history-chevron{background:rgba(255,255,255,.16);}
.estimate-revision-history-list{
    padding:16px;
    background:linear-gradient(180deg,#082d42 0%,#0b3a50 100%);
    gap:14px;
}
.estimate-revision-history-list .estimate-dashboard-row{
    background:#0d3a51;
    border-color:rgba(255,255,255,.14);
    box-shadow:0 8px 18px rgba(0,0,0,.12);
    opacity:1;
}
.estimate-revision-history-list .estimate-row-main{
    background:linear-gradient(110deg,#103e56 0%,#0d374d 58%,#0b3247 100%);
}
.estimate-revision-history-list .estimate-row-identity h3 a{color:#fff;}
.estimate-revision-history-list .estimate-row-meta{color:#bfd1d9;}
.estimate-revision-history-list .estimate-row-meta span{color:#7896a3;}
.estimate-revision-history-list .estimate-row-footer{
    background:rgba(4,28,41,.36);
    border-top-color:rgba(255,255,255,.1);
}
.estimate-revision-history-list .pill.superseded-pill{background:#e8eef1;color:#48606d;}
.estimate-revision-history-list .estimate-lock-icon{background:#fff;border-radius:50%;}
.estimate-revision-history-dropdown>summary:focus-visible{outline:3px solid rgba(42,211,224,.55);outline-offset:-3px;}

.page-allocation-alert-wide .page-allocation-jump{
    align-self:center;
    min-width:190px;
    white-space:nowrap;
}

/* Estimate Revisions V1.9.6 - archive cards + reliable allocation jump */
.estimate-revision-history-list{
    padding:16px;
    background:linear-gradient(180deg,#082d42 0%,#0b3a50 100%);
}
.estimate-revision-history-list .estimate-dashboard-row{
    background:linear-gradient(135deg,#ffffff 0%,#f7fbfc 52%,#eef7f7 100%);
    border:1px solid rgba(152,197,207,.52);
    box-shadow:0 8px 20px rgba(2,24,38,.16);
    opacity:1;
}
.estimate-revision-history-list .estimate-row-main{
    background:linear-gradient(120deg,#ffffff 0%,#f8fcfd 60%,#edf7f6 100%);
}
.estimate-revision-history-list .estimate-row-identity h3 a{color:#092f48;}
.estimate-revision-history-list .estimate-row-meta{color:#607786;}
.estimate-revision-history-list .estimate-row-meta span{color:#9cb0ba;}
.estimate-revision-history-list .estimate-row-footer{
    background:linear-gradient(90deg,#f8fbfc 0%,#f1f7f8 100%);
    border-top-color:#dce8eb;
}
.estimate-revision-history-list .estimate-lock-icon{
    background:#f7fbfc;
    border:1px solid #d2e2e6;
}

/* =========================================================
   V1.9.7 UI Consistency Pass
   Estimates, Discoveries, Admin
   ========================================================= */
/* Estimate cards: customer first, ID second */
.estimate-row-id-line{margin-bottom:9px;}
.estimate-row-identity h3{margin:0 0 7px;font-size:23px;line-height:1.16;letter-spacing:-.018em;}
.estimate-row-identity h3 a{font-weight:900;}
.estimate-row-id{margin-bottom:0;}
.estimate-kpi-sold{
    background:linear-gradient(145deg,#0a334b 0%,#0d5867 58%,#0d766f 100%)!important;
    border-color:#0d6670!important;
    box-shadow:0 14px 30px rgba(8,55,72,.16)!important;
}
.estimate-kpi-sold>span,.estimate-kpi-sold>small{color:#d8edf0!important;}
.estimate-kpi-sold>strong{color:#fff!important;font-size:29px!important;white-space:nowrap;}
.estimate-kpi-sold .kpi-accent{background:#8fd14f!important;}

/* Discoveries dashboard: same visual language as the Estimate pipeline */
.discovery-hero{
    align-items:center;
    padding:28px 30px;
    border-color:#c9e0e5;
    background:linear-gradient(120deg,#ffffff 0%,#f1fafb 58%,#e5f5f4 100%);
    box-shadow:0 12px 30px rgba(8,48,67,.07);
}
.discovery-hero h1{font-size:36px;letter-spacing:-.025em;}
.discovery-hero .btn{min-height:44px;padding-left:20px;padding-right:20px;}
.discovery-queue-callout{
    border-radius:16px!important;
    border:1px solid #cfe2e6!important;
    background:linear-gradient(100deg,#0a334b 0%,#0d5668 100%)!important;
    color:#fff!important;
    box-shadow:0 10px 24px rgba(8,48,67,.12);
}
.discovery-queue-callout .stat-label,.discovery-queue-callout p{color:#d7e9ed!important;}
.discovery-queue-callout strong{color:#fff!important;}
.discovery-list-card{border-radius:18px;overflow:hidden;border-color:#d4e5e9;box-shadow:0 10px 26px rgba(10,48,66,.055);}
.discovery-list-card>.card-head{padding:20px 22px;background:linear-gradient(100deg,#f8fcfd 0%,#eef8f8 100%);border-bottom:1px solid #dce9ec;}
.discovery-list-card>.card-head h2{font-size:24px;color:var(--navy);}
.discovery-table thead th{background:#0a334b!important;color:#eaf5f7!important;font-size:12px!important;letter-spacing:.06em;text-transform:uppercase;}
.discovery-table tbody tr{transition:background .15s ease;}
.discovery-table tbody tr:hover{background:#f3fafb;}
.discovery-table td{padding-top:15px!important;padding-bottom:15px!important;}
.discovery-table td:nth-child(2)>strong{font-size:15px;color:var(--navy);}

/* Admin landing: use Proposal Routing / pipeline visual language */
.admin-dashboard-hero{
    margin:6px 0 22px;
    padding:27px 30px;
    border:1px solid #c9e0e5;
    border-radius:18px;
    background:linear-gradient(120deg,#ffffff 0%,#f0fafb 55%,#e6f5f3 100%);
    box-shadow:0 12px 30px rgba(8,48,67,.07);
}
.admin-dashboard-hero h1{margin:4px 0 7px;font-size:34px;letter-spacing:-.025em;color:var(--navy);}
.admin-dashboard-hero p{margin:0;max-width:800px;color:#617888;}
.admin-dashboard-grid{gap:18px;margin-bottom:22px;}
.admin-dashboard-tool-card{position:relative;overflow:hidden;border-radius:18px;border-color:#d2e4e8;box-shadow:0 10px 26px rgba(10,48,66,.06);}
.admin-dashboard-tool-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:#14a4aa;}
.admin-calculation-card:before{background:#ef8f45;}
.admin-dashboard-tool-card>.card-head{margin:-1px -1px 18px;padding:20px 20px 17px;background:linear-gradient(110deg,#f8fcfd,#edf8f7);border-bottom:1px solid #dce9ec;}
.admin-dashboard-tool-card h2{margin:3px 0 4px;color:var(--navy);font-size:23px;}
.admin-tool-actions{padding-top:4px;}
.admin-users-card{border-radius:18px;border-color:#d2e4e8;box-shadow:0 10px 26px rgba(10,48,66,.055);overflow:hidden;}
.admin-users-card>.card-head{background:linear-gradient(100deg,#f8fcfd 0%,#eef8f8 100%);border-bottom:1px solid #dce9ec;padding:20px 22px;}

@media(max-width:1100px){.estimate-row-identity h3{font-size:21px}.estimate-kpi-sold>strong{font-size:26px!important;}}


/* Discovery Workflow V1.9.9 - content allocation clarity + resilient identity */
.content-scope-reference{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  padding:16px 18px;
  border:1px solid #bfe0e2;
  border-left:4px solid #16a9b8;
  border-radius:12px;
  background:linear-gradient(100deg,#eef9f8 0%,#f5fbfc 54%,#f4f4ff 100%);
}
.content-scope-reference-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.content-scope-reference-copy>span{color:#0f8995;font-size:12px;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.content-scope-reference-copy>strong{color:#0b2f46;font-size:15px;line-height:1.3}
.content-scope-reference-copy>small{color:#5a7280;font-size:12px;line-height:1.5;max-width:720px}
.content-scope-reference-stats{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:8px}
.content-scope-reference-stats>div{min-width:96px;padding:10px 12px;border:1px solid #cfe3e6;border-radius:10px;background:rgba(255,255,255,.9);text-align:center}
.content-scope-reference-stats b{display:block;color:#0b2f46;font-size:20px;line-height:1.1}
.content-scope-reference-stats span{display:block;margin-top:4px;color:#607682;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.discovery-section-creative [data-discovery-field="content_customer_pages"],
.discovery-section-creative [data-discovery-field="content_extract_pages"],
.discovery-section-creative [data-discovery-field="content_new_pages"]{border-top-color:#16a9b8;background:linear-gradient(180deg,#fff 0%,#f8fcfc 100%)}
.website-identity-logo{position:relative;overflow:hidden}
.website-identity-monogram{display:none;align-items:center;justify-content:center;width:100%;height:100%;min-height:74px;color:#70d6cf;font-size:28px;font-weight:950;letter-spacing:.04em}
.website-identity-logo.show-monogram .website-identity-monogram{display:flex}
.website-identity-logo.show-monogram{background:linear-gradient(135deg,#182852,#34358f)}
@media(max-width:900px){.content-scope-reference{grid-template-columns:1fr}.content-scope-reference-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.content-scope-reference-stats{grid-template-columns:1fr}.content-scope-reference-stats>div{text-align:left}}


/* Discovery Content Allocation V1.9.10 */
.discovery-content-allocation{grid-column:1/-1;border:1px solid #cfe1e5;border-left:4px solid #0fa9c3;border-radius:12px;background:linear-gradient(135deg,#f3fbfc 0%,#ffffff 62%,#f5f3ff 100%);overflow:hidden;transition:.2s ease}
.discovery-content-allocation-main{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 18px}
.discovery-content-allocation-main>div:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.discovery-content-allocation-main>div:first-child>span{font-size:12px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:#138895}
.discovery-content-allocation-main>div:first-child>strong{font-size:16px;line-height:1.35;color:#0b2f46}
.discovery-content-allocation-main>div:first-child>small{font-size:12px;line-height:1.45;color:#5b7180}
.discovery-content-allocation-count{flex:0 0 auto;min-width:88px;padding:9px 12px;border:1px solid #cfe1e5;border-radius:10px;background:#fff;text-align:center}
.discovery-content-allocation-count strong{display:block;font-size:22px;line-height:1.05;color:#0b2f46}.discovery-content-allocation-count span{display:block;margin-top:3px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#627986}
.discovery-content-allocation.is-balanced{border-left-color:#24b47e;background:linear-gradient(135deg,#f1fcf7,#fff 64%,#f4fbf8)}
.discovery-content-allocation.is-balanced .discovery-content-allocation-count{border-color:#bfe8d6;background:#f2fcf7}.discovery-content-allocation.is-balanced .discovery-content-allocation-count strong{color:#16815d}
.discovery-content-allocation.is-over{border-left-color:#dc9618;background:linear-gradient(135deg,#fffaf0,#fff 64%,#f4fbfc)}
.discovery-content-allocation.is-over .discovery-content-allocation-count{border-color:#efd39c;background:#fff9eb}.discovery-content-allocation.is-over .discovery-content-allocation-count strong{color:#9a6200}
.discovery-content-allocation-action{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 16px;border-top:1px solid #ead39e;background:linear-gradient(90deg,#fff5dc,#fffaf0)}
.discovery-content-allocation-action[hidden]{display:none!important}.discovery-content-allocation-action>div{display:flex;flex-direction:column;gap:2px}.discovery-content-allocation-action b{font-size:13px;color:#7b4d00}.discovery-content-allocation-action span{font-size:12px;color:#725f3d}.discovery-content-allocation-action .btn{flex:0 0 auto;white-space:nowrap;background:#0f8793}
.discovery-content-allocation.just-updated{box-shadow:0 0 0 3px rgba(21,174,187,.18),0 12px 28px rgba(4,57,75,.08)}
@media(max-width:760px){.discovery-content-allocation-main,.discovery-content-allocation-action{align-items:stretch;flex-direction:column}.discovery-content-allocation-count{width:100%}.discovery-content-allocation-action .btn{width:100%}}

.content-responsibility-primary{grid-template-columns:repeat(3,minmax(0,1fr))!important;margin-bottom:10px}
.content-collaborative-option{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 14px;border:1px solid #d7e4e7;border-radius:10px;background:linear-gradient(135deg,#f7fafb,#fff)}
.content-collaborative-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.content-collaborative-copy>span{font-size:12px;font-weight:950;letter-spacing:.09em;text-transform:uppercase;color:#627986}.content-collaborative-copy>strong{font-size:14px;color:#0b2f46}.content-collaborative-copy>small{font-size:12px;line-height:1.45;color:#5d7380;max-width:760px}.content-collaborative-choice{flex:0 0 auto;min-width:245px}.content-collaborative-choice span{justify-content:center;background:#f3fbfc}
@media(max-width:900px){.content-responsibility-primary{grid-template-columns:1fr!important}.content-collaborative-option{align-items:stretch;flex-direction:column}.content-collaborative-choice{min-width:0;width:100%}}

/* Discovery UX Polish V1.9.11 */
.discovery-review-btn{
  background:linear-gradient(135deg,#0b5269 0%,#119eaa 100%)!important;
  border-color:#0d7f8f!important;
  color:#fff!important;
  box-shadow:0 6px 16px rgba(9,90,112,.16)!important;
}
.discovery-review-btn:hover{background:linear-gradient(135deg,#083f54 0%,#0c8894 100%)!important;border-color:#086b79!important}
.discovery-content-allocation-action>div>span{font-size:12px;color:#725f3d}
.discovery-content-allocation-action .btn span{color:inherit!important;font:inherit!important;letter-spacing:inherit!important;text-transform:none!important}
.web-review-customer-logo.has-identity-fallback{position:relative;overflow:hidden}
.web-review-customer-logo.has-identity-fallback img{position:relative;z-index:2;background:#fff}
.web-review-customer-monogram{display:none;align-items:center;justify-content:center;width:100%;height:100%;color:#182852;font-size:28px;font-weight:950;letter-spacing:.04em}
.web-review-customer-logo.show-monogram .web-review-customer-monogram{display:flex}
.web-review-customer-logo.show-monogram{background:linear-gradient(135deg,#e8f8f7,#eef0ff)}

/* Discovery Identity V1.9.12 - reliable monogram-first identity */
.website-identity-logo.identity-monogram-first,
.web-review-customer-logo.identity-monogram-first{
  position:relative;
  overflow:hidden;
}
.website-identity-logo.identity-monogram-first .website-identity-monogram,
.web-review-customer-logo.identity-monogram-first .web-review-customer-monogram{
  display:flex!important;
}
.website-identity-favicon-accent,
.web-review-favicon-accent{
  position:absolute;
  right:8px;
  bottom:8px;
  z-index:3;
  width:26px!important;
  height:26px!important;
  max-width:26px!important;
  max-height:26px!important;
  padding:4px;
  border:1px solid rgba(11,47,70,.12);
  border-radius:8px;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(8,47,68,.12);
  object-fit:contain;
}
.web-review-favicon-accent{width:28px!important;height:28px!important;max-width:28px!important;max-height:28px!important}

/* V1.9.13 - verified Discovery handoff cleanup */
.estimate-setup-title-verified h1{
  margin-top:10px;
  margin-bottom:8px;
}
.estimate-verified-compact{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin:0 0 18px;
  padding:16px 18px;
  border:1px solid #b9dfe4;
  border-left:5px solid #12aebd;
  border-radius:16px;
  background:linear-gradient(100deg,#f1fbfa 0%,#f7fbfd 58%,#f6f5ff 100%);
  box-shadow:0 10px 24px rgba(11,53,75,.06);
}
.estimate-verified-compact.is-complete{
  border-left-color:#26ad76;
}
.estimate-verified-compact-copy{
  min-width:0;
}
.estimate-verified-compact-copy .eyebrow{
  margin-bottom:5px;
}
.estimate-verified-compact-copy>strong{
  display:block;
  color:#0b354b;
  font-size:16px;
  line-height:1.25;
  margin-bottom:4px;
}
.estimate-verified-compact-copy>span{
  display:block;
  color:#526b7c;
  font-size:14px;
  line-height:1.4;
}
.estimate-verified-compact-stats{
  display:flex;
  align-items:stretch;
  gap:8px;
  flex:0 0 auto;
}
.estimate-verified-compact-stats>span{
  display:flex;
  align-items:center;
  gap:6px;
  min-height:46px;
  padding:8px 11px;
  border:1px solid #cee3e8;
  border-radius:11px;
  background:#fff;
  color:#496273;
  font-size:13px;
  line-height:1.2;
  white-space:nowrap;
}
.estimate-verified-compact-stats b{
  color:#0b354b;
  font-size:18px;
}
.estimate-verified-compact-stats .needs-review{
  border-color:#f0c989;
  background:#fff8ea;
  color:#7d5a1c;
}
.estimate-verified-compact-stats .needs-review b{
  color:#b36b00;
}
.estimate-verified-compact-stats .complete{
  border-color:#b9e3cf;
  background:#f1fbf6;
}
@media (max-width: 980px){
  .estimate-verified-compact{align-items:flex-start;flex-direction:column;}
  .estimate-verified-compact-stats{width:100%;flex-wrap:wrap;}
  .estimate-verified-compact-stats>span{flex:1 1 180px;white-space:normal;}
}

/* V1.9.14 - verified Discovery Estimate Setup breathing room */
.verified-discovery-setup .wizard-panel[data-step="0"] .grid3{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.verified-discovery-setup .estimate-project-field{
  padding:16px 17px 17px;
  min-height:150px;
}
.verified-discovery-setup .estimate-field-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-content:start;
  gap:8px;
  margin-bottom:10px;
}
.verified-discovery-setup .estimate-field-heading label{
  min-width:0;
}
.verified-discovery-setup .estimate-field-label{
  font-size:16px;
  line-height:1.25;
}
.verified-discovery-setup .estimate-field-badges{
  justify-content:flex-start;
  align-items:center;
  gap:7px;
  min-height:26px;
}
.verified-discovery-setup .estimate-project-field .scope-origin-badge,
.verified-discovery-setup .estimate-project-field .required-field-badge{
  position:static;
  width:auto!important;
  height:auto!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  object-fit:initial;
  white-space:nowrap;
}
.verified-discovery-setup .estimate-project-field input,
.verified-discovery-setup .estimate-project-field select{
  min-height:50px;
  font-size:15px;
}
.verified-discovery-setup .estimate-project-field[data-estimate-focus="notification_recipients"]{
  grid-column:1/-1;
  min-height:0;
}
.verified-discovery-setup .estimate-project-field[data-estimate-focus="notification_recipients"] .field-required-message{
  margin-top:12px;
}
.verified-discovery-setup .estimate-notes-field{
  grid-column:1/-1;
}
@media(max-width:820px){
  .verified-discovery-setup .wizard-panel[data-step="0"] .grid3{grid-template-columns:1fr;}
  .verified-discovery-setup .estimate-project-field[data-estimate-focus="notification_recipients"]{grid-column:auto;}
}

/* V1.9.15 - Estimate Setup balanced two-column flow */
.verified-discovery-setup .wizard-panel[data-step="0"] .grid3{
  grid-auto-flow:row;
}
/* Normal project fields stay in the two-column flow. An active validation
   field is deliberately promoted after the normal fields and spans the row. */
.verified-discovery-setup .estimate-project-field.needs-required-input{
  grid-column:1/-1;
  min-height:0;
}
@media(max-width:820px){
  .verified-discovery-setup .estimate-project-field.needs-required-input{grid-column:auto;}
}
\n\n/* V1.9.16 - Required Estimate Input live response */\n.verified-discovery-setup .estimate-project-field.required-input-pending{\n  grid-column:1/-1;\n  min-height:0;\n  border:2px solid #2bb8ad!important;\n  background:linear-gradient(145deg,#f1fcfa,#ffffff)!important;\n  box-shadow:0 0 0 4px rgba(43,184,173,.07),0 10px 24px rgba(10,84,89,.06)!important;\n}\n.verified-discovery-setup .estimate-project-field.required-input-pending input{\n  border-color:#67cfc6!important;\n  box-shadow:0 0 0 3px rgba(43,184,173,.07);\n}\n.required-field-badge.ready-to-save{\n  background:#e4f8f4!important;\n  border-color:#9edfd6!important;\n  color:#08756f!important;\n}\n.field-required-message.is-ready{\n  background:#edf9f6;\n  border-color:#a9ddd5;\n  color:#0d665f;\n}\n.field-required-message.is-ready span{color:#426c68}\n.project-required-input-summary.required-input-pending{\n  border-color:#86d7ce!important;\n  background:linear-gradient(135deg,#effbf8 0%,#ffffff 68%)!important;\n}\n.project-required-input-summary.required-input-pending strong{color:#086e68!important}\n.project-required-input-summary.required-input-pending span:not(.required-input-count){color:#55726f!important}\n.project-required-input-summary.required-input-pending .required-input-count{\n  background:#e2f8f3;\n  border-color:#99ddd4;\n  color:#08716b;\n}\n.estimate-nav-status.pending-save{color:#58e0d3!important}\n@media(max-width:820px){\n  .verified-discovery-setup .estimate-project-field.required-input-pending{grid-column:auto;}\n}\n\n\n/* Estimate Setup Completion Handoff V1.9.17 */\n.estimate-setup-complete-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}\n.estimate-setup-final-review{min-height:42px;background:linear-gradient(135deg,#0b5269 0%,#12a5ad 100%)!important;border-color:#0e8794!important;color:#fff!important;white-space:nowrap;box-shadow:0 8px 18px rgba(12,126,143,.18)}\n.estimate-setup-final-review:hover{filter:brightness(.96)}\n.estimate-setup-side-progress{margin:14px 8px 0;padding:14px 9px;border-top:1px solid rgba(255,255,255,.15)}\n.estimate-setup-side-progress-head{display:flex;align-items:center;justify-content:space-between;gap:8px}\n.estimate-setup-side-progress-head strong{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.08em}\n.estimate-setup-side-progress-head span{color:#80e0e8;font-size:12px;font-weight:900}\n.estimate-setup-progress-track{height:8px;margin:9px 0;border-radius:99px;background:rgba(255,255,255,.13);overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.18)}\n.estimate-setup-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#19b9ba 0%,#27a8d1 42%,#5a4cff 100%);box-shadow:0 0 10px rgba(70,122,255,.35)}\n.estimate-setup-side-progress p{margin:0;color:#c7dce1;font-size:12px;line-height:1.45}\n.estimate-setup-side-progress p b{color:#fff}\n.estimate-setup-side-progress.is-complete .estimate-setup-progress-track i{background:linear-gradient(90deg,#1cb47a,#18b7ad)}\n.estimate-setup-side-progress.is-complete .estimate-setup-side-progress-head span{color:#7fe2ba}\n\n/* Contrast-safe customer identity stages V1.9.17 */\n.identity-contrast-stage.has-primary-logo,\n.estimate-identity-logo.has-logo.identity-contrast-stage{background:linear-gradient(135deg,#0b3047 0%,#10566a 55%,#168b91 100%)!important;border-color:#2b7d8c!important;box-shadow:0 8px 22px rgba(7,47,67,.16)!important}\n.website-identity-primary-logo,.web-review-primary-logo,.estimate-identity-logo.has-logo img{position:relative;z-index:2;display:block;max-width:100%;max-height:100%;object-fit:contain;background:transparent!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.42)) drop-shadow(0 0 1px rgba(255,255,255,.75))}\n.website-identity-logo.identity-contrast-stage.show-monogram,.web-review-customer-logo.identity-contrast-stage.show-monogram{background:linear-gradient(135deg,#182852,#34358f)!important}\n.web-review-customer-logo.identity-contrast-stage.has-primary-logo img{background:transparent!important}\n@media(max-width:760px){.estimate-setup-complete-actions{grid-column:1/-1;justify-content:flex-start}.estimate-setup-final-review{width:100%}}\n
/* Estimate Setup Finish-Line Polish V1.9.18 */
.estimate-setup-complete-banner{
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:20px;
  padding:20px 22px;
}
.estimate-setup-complete-copy{min-width:0}
.estimate-setup-complete-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:nowrap;
  padding-left:8px;
}
.estimate-setup-complete-next{
  min-height:36px;
  padding:0 14px;
  flex:0 0 auto;
}
.estimate-setup-final-review{
  min-width:210px;
  min-height:46px;
  padding-left:20px!important;
  padding-right:20px!important;
  flex:0 0 auto;
}

.estimate-setup-side-progress{
  margin:16px 8px 4px;
  padding:16px 10px 15px;
  border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.10);
}
.estimate-setup-side-progress-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.estimate-setup-side-progress-title{
  display:flex;
  flex-direction:column;
  gap:1px;
  min-width:0;
}
.estimate-setup-side-progress-title span{
  color:#8fb7c1;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.estimate-setup-side-progress-title strong{
  color:#fff;
  font-size:15px;
  line-height:1.15;
  letter-spacing:0;
  text-transform:none;
}
.estimate-setup-side-progress-percent{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:54px;
  height:34px;
  padding:0 10px;
  border:1px solid rgba(128,224,232,.35);
  border-radius:10px;
  background:rgba(20,174,184,.12);
  color:#80e0e8!important;
  font-size:15px!important;
  font-weight:900;
  line-height:1;
}
.estimate-setup-progress-track{
  height:10px;
  margin:0 0 11px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:99px;
  background:rgba(255,255,255,.12);
  overflow:hidden;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.22);
}
.estimate-setup-progress-track i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#19b9ba 0%,#27a8d1 45%,#5a4cff 100%);
  box-shadow:0 0 10px rgba(70,122,255,.35);
}
.estimate-setup-side-progress-meta{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.estimate-setup-side-progress-meta b{
  color:#fff;
  font-size:12px;
  line-height:1.35;
}
.estimate-setup-side-progress-meta span{
  color:#b9d1d7;
  font-size:11px;
  line-height:1.35;
}
.estimate-setup-side-progress.is-complete{
  margin-top:16px;
}
.estimate-setup-side-progress.is-complete .estimate-setup-progress-track i{
  background:linear-gradient(90deg,#1cb47a 0%,#18b7ad 100%);
}
.estimate-setup-side-progress.is-complete .estimate-setup-side-progress-percent{
  color:#96efc7!important;
  border-color:rgba(92,222,165,.34);
  background:rgba(35,180,122,.14);
}
.estimate-setup-side-progress.is-complete .estimate-setup-side-progress-title span{color:#87c7ad}

@media(max-width:980px){
  .estimate-setup-complete-banner{grid-template-columns:auto 1fr}
  .estimate-setup-complete-actions{grid-column:1/-1;justify-content:flex-start;padding-left:0}
}
@media(max-width:620px){
  .estimate-setup-complete-actions{align-items:stretch;flex-direction:column;gap:10px}
  .estimate-setup-complete-next{align-self:flex-start}
  .estimate-setup-final-review{width:100%;min-width:0}
}

/* V1.9.19 - Unified workflow rail + resilient logo contrast */
.estimate-review-workflow .review-handoff{
  background:linear-gradient(110deg,#0a3850 0%,#0b6677 58%,#13a4ab 100%)!important;
  border:1px solid rgba(20,151,164,.45)!important;
  box-shadow:0 10px 24px rgba(8,63,82,.14)!important;
}
.estimate-review-workflow .review-handoff .estimate-handoff-step small{
  color:#a9d6df!important;
}
.estimate-review-workflow .review-handoff .estimate-handoff-step strong{
  color:#ffffff!important;
}
.estimate-review-workflow .review-handoff .estimate-handoff-step.active strong{
  color:#ffffff!important;
}
.estimate-review-workflow .review-handoff>i{
  background:linear-gradient(90deg,#66dec9 0%,#73bddf 55%,#a5b4ff 100%)!important;
  opacity:.95!important;
}
.estimate-review-workflow .review-handoff .estimate-handoff-step.done>span{
  background:#e8fbf2!important;
  border-color:#9fe0bf!important;
  color:#15704c!important;
}
.estimate-review-workflow .review-handoff .estimate-handoff-step.active>span,
.estimate-review-workflow .review-handoff .final-step>span{
  background:linear-gradient(135deg,#20c0b4 0%,#4f5de2 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
}

/* Most website logos are authored for white backgrounds. Multiply lets a baked-in
   white canvas inherit this soft stage while strengthening faint gray artwork. */
.estimate-identity-logo.has-logo.identity-contrast-stage,
.web-review-customer-logo.identity-contrast-stage.has-primary-logo,
.website-identity-logo.identity-contrast-stage.has-primary-logo{
  background:linear-gradient(145deg,#f2fbfb 0%,#e8f2f5 54%,#eef0ff 100%)!important;
  border-color:#b9d7df!important;
}
.estimate-identity-logo.has-logo.identity-contrast-stage img,
.web-review-customer-logo.identity-contrast-stage.has-primary-logo img,
.website-identity-logo.identity-contrast-stage.has-primary-logo img{
  mix-blend-mode:multiply;
  filter:contrast(1.38) saturate(1.04) drop-shadow(0 1px 1px rgba(9,47,65,.16))!important;
}


/* V1.9.20 - Contrast-safe website logo stage
   Transparent white logos should read cleanly on the same dark navy/teal visual
   language used throughout the application. Keep source artwork unmodified. */
.estimate-identity-logo.has-logo.identity-contrast-stage,
.web-review-customer-logo.identity-contrast-stage.has-primary-logo,
.website-identity-logo.identity-contrast-stage.has-primary-logo{
  background:linear-gradient(135deg,#082f46 0%,#0b5669 48%,#11858d 100%)!important;
  border-color:#257f8c!important;
  box-shadow:0 8px 22px rgba(6,45,64,.18),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.estimate-identity-logo.has-logo.identity-contrast-stage img,
.web-review-customer-logo.identity-contrast-stage.has-primary-logo img,
.website-identity-logo.identity-contrast-stage.has-primary-logo img{
  mix-blend-mode:normal!important;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.38)) drop-shadow(0 0 2px rgba(255,255,255,.28))!important;
  background:transparent!important;
}

/* V1.9.21 - Universal logo contrast treatment
   Keep the dark brand stage that supports white/transparent logos, while adding
   a restrained light edge around source artwork so dark/black logos remain
   readable without recoloring the customer's logo. */
.estimate-identity-logo.has-logo.identity-contrast-stage,
.web-review-customer-logo.identity-contrast-stage.has-primary-logo,
.website-identity-logo.identity-contrast-stage.has-primary-logo{
  background:linear-gradient(135deg,#0a3b50 0%,#0d6574 52%,#15919a 100%)!important;
  border-color:#2b8994!important;
}
.estimate-identity-logo.has-logo.identity-contrast-stage img,
.web-review-customer-logo.identity-contrast-stage.has-primary-logo img,
.website-identity-logo.identity-contrast-stage.has-primary-logo img{
  mix-blend-mode:normal!important;
  background:transparent!important;
  filter:
    drop-shadow(1px 0 0 rgba(255,255,255,.58))
    drop-shadow(-1px 0 0 rgba(255,255,255,.58))
    drop-shadow(0 1px 0 rgba(255,255,255,.58))
    drop-shadow(0 -1px 0 rgba(255,255,255,.58))
    drop-shadow(0 2px 2px rgba(0,0,0,.28))!important;
}

/* V1.9.22 Discovery zero-state guidance + Web Review completion hierarchy */
.web-review-sidebar-secondary-save{
    display:flex;
    width:calc(100% - 10px);
    margin:0 5px 10px;
    min-height:36px;
    justify-content:center;
    font-size:12px;
    background:rgba(255,255,255,.08)!important;
    border-color:rgba(255,255,255,.28)!important;
    color:#fff!important;
}
.web-review-sidebar-submit{min-height:46px;font-weight:800}
.web-review-complete-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.web-review-small-save{min-height:38px;padding:8px 14px;font-size:12px}
.review-submit-card.is-complete{border-top-color:#13a6a8;background:linear-gradient(135deg,#f7fffd 0%,#f4fbff 100%)}
.web-review-complete-submit{margin-top:12px;min-height:44px;padding-left:20px;padding-right:20px;font-weight:800}
@media(max-width:760px){.web-review-complete-actions{width:100%;justify-content:stretch}.web-review-complete-actions .btn{flex:1 1 auto}}

/* V1.9.23 - Unified standalone + Discovery Estimate Setup */
.estimate-setup-modern .wizard-panel[data-step="0"] .grid3{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-flow:row;
  gap:18px;
}
.estimate-setup-modern .estimate-project-field{
  padding:16px 17px 17px;
  min-height:150px;
}
.estimate-setup-modern .estimate-field-heading{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-content:start;
  gap:8px;
  margin-bottom:10px;
}
.estimate-setup-modern .estimate-field-heading label{min-width:0;}
.estimate-setup-modern .estimate-field-label{font-size:16px;line-height:1.25;}
.estimate-setup-modern .estimate-field-badges{justify-content:flex-start;align-items:center;gap:7px;min-height:0;}
.estimate-setup-modern .estimate-project-field input,
.estimate-setup-modern .estimate-project-field select{min-height:50px;font-size:15px;}
.estimate-setup-modern .estimate-project-field.needs-required-input,
.estimate-setup-modern .estimate-project-field.required-input-pending{grid-column:1/-1;min-height:0;}
.estimate-setup-modern .estimate-notes-field{grid-column:1/-1;}
.estimate-standalone-compact{border-left-color:#168b91;}
.estimate-standalone-compact .estimate-verified-compact-copy .eyebrow{color:#087f8a;}
@media(max-width:820px){
  .estimate-setup-modern .wizard-panel[data-step="0"] .grid3{grid-template-columns:1fr;}
  .estimate-setup-modern .estimate-project-field.needs-required-input,
  .estimate-setup-modern .estimate-project-field.required-input-pending{grid-column:auto;}
}


/* V1.9.24 - Estimate Setup visual-state parity */
/* Sidebar state is driven by the same completion result as the status copy. */
.estimate-setup-modern .wizard-step-link.is-complete .step-num,
.estimate-setup-modern .wizard-step-link.is-complete.active .step-num{
  background:#20ad7b!important;
  color:#fff!important;
  box-shadow:0 0 0 3px rgba(32,173,123,.14);
}
.estimate-setup-modern .wizard-step-link.needs-attention .step-num,
.estimate-setup-modern .wizard-step-link.needs-attention.active .step-num{
  background:#d9a128!important;
  color:#fff!important;
  box-shadow:0 0 0 3px rgba(217,161,40,.14);
}
/* Keep the richer multi-color progress treatment through 100% completion. */
.estimate-setup-modern .estimate-setup-progress-track i,
.estimate-setup-modern .estimate-setup-side-progress.is-complete .estimate-setup-progress-track i{
  background:linear-gradient(90deg,#19b9ba 0%,#27a8d1 45%,#5a4cff 100%)!important;
  box-shadow:0 0 12px rgba(70,122,255,.38);
}

/* V1.9.26 - New Estimate review-state initialization */
.estimate-setup-modern .wizard-step-link.not-reviewed .step-num,
.estimate-setup-modern .wizard-step-link.not-reviewed.active .step-num{
  background:#567487!important;
  color:#eef7f8!important;
  box-shadow:0 0 0 3px rgba(86,116,135,.12);
}
.estimate-setup-modern .estimate-nav-status.not-reviewed{
  color:#a9c0ca!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
}
.estimate-setup-modern .wizard-step-link.not-reviewed.active .estimate-nav-status.not-reviewed{
  color:#607884!important;
}

/* Dashboard consistency + list scaling V1.9.31 */
.dashboard-page-size{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    position:relative;
    z-index:1;
    color:#5b7282;
    font-size:12px;
    font-weight:800;
}
.dashboard-page-size select{
    min-height:38px;
    min-width:82px;
    border:1px solid #bdd6dc;
    border-radius:10px;
    background:#fff;
    color:var(--navy);
    padding:0 30px 0 11px;
    font-size:13px;
    font-weight:800;
}
.dashboard-load-more-wrap{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:14px;
    margin:-6px 0 30px;
}
.dashboard-load-more-wrap .muted{font-size:13px;font-weight:700;}

.discovery-dashboard-hero{margin-bottom:18px;}
.discovery-kpi-grid{margin-bottom:22px;}
.discovery-dashboard-section .estimate-section-head{
    background:linear-gradient(115deg,#082f49 0%,#0b435e 68%,#0b6870 100%);
    border-left:5px solid #27c1b3;
}
.discovery-dashboard-section .estimate-section-head:after{
    background:radial-gradient(circle,rgba(39,193,179,.28),rgba(39,193,179,0) 68%);
}
.discovery-dashboard-row:before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:5px;
    background:linear-gradient(180deg,#17b7c7,#2dbb8f);
    border-radius:14px 0 0 14px;
}
.discovery-row-status{display:flex;align-items:flex-start;justify-content:flex-end;min-width:150px;}
.discovery-row-meta{font-size:13px;overflow-wrap:anywhere;}
.discovery-date-strip,
.estimate-date-strip{
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px;
    padding:10px 24px 11px;
    border-top:1px solid #e4edef;
    background:#fbfdfe;
    color:#607786;
    font-size:12px;
}
.discovery-date-strip > div{display:flex;flex-direction:column;gap:2px;min-width:150px;}
.discovery-date-strip span,
.estimate-date-strip b{
    color:#718896;
    font-size:10px;
    font-weight:900;
    letter-spacing:.075em;
    text-transform:uppercase;
}
.discovery-date-strip strong{font-size:13px;color:#17384d;}
.estimate-date-strip span{display:inline-flex;align-items:center;gap:6px;}
.estimate-date-strip{padding:7px 24px 9px;}
.validity-countdown{
    background:#eef8ef!important;
    border-color:#b8dfbf!important;
    color:#24663a!important;
}
.quick-send-btn{
    background:linear-gradient(135deg,#16aeb9,#0a8ea5)!important;
    color:#fff!important;
    border-color:transparent!important;
}
.quick-send-btn:hover{filter:brightness(.98);transform:translateY(-1px);}
.discovery-dashboard-list .discovery-delete-link{
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:0 10px;
    font-size:12px;
    font-weight:800;
}

@media(max-width:820px){
    .dashboard-page-size{justify-content:flex-start;}
    .discovery-row-status{min-width:0;justify-content:flex-start;}
    .discovery-date-strip,.estimate-date-strip{padding-left:18px;padding-right:18px;}
}

/* V1.9.32 - Dashboard polish */
.estimate-dashboard-controls{
    row-gap:16px;
}
.estimate-filter-tabs{
    padding:15px 16px 16px;
    border:1px solid #d7e7eb;
    border-radius:14px;
    background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(239,248,250,.92));
    box-shadow:0 5px 16px rgba(8,47,66,.045) inset;
}
.dashboard-filter-label{
    flex:0 0 100%;
    color:#617b8a;
    font-size:11px;
    line-height:1;
    font-weight:900;
    letter-spacing:.085em;
    text-transform:uppercase;
    margin:0 0 2px 2px;
}
.estimate-filter{
    min-height:40px;
    padding:0 16px;
    transition:border-color .16s ease,color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.estimate-filter:hover{
    transform:translateY(-1px);
    box-shadow:0 5px 12px rgba(8,47,66,.08);
}
.estimate-filter.active{
    transform:none;
    box-shadow:0 7px 18px rgba(6,40,63,.20),0 0 0 3px rgba(18,169,195,.08);
}
.dashboard-page-size{
    justify-self:end;
    width:max-content;
    min-height:46px;
    padding:5px 7px 5px 13px;
    gap:8px;
    border:1px solid #c8dfe4;
    border-radius:13px;
    background:#f7fbfc;
    box-shadow:0 4px 12px rgba(8,47,66,.045);
    color:#557080;
}
.dashboard-page-size label{
    color:#496574;
    font-size:11px;
    font-weight:900;
    letter-spacing:.075em;
    text-transform:uppercase;
}
.dashboard-page-size select{
    min-height:34px;
    min-width:70px;
    border-color:#a9d0d8;
    border-radius:9px;
    background-color:#fff;
    color:#087f8e;
    font-size:14px;
    font-weight:900;
    box-shadow:0 2px 6px rgba(8,61,82,.04) inset;
}
.dashboard-page-size span{
    padding-right:5px;
    font-size:11px;
    font-weight:800;
    color:#6c818e;
}
.discovery-dashboard-section .dashboard-load-more-wrap{
    margin:18px 0 32px;
}
.estimate-load-more-wrap{
    margin:2px 0 30px;
}
.estimate-filter-empty[hidden]{display:none!important;}
.discovery-date-strip .dashboard-date-value strong{
    color:#078797;
    font-weight:900;
}
.estimate-date-strip span{
    color:#078797;
    font-weight:800;
}
.estimate-date-strip b{
    color:#718896;
}
@media(max-width:820px){
    .dashboard-page-size{justify-self:start;width:auto;}
    .estimate-filter-tabs{padding:13px;}
}

/* V1.9.33 - Record display behavior */
.dashboard-page-size span{
    text-transform:uppercase;
    letter-spacing:.055em;
    font-weight:900;
}
.dashboard-load-more-wrap .muted{
    color:#5d7482;
    font-weight:800;
}

/* V1.9.34 - hide revision families when dashboard filters exclude the current estimate */
.estimate-revision-family[hidden]{display:none!important;}

/* V1.9.39 - Website Intelligence public-reader fallback notice */
.wi-reader-fallback-notice{margin:0;padding:14px 18px;display:flex;gap:10px 16px;align-items:flex-start;background:#fff8e8;border-bottom:1px solid #efd58d;color:#654c12}
.wi-reader-fallback-notice strong{flex:0 0 auto;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:#8a5a00}
.wi-reader-fallback-notice span{font-size:14px;line-height:1.45}
@media(max-width:760px){.wi-reader-fallback-notice{display:block}.wi-reader-fallback-notice strong{display:block;margin-bottom:6px}}

/* V1.9.40 Deep Public Discovery */
.wi-tech-observed .analysis-confidence{margin-left:6px;vertical-align:middle}.wi-tech-observed p{margin:8px 0 0;font-size:13px;line-height:1.45;color:#546b7b}.wi-tech-observed small{display:block;margin-top:6px}

/* V1.9.44 - Sales clarity + ownership UI */
.dashboard-people-tools{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;}
.dashboard-people-tools label{display:flex;flex-direction:column;gap:5px;color:#607786;font-size:11px;font-weight:900;letter-spacing:.075em;text-transform:uppercase;}
.dashboard-people-tools select{min-height:40px;min-width:150px;border:1px solid #b8d6dc;border-radius:10px;background:#fff;color:#17384d;font-size:13px;font-weight:800;padding:0 34px 0 11px;}
.dashboard-owner-card{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:9px!important;min-width:190px!important;padding:6px 10px 6px 7px;border:1px solid #cde3e7;border-radius:11px;background:linear-gradient(135deg,#f5fbfc,#eef8f8);box-shadow:0 3px 9px rgba(8,47,66,.045);}
.dashboard-owner-avatar{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#0aa6b8,#167d91);color:#fff!important;font-size:12px!important;font-weight:950!important;letter-spacing:.03em!important;text-transform:uppercase;box-shadow:0 3px 8px rgba(8,126,145,.18);}
.dashboard-owner-copy{display:flex;flex-direction:column;gap:1px;min-width:0;}
.dashboard-owner-copy small{color:#6e8793;font-size:9px;font-weight:950;letter-spacing:.09em;text-transform:uppercase;}
.dashboard-owner-copy strong{color:#12364b!important;font-size:13px!important;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px;}
.estimate-owner-card{margin-top:8px;width:max-content;}
.wi-metric-meaningful_content small{font-weight:800;color:#52707e;}
@media(max-width:820px){.dashboard-people-tools{width:100%;}.dashboard-people-tools label{flex:1 1 145px;}.dashboard-people-tools select{width:100%;min-width:0;}.dashboard-owner-card{min-width:0!important;}.dashboard-owner-copy strong{max-width:145px;}}

/* V1.9.45 - consistent dashboard ownership placement */
.dashboard-owner-card{
    width:190px!important;
    min-width:190px!important;
    max-width:190px!important;
    box-sizing:border-box;
}
.discovery-row-right,
.estimate-row-right{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    flex:0 0 auto;
}
.discovery-row-right{gap:11px;}
.discovery-row-right .discovery-row-status{min-width:0;}
.estimate-owner-card{
    margin:0 0 15px!important;
}
.estimate-row-right .estimate-row-numbers{
    margin-bottom:15px;
}
@media(max-width:820px){
    .discovery-row-right,.estimate-row-right{width:100%;align-items:flex-start;}
    .dashboard-owner-card{width:190px!important;min-width:190px!important;max-width:190px!important;}
    .estimate-row-right .estimate-row-numbers{width:100%;}
}

/* V1.9.46 - Profile, analysis states, and explicit TBD quantities */
.profile-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:22px;align-items:start}.profile-card h2{margin:3px 0 8px}.profile-security-card p{font-size:16px;line-height:1.55}.profile-notification-block{margin:24px 0;padding-top:20px;border-top:1px solid #dfe7ec}.profile-notification-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px}.profile-email-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:10px}.profile-email-row input{margin:0}.website-analysis-state{display:flex;justify-content:space-between;gap:22px;align-items:center;margin:18px 0;padding:18px 20px;border-radius:12px;border:1px solid #e5c27b;border-left:5px solid #d99722;background:#fff8eb}.website-analysis-state.partial{border-color:#e5c27b;border-left-color:#d99722}.website-analysis-state.unavailable{border-color:#e3b4b4;border-left-color:#c85555;background:#fff4f4}.website-analysis-state span{display:block;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#815616}.website-analysis-state.unavailable span{color:#9a3838}.website-analysis-state strong{display:block;margin-top:4px;font-size:18px;color:#182852}.website-analysis-state p{margin:6px 0 0;font-size:16px;line-height:1.5;color:#536b7b}.website-analysis-state small{display:block;margin-top:7px;color:#6a7882;font-size:12px}.tbd-quantity-control{display:grid;grid-template-columns:minmax(120px,220px) minmax(240px,1fr);gap:12px;align-items:center}.tbd-quantity-toggle{display:flex!important;align-items:center;gap:9px;margin:0!important;padding:11px 13px;border:1px solid #d8e2e8;border-radius:9px;background:#f8fbfc;font-size:14px;font-weight:800;color:#31485a}.tbd-quantity-toggle input{width:auto!important;margin:0!important}.discovery-question-card.is-tbd{border-color:#e2a640}.discovery-tbd-value{display:inline-flex;padding:4px 9px;border-radius:999px;background:#fff3d9;color:#855b13;font-weight:800}.manual-website-verification{display:flex;justify-content:space-between;gap:22px;align-items:center;margin:0 0 18px;padding:20px;border-radius:14px;border:1px solid #e1b864;border-left:5px solid #d99722;background:#fff8eb}.manual-website-verification.is-complete{border-color:#9fd1ba;border-left-color:#27825f;background:#f0faf5}.manual-website-verification h2{margin:3px 0 5px;color:#182852}.manual-website-verification p{margin:0;font-size:16px;line-height:1.5;color:#536b7b}.manual-website-verification label{display:flex;align-items:center;gap:10px;min-width:310px;padding:13px 15px;border-radius:10px;background:#fff;border:1px solid #d8e2e8;font-size:14px;font-weight:800;color:#263f53}.manual-website-verification input{width:auto;margin:0}@media(max-width:800px){.profile-grid{grid-template-columns:1fr}.website-analysis-state,.manual-website-verification{align-items:flex-start;flex-direction:column}.manual-website-verification label{min-width:0;width:100%}.tbd-quantity-control{grid-template-columns:1fr}}

/* V1.9.47 Super Admin profile maintenance */
.admin-user-profile-editor{
    margin:18px 0;
    padding:18px;
    border:1px solid #d8e3ea;
    border-radius:14px;
    background:#f8fbfc;
}
.admin-user-profile-form{margin-top:12px}
.admin-profile-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.admin-profile-grid p{margin:0}
.admin-profile-notification-list{
    display:grid;
    gap:10px;
    margin-top:12px;
}
.admin-profile-email-row input{width:100%}
.admin-profile-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:flex-end;
    margin-top:14px;
}
.wi-metric-needs-verification strong{
    font-size:22px;
    line-height:1.15;
}
@media (max-width:760px){
    .admin-profile-grid{grid-template-columns:1fr}
}


/* V1.9.51 - Server-side identity-logo normalization
   Logo artwork is now normalized with Imagick when the source has confidently
   uniform edge padding. Display always returns to safe contain behavior. */
.website-identity-primary-logo,
.web-review-primary-logo,
.estimate-identity-logo.has-logo img{
  transform:none!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}

/* =========================================================
   V1.9.53 - Estimate Setup workflow controls
   ========================================================= */
.estimate-setup-controls{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:18px 0;
    padding:14px 16px;
    border:1px solid #d3e1e6;
    border-left:5px solid var(--cyan);
    border-radius:14px;
    background:linear-gradient(110deg,#f8fcfd 0%,#f8f8ff 100%);
    box-shadow:0 8px 22px rgba(6,40,63,.05);
}
.estimate-setup-controls:first-of-type{margin-top:0;}
.estimate-setup-controls-copy{min-width:220px;display:flex;flex-direction:column;gap:3px;}
.estimate-setup-controls-copy span{
    color:#0a8998;
    font-size:12px;
    font-weight:950;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.estimate-setup-controls-copy strong{color:var(--navy);font-size:15px;line-height:1.35;}
.estimate-setup-controls-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;}
.estimate-setup-controls-actions .btn{min-height:42px;justify-content:center;white-space:nowrap;}
.estimate-setup-controls-actions .estimate-setup-final-review{background:#182852;color:#fff;border-color:#182852;}
.estimate-setup-controls-actions .estimate-setup-final-review:hover{background:#0f776f;border-color:#0f776f;}
.estimate-close-sections{border-color:#aebfc7;}
.estimate-sections-closed-state{
    min-height:280px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    padding:36px;
    border:1px dashed #bdced5;
    border-radius:16px;
    background:#f8fbfc;
    color:#526b77;
    text-align:left;
}
.estimate-sections-closed-state[hidden]{display:none!important;}
.estimate-sections-closed-state>span{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    flex:0 0 48px;
    border-radius:50%;
    background:#dff3ee;
    color:#14836d;
    font-size:23px;
    font-weight:950;
}
.estimate-sections-closed-state strong{display:block;color:var(--navy);font-size:20px;line-height:1.2;margin-bottom:5px;}
.estimate-sections-closed-state p{margin:0;font-size:15px;line-height:1.5;}
.estimate-setup-modern.sections-closed{align-items:stretch;}

@media(max-width:1100px){
    .estimate-setup-controls{align-items:flex-start;flex-direction:column;}
    .estimate-setup-controls-actions{width:100%;justify-content:flex-start;}
}
@media(max-width:720px){
    .estimate-setup-controls-actions{display:grid;grid-template-columns:1fr;width:100%;}
    .estimate-setup-controls-actions .btn{width:100%;}
    .estimate-sections-closed-state{min-height:220px;padding:24px;align-items:flex-start;}
}

/* =========================================================
   V1.9.55 - Stage overview navigation + project snapshot
   ========================================================= */
.estimate-close-sections[hidden],.discovery-close-sections[hidden]{display:none!important}
.estimate-sections-closed-state.estimate-workspace-overview,.discovery-workspace-overview{
    display:block;min-height:0;padding:28px;border:1px solid #cbdde3;border-radius:18px;
    background:linear-gradient(135deg,#f8fcfd 0%,#f6f7ff 62%,#f1fbf8 100%);box-shadow:0 12px 30px rgba(8,43,65,.07);color:#526b77;text-align:left
}
.discovery-workspace-overview{margin-bottom:22px}
.discovery-workspace-overview[hidden]{display:none!important}
.workspace-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:22px;border-bottom:1px solid #d9e5e9}
.workspace-overview-head h2{margin:5px 0 7px;color:var(--navy);font-size:26px;line-height:1.15}
.workspace-overview-head p{margin:0;max-width:690px;font-size:15px;line-height:1.55;color:#536b78}
.workspace-overview-progress{flex:0 0 150px;min-height:105px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #cbdde3;border-radius:16px;background:#fff;box-shadow:0 6px 16px rgba(7,38,58,.05)}
.workspace-overview-progress strong{font-size:34px;line-height:1;color:#138b82}.workspace-overview-progress span{margin-top:7px;font-size:12px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;color:#607886}
.workspace-overview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.workspace-overview-stats>div{padding:17px 18px;border:1px solid #d6e3e7;border-radius:14px;background:rgba(255,255,255,.82)}
.workspace-overview-stats b{display:block;color:var(--navy);font-size:25px;line-height:1}.workspace-overview-stats span{display:block;margin-top:7px;color:#607886;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.045em}
.workspace-overview-next{padding:20px;border-radius:15px;background:#fff;border:1px solid #d6e3e7}.workspace-overview-next>div:first-child strong{display:block;margin:5px 0 15px;color:var(--navy);font-size:16px;line-height:1.4}
.workspace-overview-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.workspace-overview-card{width:100%;display:grid;grid-template-columns:42px 1fr 24px;align-items:center;gap:11px;padding:13px 14px;border:1px solid #d3e0e5;border-radius:12px;background:#f9fbfc;text-align:left;cursor:pointer;transition:.18s ease;font:inherit}
.workspace-overview-card:hover{transform:translateY(-1px);border-color:#56bfc2;background:#f2fbfa;box-shadow:0 7px 16px rgba(7,52,70,.07)}
.workspace-overview-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#e5f5f3;color:#0d8179;font-size:12px;font-weight:950;letter-spacing:.04em}
.workspace-overview-card strong{display:block;color:var(--navy);font-size:14px;line-height:1.25}.workspace-overview-card small{display:block;margin-top:3px;color:#617987;font-size:12px;font-weight:750}.workspace-overview-card i{font-style:normal;color:#0e8b84;font-size:19px;font-weight:900}
@media(max-width:760px){.workspace-overview-head{flex-direction:column}.workspace-overview-progress{width:100%;min-height:88px;flex-basis:auto}.workspace-overview-stats{grid-template-columns:1fr}.workspace-overview-cards{grid-template-columns:1fr}.estimate-sections-closed-state.estimate-workspace-overview,.discovery-workspace-overview{padding:20px}}

/* V1.9.55 stage overview navigation + estimate project snapshot */
.estimate-overview-snapshot{margin-top:18px;padding:20px;border:1px solid #cfe0e6;border-radius:16px;background:rgba(255,255,255,.72)}
.estimate-overview-snapshot-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.estimate-overview-snapshot-head strong{font-size:20px;color:#102b46}
.estimate-overview-snapshot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.estimate-overview-snapshot-grid>div{min-height:106px;padding:16px;border:1px solid #d6e3e8;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:5px}
.estimate-overview-snapshot-grid span{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#557184}
.estimate-overview-snapshot-grid b{font-size:18px;line-height:1.25;color:#102b46}
.estimate-overview-snapshot-grid small{font-size:13px;line-height:1.4;color:#587083}
.estimate-overview-final-review{margin-top:16px;min-height:48px;font-size:16px}
@media(max-width:1050px){.estimate-overview-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.estimate-overview-snapshot-grid{grid-template-columns:1fr}.estimate-overview-snapshot-head{align-items:flex-start;flex-direction:column}}

/* V1.9.56 Stage UX consistency */
.discovery-nav{padding:20px 16px!important}
.discovery-nav-title{margin-bottom:12px!important}
.discovery-nav>a{min-height:58px!important;padding:10px 10px!important;margin-bottom:5px!important;gap:10px!important}
.discovery-nav-copy b{font-size:13px!important;line-height:1.3!important;white-space:normal!important;text-overflow:clip!important}
.discovery-nav-copy small{margin-top:4px!important;line-height:1.3!important}
.discovery-progress-side{margin-top:18px!important;padding:18px 4px 8px!important}
.discovery-progress-side p{margin-bottom:14px!important;min-height:0!important}
.discovery-progress-side .btn{min-height:42px!important;padding:10px 9px!important;margin-top:8px!important;line-height:1.3!important}
.discovery-progress-side .discovery-sidebar-save{margin:2px 0 4px!important}
.discovery-progress-side #review-incomplete{margin-top:10px!important}
.discovery-progress-side #discovery-close-sections{margin-top:8px!important;background:#eef8fa!important;border-color:#b9dce2!important;color:#123a50!important}
.discovery-question-head{margin-bottom:13px!important}
.discovery-section .discovery-question-head>label,.discovery-section .discovery-question-card>label{font-size:13px!important;line-height:1.4!important}
.discovery-question-card>label{margin-bottom:10px!important}
.discovery-question-card input[type=text],.discovery-question-card input[type=number],.discovery-question-card input[type=date],.discovery-question-card input[type=url],.discovery-question-card select,.discovery-question-card textarea{margin-top:0!important}
.discovery-question-card .field-help{margin-top:10px!important}

.web-review-overview-button{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:44px;margin:8px 0 14px!important;background:#eef8fa!important;border-color:#9bcfd7!important;color:#103b51!important;font-weight:900!important;text-decoration:none!important}
.web-review-overview-button.is-active{background:#dff5f3!important;border-color:#4eb9b1!important;color:#08746f!important}
.web-review-workspace-overview{padding:24px;border:1px solid #cbdfe4;border-radius:16px;background:linear-gradient(135deg,#fff 0%,#f4fbfb 100%);box-shadow:0 12px 28px rgba(7,45,66,.08)}
.web-review-overview-snapshot{margin-top:18px;padding:18px;border:1px solid #d5e3e7;border-radius:13px;background:#fff}
.web-review-workspace-overview .workspace-overview-next{margin-top:18px}
.web-review-workspace-overview .workspace-overview-next>.btn{display:inline-flex;margin-top:14px;text-decoration:none}
@media(max-width:900px){.discovery-nav{padding:16px 14px!important}.discovery-nav>a{min-height:54px!important}}

/* V1.9.57 stage overview completion */
.discovery-overview-snapshot{margin:18px 0 20px;padding:18px;border:1px solid #d5e3e7;border-radius:13px;background:#fff}
.discovery-workspace-overview .estimate-overview-snapshot-grid{margin-top:14px}

/* V1.9.58 - Stage overview polish */
.workspace-overview-progress{flex-basis:175px;min-height:120px;padding:12px}
.workspace-overview-progress strong{font-size:40px}
.web-review-estimate-created{margin-top:20px}
.discovery-activity{margin-top:22px}
.discovery-activity>summary{padding:16px 18px}
.discovery-activity>summary strong{font-size:16px;color:var(--navy)}
@media(max-width:760px){.workspace-overview-progress{width:100%;min-height:96px;flex-basis:auto}.workspace-overview-progress strong{font-size:38px}}

/* V1.9.59 - Project Snapshot visual hierarchy */
.estimate-overview-snapshot,.discovery-overview-snapshot,.web-review-overview-snapshot{
    position:relative;overflow:hidden;margin-top:20px;padding:22px;border:1px solid #b9dce2;border-left:5px solid #18aeb5;border-radius:16px;
    background:linear-gradient(135deg,#f7fcfd 0%,#ffffff 52%,#f3f5ff 100%);box-shadow:0 8px 22px rgba(7,45,66,.06)
}
.estimate-overview-snapshot::before,.discovery-overview-snapshot::before,.web-review-overview-snapshot::before{
    content:"";position:absolute;right:-36px;top:-48px;width:150px;height:150px;border-radius:50%;background:rgba(73,78,244,.055);pointer-events:none
}
.estimate-overview-snapshot-head{position:relative;z-index:1;align-items:center;margin-bottom:17px;padding-bottom:15px;border-bottom:1px solid #d5e6ea}
.estimate-overview-snapshot-head .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:900;letter-spacing:.12em;color:#0b9297}
.estimate-overview-snapshot-head .eyebrow::before{content:"◆";font-size:10px;color:#18aeb5}
.estimate-overview-snapshot-head strong{font-size:21px;line-height:1.2;color:#102b46}
.estimate-overview-snapshot-grid{position:relative;z-index:1;gap:12px}
.estimate-overview-snapshot-grid>div{min-height:108px;border-color:#ccdee4;box-shadow:0 3px 10px rgba(7,45,66,.035)}
@media(max-width:700px){.estimate-overview-snapshot,.discovery-overview-snapshot,.web-review-overview-snapshot{padding:18px;border-left-width:4px}.estimate-overview-snapshot-head{gap:8px}}

/* V1.9.60 - Application icon system (Lucide) */
.app-icon{
    width:17px;
    height:17px;
    display:inline-block;
    flex:0 0 17px;
    vertical-align:-3px;
    object-fit:contain;
}
.top nav a,.header-feedback-btn,.btn{gap:8px;align-items:center}
.top nav a,.header-feedback-btn{display:inline-flex}
.btn{display:inline-flex;justify-content:center}
.top nav .app-icon{width:16px;height:16px;opacity:.88}
.top nav a.active .app-icon,.top nav a:hover .app-icon{opacity:1}
.header-feedback-btn .app-icon{width:16px;height:16px}
.discovery-sticky-buttons .app-icon,.discovery-form-actions .app-icon,.web-review-top-actions .app-icon{width:17px;height:17px}
.web-review-overview-button .app-icon{width:16px;height:16px}
@media(max-width:900px){.top nav a .app-icon{display:none}}


/* V1.9.61 - Icon color and state polish */
.app-icon{color:inherit;stroke:currentColor}
.top nav .app-icon,.header-feedback-btn .app-icon{color:inherit}
.btn .app-icon{color:inherit}
.app-icon.is-success{color:#2e8b57}
.app-icon.is-attention{color:#d49a24}
.app-icon.is-danger{color:#b84242}
.app-icon.is-muted{color:#718596}
.app-icon.is-info{color:#0b9297}

/* =========================================================
   V1.9.62 - Header responsive spacing polish
   Keep desktop/laptop header on one line without collisions.
   The PILOT badge is the first optional element to yield.
   ========================================================= */
@media (max-width: 1380px) {
    .top {
        gap:12px!important;
        padding-left:20px!important;
        padding-right:20px!important;
    }
    .brand {
        gap:10px!important;
    }
    .brand-sub {
        gap:6px!important;
        padding-left:12px!important;
        letter-spacing:.10em!important;
    }
    .pilot-inline {
        display:none!important;
    }
    .top nav {
        gap:2px!important;
    }
    .top nav > a,
    .header-feedback-btn {
        padding-left:8px!important;
        padding-right:8px!important;
    }
}

@media (max-width: 1180px) {
    .brand-sub {
        font-size:11px!important;
        letter-spacing:.08em!important;
    }
    .top nav > a,
    .header-feedback-btn {
        font-size:14px!important;
    }
}

/* =========================================================
   V1.9.63 - Global application icon consistency
   Extend the established Lucide action language across the app.
   ========================================================= */
.account-menu-panel a{display:flex;align-items:center;gap:8px}
.account-menu-panel .app-icon{width:16px;height:16px}
.timeline-settings-btn{display:inline-flex;align-items:center;gap:7px}
.timeline-settings-btn .app-icon{width:16px;height:16px}
.password-tool-row .btn .app-icon{width:15px;height:15px}
.estimate-dashboard-row .btn .app-icon,.admin-tool-actions .btn .app-icon,.calendar-form-actions .btn .app-icon{width:16px;height:16px}
.danger-btn .app-icon,.danger-outline .app-icon{color:inherit}

/* V1.9.64 - Action and search consistency */
.estimate-search-wrap,
.estimate-item-search-wrap {
  position: relative;
}
.estimate-search-wrap .app-search-icon,
.estimate-item-search-wrap .app-search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #557083;
  pointer-events: none;
  z-index: 2;
}
.estimate-search-wrap .app-search-icon .app-icon,
.estimate-item-search-wrap .app-search-icon .app-icon {
  width: 17px;
  height: 17px;
}
.estimate-search-wrap input[type="search"],
.estimate-item-search-wrap input[type="search"] {
  padding-left: 42px;
}

/* Semantic action consistency: icon follows the control's text color. */
.btn .app-icon,
button .app-icon,
a.btn .app-icon {
  flex: 0 0 auto;
  color: currentColor;
}

/* V1.9.66 Discovery section navigation */
.discovery-section-navigation{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px 20px;border-top:1px solid #dce8eb;background:#fff}
.discovery-section-navigation>div{display:flex;align-items:center;gap:10px}
.discovery-section-navigation .btn{display:inline-flex;align-items:center;gap:8px;min-height:42px}
.discovery-section[hidden]{display:none!important}
@media(max-width:700px){.discovery-section-navigation{align-items:stretch;flex-direction:column}.discovery-section-navigation>div,.discovery-section-navigation .btn{width:100%}.discovery-section-navigation .btn{justify-content:center}}

/* =========================================================
   V1.9.68 Project Timeline + Client Responsibility
   ========================================================= */
.timeline-change-success{display:flex;align-items:center;justify-content:space-between;gap:18px}
.timeline-today-summary{border-color:#b8dfe5!important;background:linear-gradient(180deg,#f5fcfd,#fff)!important}
.timeline-today-summary strong{color:#08788c!important}
.timeline-client-center{padding:0;overflow:hidden;border-top:4px solid var(--cyan);box-shadow:0 12px 30px rgba(6,40,63,.07)}
.timeline-client-center-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 24px 18px;background:linear-gradient(100deg,#edf9fb 0%,#fff 66%);border-bottom:1px solid #d8e7ea}
.timeline-client-center-head h2{margin:4px 0 7px;color:var(--navy);font-size:22px}
.timeline-client-center-head p{max-width:760px;margin:0;line-height:1.45}
.timeline-client-stats{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:9px;min-width:390px}
.timeline-client-stats>div{display:grid;gap:3px;min-height:72px;padding:12px 14px;border:1px solid #d8e7ea;border-radius:11px;background:#fff}
.timeline-client-stats strong{color:var(--navy);font-size:25px;line-height:1}
.timeline-client-stats span{color:#617780;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.timeline-client-stats .attention{border-color:#efcf91;background:#fffaf0}.timeline-client-stats .attention strong{color:#a46514}
.timeline-client-stats .overdue{border-color:#efb9b3;background:#fff7f6}.timeline-client-stats .overdue strong{color:#a33a2f}
.timeline-client-migration{margin:18px 22px;padding:14px 16px;border:1px solid #efcf91;border-radius:10px;background:#fff9ed;color:#795822}
.timeline-client-manager{display:flex;align-items:flex-end;gap:10px;padding:16px 22px;border-bottom:1px solid #e4ecee;background:#fbfdfe}
.timeline-client-manager label{display:grid;gap:5px;min-width:300px;margin:0;color:#61767f;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.timeline-client-manager select{min-height:40px}
.timeline-client-deadlines{display:grid;gap:0}
.timeline-client-deadline{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 22px;border-bottom:1px solid #edf2f4;background:#fff}
.timeline-client-deadline:last-child{border-bottom:0}.timeline-client-deadline.due-soon{background:#fffdf8}.timeline-client-deadline.past-due{background:#fff9f8}
.timeline-client-date{display:grid;align-content:center;justify-items:center;width:52px;height:52px;border:1px solid #d7e5e8;border-radius:10px;background:#f8fbfc}.timeline-client-date span{color:#667d86;font-size:12px;font-weight:900;text-transform:uppercase}.timeline-client-date strong{color:var(--navy);font-size:22px;line-height:1}
.timeline-client-task>div{display:flex;align-items:center;gap:8px}.timeline-client-task strong{color:var(--navy);font-size:14px}.timeline-client-task small{display:block;margin-top:5px;color:#657b84;font-size:12px;font-weight:750}
.timeline-responsibility-pill{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.timeline-responsibility-pill.bmg{background:#e5f6f8;color:#08788c}.timeline-responsibility-pill.customer{background:#fff0d9;color:#a45118}.timeline-responsibility-pill.shared{background:#edf0f8;color:#4e5f8d}
.timeline-client-actions{display:flex;align-items:center;gap:7px}.timeline-client-actions form{margin:0}
.timeline-client-empty{padding:22px;color:#667d86;text-align:center;background:#fbfdfe}
.timeline-responsibility-map{border-top:1px solid #dce8eb}.timeline-responsibility-map>summary{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;cursor:pointer;background:#f8fbfc}.timeline-responsibility-map>summary>div{display:grid;gap:2px}.timeline-responsibility-map>summary strong{color:var(--navy);font-size:14px}.timeline-responsibility-map>summary span{color:#667d86;font-size:12px}
.timeline-responsibility-list{display:grid;max-height:520px;overflow:auto}.timeline-responsibility-list label{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:16px;align-items:center;padding:10px 22px;margin:0;border-top:1px solid #edf2f4}.timeline-responsibility-list label>span{display:grid;gap:2px}.timeline-responsibility-list strong{color:var(--navy);font-size:13px}.timeline-responsibility-list small{color:#6b8088;font-size:12px}.timeline-responsibility-list select{min-height:38px}
.timeline-responsibility-save{display:flex;justify-content:flex-end;padding:14px 22px;border-top:1px solid #dce8eb;background:#fbfdfe}
.timeline-adjustment-row.timeline-adjustment-documented{grid-template-columns:minmax(230px,1fr) 125px 125px 190px minmax(210px,1fr) 210px 88px;align-items:end}
.timeline-adjustment-row.timeline-adjustment-documented select,.timeline-adjustment-row.timeline-adjustment-documented input{min-height:40px}
.timeline-adjustment-note{min-width:0}.timeline-cascade-toggle{display:flex!important;align-items:center!important;gap:8px!important;min-height:40px;text-transform:none!important;letter-spacing:0!important;color:#536a74!important;font-weight:750!important}.timeline-cascade-toggle input{width:18px!important;min-height:18px!important;margin:0!important}.timeline-adjustment-task small{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.timeline-change-preview{padding:0;overflow:hidden}.timeline-impact-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px;background:linear-gradient(105deg,#eef9fb,#fff)}.timeline-impact-hero h2{margin:4px 0 7px;color:var(--navy);font-size:24px}.timeline-impact-hero p{max-width:760px;margin:0;color:#627982}.timeline-impact-shift{display:grid;justify-items:center;min-width:132px;padding:14px;border:1px solid #d5e5e8;border-radius:12px;background:#fff}.timeline-impact-shift strong{font-size:32px;color:var(--navy)}.timeline-impact-shift span{color:#677d86;font-size:12px;font-weight:850;text-transform:uppercase}.timeline-impact-shift.late{border-color:#efc2bb;background:#fff9f7}.timeline-impact-shift.late strong{color:#a33a2f}.timeline-impact-shift.early strong{color:#28763a}
.timeline-impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:18px 24px}.timeline-impact-grid>div{display:grid;gap:5px;padding:14px;border:1px solid #dde8ea;border-radius:10px;background:#fbfdfe}.timeline-impact-grid span{color:#687d86;font-size:12px;font-weight:850;text-transform:uppercase}.timeline-impact-grid strong{color:var(--navy);font-size:16px}.timeline-cascade-note{margin:0 24px 18px;padding:14px 16px;border-left:4px solid var(--cyan);border-radius:8px;background:#f2fafb;color:#58717a}.timeline-preview-actions{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid #e0e9eb;background:#fafcfd}
.timeline-communication-card{max-width:900px}.timeline-communication-context{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px;padding:12px 14px;border:1px solid #d9e7ea;border-radius:10px;background:#f7fbfc}.timeline-communication-context strong{color:var(--navy)}.timeline-communication-context span{color:#657b84;font-size:12px;font-weight:800}.timeline-communication-card textarea{min-height:300px;line-height:1.5}.timeline-communication-actions{display:flex;justify-content:flex-end;gap:8px}
.timeline-client-history{margin-top:14px}.timeline-client-history>summary{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;cursor:pointer}.timeline-client-history>summary>div{display:grid;gap:2px}.timeline-client-history-list{border-top:1px solid #e0e9eb}.timeline-client-history-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px 18px;border-bottom:1px solid #edf2f4}.timeline-client-history-row:last-child{border-bottom:0}.timeline-history-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#e8f7f9;color:#08788c}.timeline-client-history-row strong{color:var(--navy);font-size:13px}.timeline-client-history-row p{margin:3px 0;color:#607780;font-size:12px}.timeline-client-history-row small,.timeline-client-history-row em{display:block;margin-top:4px;color:#71858c;font-size:12px;font-style:normal}
.timeline-today-line{position:absolute;top:0;bottom:0;width:2px;background:#ec6f46;z-index:8;box-shadow:0 0 0 1px rgba(255,255,255,.65)}.timeline-today-scale{position:absolute;top:2px;transform:translateX(-50%);display:grid;justify-items:center;z-index:12;color:#a33a2f}.timeline-today-scale:after{content:"";position:absolute;top:33px;width:2px;height:8px;background:#ec6f46}.timeline-today-scale b{padding:2px 5px;border-radius:4px;background:#ec6f46;color:#fff;font-size:10px;letter-spacing:.04em}.timeline-today-scale small{margin-top:2px;font-size:10px;font-weight:850}
@media(max-width:1150px){.timeline-adjustment-row.timeline-adjustment-documented{grid-template-columns:minmax(220px,1fr) 125px 125px 180px minmax(190px,1fr)}.timeline-cascade-toggle{grid-column:1/-2}.timeline-save-date{grid-column:-2/-1}.timeline-client-center-head{flex-direction:column}.timeline-client-stats{min-width:0;width:100%}}
@media(max-width:760px){.timeline-client-stats{grid-template-columns:1fr}.timeline-client-deadline{grid-template-columns:52px 1fr}.timeline-client-actions{grid-column:1/-1}.timeline-client-manager{align-items:stretch;flex-direction:column}.timeline-client-manager label{min-width:0}.timeline-adjustment-row.timeline-adjustment-documented{grid-template-columns:1fr}.timeline-cascade-toggle,.timeline-save-date{grid-column:auto}.timeline-impact-grid{grid-template-columns:1fr 1fr}.timeline-impact-hero{flex-direction:column}.timeline-client-history-row{grid-template-columns:32px 1fr}.timeline-client-history-row>.btn{grid-column:2}}

/* =========================================================
   V1.9.69 Timeline Responsibility + Navigation Clarity
   ========================================================= */
.timeline-task-cell{position:relative}
.timeline-inline-responsibility{
    display:inline-flex;align-items:center;width:max-content;margin-top:5px;padding:2px 7px;border-radius:999px;
    font-size:10px;font-weight:900;line-height:1.35;text-transform:uppercase;letter-spacing:.045em;border:1px solid transparent
}
.timeline-inline-responsibility.bmg{background:#e7f7fa;border-color:#b6e4eb;color:#08788c}
.timeline-inline-responsibility.customer{background:#fff0d9;border-color:#f0c27a;color:#a65413}
.timeline-inline-responsibility.shared{background:#f0edf9;border-color:#d6caee;color:#66509a}
.timeline-responsibility-row.responsibility-customer .timeline-task-cell{box-shadow:inset 4px 0 0 #f0b84d;background:linear-gradient(90deg,#fff9ed 0,#fff 42%)}
.timeline-responsibility-row.responsibility-shared .timeline-task-cell{box-shadow:inset 4px 0 0 #9b87c7;background:linear-gradient(90deg,#f8f5fc 0,#fff 42%)}
.timeline-responsibility-row.responsibility-customer .timeline-bar{outline:2px solid rgba(240,184,77,.28)}
.timeline-scale-wrap{position:relative;overflow:visible!important}
.timeline-today-scale{display:none!important}
.timeline-today-flag{
    position:absolute;top:-39px;transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:5px;white-space:nowrap;
    padding:4px 7px;border:2px solid #ec6f46;border-radius:7px;background:#fff;box-shadow:0 4px 10px rgba(69,46,34,.14);color:#a33a2f
}
.timeline-today-flag:after{content:"";position:absolute;left:50%;top:100%;width:2px;height:40px;background:#ec6f46;transform:translateX(-50%)}
.timeline-today-flag b{padding:2px 5px;border-radius:4px;background:#ec6f46;color:#fff;font-size:10px;letter-spacing:.05em}
.timeline-today-flag strong{font-size:11px;letter-spacing:.02em;color:#a33a2f}
#adjust-schedule{scroll-margin-top:18px}

/* =========================================================
   V1.9.70 Timeline Editing + Today Clarity
   ========================================================= */
.timeline-gantt-context{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0 10px;padding:10px 12px;border:1px solid #cfe1e5;border-radius:12px;background:#f8fcfd}
.timeline-gantt-key{display:flex;align-items:center;gap:16px;flex-wrap:wrap;color:#5d737c;font-size:12px;font-weight:800}
.timeline-gantt-key>span{display:inline-flex;align-items:center;gap:7px}.timeline-gantt-key i{display:inline-block;width:10px;height:10px;border-radius:3px}
.timeline-customer-key i{background:#f0b84d;box-shadow:0 0 0 2px #fff0d9}.timeline-bmg-key i{background:#21abc0;box-shadow:0 0 0 2px #e5f6f8}
.timeline-today-box{display:flex;align-items:center;gap:8px;min-height:40px;padding:7px 12px;border:1px solid #efb29e;border-radius:10px;background:#fff8f5;color:#9e3f2e;white-space:nowrap}
.timeline-today-box .app-icon{width:16px;height:16px}.timeline-today-box span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.timeline-today-box strong{font-size:14px;color:#8d3427}
.timeline-adjustment-target{position:relative;border-color:#efb84d!important;background:#fffaf0!important;box-shadow:0 0 0 3px rgba(240,184,77,.18)}
.timeline-adjustment-target:before{content:"SELECTED TASK";position:absolute;top:-11px;left:16px;padding:2px 7px;border-radius:999px;background:#f0b84d;color:#50360b;font-size:9px;font-weight:900;letter-spacing:.06em}
#adjust-schedule[open]{scroll-margin-top:18px}
@media(max-width:760px){.timeline-gantt-context{align-items:flex-start;flex-direction:column}.timeline-today-box{width:100%;justify-content:center}}

/* =========================================================
   V1.9.71 Timeline Inline Task Editing
   ========================================================= */
.timeline-inline-edit-hint{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:38px;
    padding:0 12px;
    border:1px solid #cfe3e8;
    border-radius:9px;
    background:#f5fafb;
    color:#536a74;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}
.timeline-inline-edit-hint .app-icon{width:15px;height:15px;color:#078a9d}

/* Phase-level editing was superseded by precise task-level editing. */
.timeline-phase-edit{display:none!important}

.timeline-task-cell{padding-right:50px!important}
.timeline-inline-edit-toggle{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    width:28px;
    height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #a9d5dc;
    border-radius:7px;
    background:#f2fafb;
    color:#078a9d;
    font-size:21px;
    font-weight:700;
    line-height:1;
    cursor:pointer;
    transition:.16s ease;
}
.timeline-inline-edit-toggle:hover,
.timeline-edit-open .timeline-inline-edit-toggle{
    background:#10a9c2;
    border-color:#10a9c2;
    color:#fff;
    box-shadow:0 4px 10px rgba(16,169,194,.18);
}
.timeline-edit-open .timeline-inline-edit-toggle{transform:translateY(-50%) rotate(45deg)}

.timeline-inline-editor{
    min-width:1230px;
    padding:0 18px 16px 348px;
    border-bottom:1px solid #dce8eb;
    background:linear-gradient(90deg,#f8fcfd 0,#fff 100%);
}
.timeline-inline-edit-form{
    border:1px solid #b9dce2;
    border-left:4px solid #10a9c2;
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 22px rgba(19,60,72,.08);
    overflow:hidden;
}
.timeline-inline-editor-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    padding:14px 16px 12px;
    border-bottom:1px solid #e5eef0;
    background:linear-gradient(90deg,#f2fbfc 0,#fff 72%);
}
.timeline-inline-editor-head>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.timeline-inline-editor-head strong{font-size:15px;color:var(--navy)}
.timeline-inline-editor-head small{width:100%;color:#627985;font-size:12px}
.timeline-inline-close{
    width:30px;height:30px;display:flex;align-items:center;justify-content:center;
    border:1px solid #d7e4e7;border-radius:7px;background:#f8fbfc;color:#627985;
    font-size:20px;line-height:1;cursor:pointer;
}
.timeline-inline-close:hover{background:#eef5f6;color:var(--navy)}
.timeline-inline-fields{
    display:grid;
    grid-template-columns:minmax(180px,.7fr) minmax(180px,.7fr) minmax(230px,1fr) minmax(300px,1.4fr);
    gap:12px;
    padding:14px 16px;
}
.timeline-inline-fields label,
.timeline-inline-locked{
    display:grid;
    align-content:start;
    gap:5px;
    min-width:0;
}
.timeline-inline-fields label>span,
.timeline-inline-locked>span{
    color:#607781;
    font-size:11px;
    font-weight:900;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.timeline-inline-fields input,
.timeline-inline-fields select{
    width:100%;
    min-height:42px;
    margin:0;
}
.timeline-inline-locked{
    min-height:68px;
    padding:8px 11px;
    border:1px solid #d8e5e8;
    border-radius:8px;
    background:#f6f9fa;
}
.timeline-inline-locked strong{font-size:13px;color:var(--navy)}
.timeline-inline-locked small{font-size:11px;color:#758991;line-height:1.3}
.timeline-inline-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:12px 16px 14px;
    border-top:1px solid #e8eff1;
    background:#fbfdfe;
}
.timeline-inline-actions>div{display:flex;gap:8px;align-items:center}
.timeline-inline-cascade{
    display:flex;
    align-items:center;
    gap:9px;
    color:#526a74;
    cursor:pointer;
}
.timeline-inline-cascade input{width:18px;height:18px;margin:0;flex:0 0 auto}
.timeline-inline-cascade span{display:grid;gap:1px}
.timeline-inline-cascade strong{font-size:12px;color:var(--navy)}
.timeline-inline-cascade small{font-size:11px;color:#6d828b}
.timeline-focus-row .timeline-task-cell{
    animation:timelineFocusFlash 2.4s ease;
}
@keyframes timelineFocusFlash{
    0%,100%{box-shadow:inherit}
    15%,65%{box-shadow:inset 4px 0 0 #10a9c2,0 0 0 3px rgba(16,169,194,.16);background:#effbfc}
}
.timeline-shifted-badge{
    background:#eef4fb!important;
    border-color:#c7d9ee!important;
    color:#426789!important;
}

@media(max-width:1100px){
    .timeline-inline-fields{grid-template-columns:1fr 1fr}
    .timeline-inline-note{grid-column:1/-1}
    .timeline-inline-actions{align-items:flex-start;flex-direction:column}
    .timeline-inline-editor{padding-left:348px}
}


/* =========================================================
   V1.9.72 Timeline Inline Editor UI Polish
   ========================================================= */
/* Keep Today visually anchored to the weekly date scale. The red production
   line still runs through task rows, but no longer intrudes into the month band. */
.timeline-today-flag{display:none!important}
.timeline-today-date-marker{
    position:absolute;
    bottom:0;
    width:18px;
    height:0;
    transform:translateX(-50%);
    border-bottom:3px solid #ec6f46;
    z-index:20;
    pointer-events:none;
}
.timeline-today-date-marker:after{
    content:"";
    position:absolute;
    left:50%;
    top:3px;
    transform:translateX(-50%);
    width:0;
    height:0;
    border-left:5px solid transparent;
    border-right:5px solid transparent;
    border-top:6px solid #ec6f46;
}

/* The task disclosure belongs to the row instead of floating on top of it. */
.timeline-task-cell{padding-right:16px!important}
.timeline-inline-edit-toggle{
    position:static;
    flex:0 0 auto;
    margin-left:2px;
    width:26px;
    height:26px;
    transform:none;
    border:1px solid #b7dce2;
    border-radius:999px;
    background:#fff;
    color:#078a9d;
    box-shadow:0 1px 3px rgba(18,65,77,.08);
    font-size:18px;
    font-weight:800;
}
.timeline-inline-edit-toggle:hover,
.timeline-edit-open .timeline-inline-edit-toggle{
    background:#e8f8fa;
    border-color:#6fc6d2;
    color:#067f90;
    box-shadow:0 2px 6px rgba(16,169,194,.15);
}
.timeline-edit-open .timeline-inline-edit-toggle{transform:rotate(45deg)}

/* Keep the task editor inside the visible browser area even though the Gantt is
   intentionally wider and horizontally scrollable. */
.timeline-inline-editor{
    position:sticky;
    left:0;
    z-index:24;
    box-sizing:border-box;
    width:min(1180px,calc(100vw - 56px));
    max-width:calc(100vw - 56px);
    min-width:0;
    padding:0 14px 16px;
    background:linear-gradient(90deg,#f8fcfd 0,#fff 100%);
}
.timeline-inline-edit-form{width:100%;box-sizing:border-box}
.timeline-inline-fields{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:14px 16px;
    padding:16px;
}
.timeline-inline-fields input,
.timeline-inline-fields select{min-width:0}
.timeline-inline-note{grid-column:auto}
.timeline-inline-actions{
    flex-wrap:wrap;
    gap:14px;
}
.timeline-inline-actions>div{
    flex:0 0 auto;
    margin-left:auto;
}
.timeline-inline-actions .btn{white-space:nowrap}

@media(max-width:900px){
    .timeline-inline-editor{width:calc(100vw - 32px);max-width:calc(100vw - 32px);padding-left:8px;padding-right:8px}
    .timeline-inline-fields{grid-template-columns:1fr}
    .timeline-inline-note{grid-column:1}
    .timeline-inline-actions{align-items:stretch;flex-direction:column}
    .timeline-inline-actions>div{width:100%;margin-left:0;justify-content:flex-end;flex-wrap:wrap}
}


/* =========================================================
   V1.9.73 Timeline State + Drawer Polish
   ========================================================= */
/* The actual changed task remains warm/attention-oriented. Downstream tasks
   that moved automatically use a quieter cool state so they do not look
   manually edited. */
.timeline-adjusted-row .timeline-task-cell{
    background:linear-gradient(90deg,#fff7e8 0,#fff 58%)!important;
    box-shadow:inset 4px 0 0 #e5a62f!important;
}
.timeline-shifted-row .timeline-task-cell{
    background:linear-gradient(90deg,#f3f7fb 0,#fff 58%)!important;
    box-shadow:inset 4px 0 0 #8faecb!important;
}
.timeline-shifted-row .timeline-inline-responsibility.customer{
    background:#fff7ea;
}
.timeline-shifted-badge{
    background:#eaf2fa!important;
    border:1px solid #bfd2e5!important;
    color:#3f6689!important;
}

/* Expanded task editing is intentionally dark so it reads as an active
   workspace rather than another Timeline row. Inputs remain light for fast
   scanning and comfortable data entry. */
.timeline-inline-edit-form{
    border-color:#19385a;
    border-left-color:#12b3c9;
    background:#092f45;
    box-shadow:0 10px 26px rgba(5,35,53,.18);
}
.timeline-inline-editor-head{
    border-bottom-color:rgba(255,255,255,.12);
    background:linear-gradient(100deg,#082f46 0,#123b59 100%);
}
.timeline-inline-editor-head strong{color:#fff}
.timeline-inline-editor-head small{color:#c3d9e3}
.timeline-inline-close{
    border-color:rgba(255,255,255,.25);
    background:rgba(255,255,255,.08);
    color:#fff;
}
.timeline-inline-close:hover{background:rgba(255,255,255,.16);color:#fff}
.timeline-inline-fields{background:#0b344c}
.timeline-inline-fields label>span,
.timeline-inline-locked>span{color:#a9cad7}
.timeline-inline-locked{
    border-color:#2d5870;
    background:#123d55;
}
.timeline-inline-locked strong{color:#fff}
.timeline-inline-locked small{color:#aac5d1}
.timeline-inline-actions{
    border-top-color:rgba(255,255,255,.12);
    background:#082f46;
}
.timeline-inline-cascade{color:#d9e9ef}
.timeline-inline-cascade strong{color:#fff}
.timeline-inline-cascade small{color:#aac5d1}
.timeline-inline-actions .btn.light{
    border-color:rgba(255,255,255,.22);
    background:rgba(255,255,255,.1);
    color:#fff;
}
.timeline-inline-actions .btn.light:hover{background:rgba(255,255,255,.17)}

/* Today is identified by the date-scale marker. The production line belongs
   only in task tracks, never in the dark month/year header. */
.timeline-month-scale .timeline-today-line,
.timeline-scale-wrap>.timeline-today-line{display:none!important}
.timeline-today-date-marker{
    width:22px;
    border-bottom-width:4px;
}
.timeline-today-date-marker:after{
    top:4px;
    border-left-width:6px;
    border-right-width:6px;
    border-top-width:7px;
}

/* =========================================================
   V1.9.74 Timeline Today Marker + Shifted Spacing Polish
   ========================================================= */
/* Keep the Today cue completely below the weekly date labels. A short stem and
   arrow share the exact percentage coordinate used by the production line. */
.timeline-scale{overflow:visible}
.timeline-today-date-marker{
    bottom:-10px!important;
    width:2px!important;
    height:10px!important;
    transform:translateX(-1px)!important;
    border:0!important;
    background:#ec6f46!important;
    z-index:30!important;
}
.timeline-today-date-marker:after{
    left:50%!important;
    top:9px!important;
    transform:translateX(-50%)!important;
    border-left:6px solid transparent!important;
    border-right:6px solid transparent!important;
    border-top:7px solid #ec6f46!important;
}
/* Let task title, automatic shift state, and metadata read as three distinct
   lines instead of visually crowding the task title. */
.timeline-shifted-badge{
    margin-left:0!important;
    margin-top:6px!important;
    margin-bottom:1px!important;
}

/* =========================================================
   V1.9.75 Timeline Today Marker Position Fix
   ========================================================= */
/* The marker belongs below the weekly date cell, not inside it. Anchor the
   triangle to the bottom edge of the entire weekly scale so the date remains
   completely unobstructed. Its center uses the same left percentage as the
   vertical Today line. */
.timeline-today-date-marker{
    top:100%!important;
    bottom:auto!important;
    width:0!important;
    height:0!important;
    transform:translateX(-50%)!important;
    border:0!important;
    background:transparent!important;
    z-index:30!important;
}
.timeline-today-date-marker:after{
    content:""!important;
    position:absolute!important;
    left:0!important;
    top:1px!important;
    transform:translateX(-50%)!important;
    width:0!important;
    height:0!important;
    border-left:6px solid transparent!important;
    border-right:6px solid transparent!important;
    border-top:7px solid #ec6f46!important;
}

/* V1.9.76 - Jamie Discovery workflow and intelligence polish */
.new-estimate-start{max-width:1060px;margin:38px auto 70px}.new-estimate-start>h1{margin:8px 0 8px}.new-estimate-start-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}.new-estimate-path{position:relative;display:block;padding:28px;border:1px solid #c9dce5;border-radius:18px;background:#fff;color:#082c42;text-decoration:none;box-shadow:0 12px 30px rgba(8,44,66,.07)}.new-estimate-path:hover{border-color:#19a9c2;transform:translateY(-1px)}.new-estimate-path.recommended{border:2px solid #19a9c2;background:linear-gradient(145deg,#f8feff,#eef9fb)}.new-estimate-path h2{margin:12px 0 8px}.new-estimate-path p{min-height:72px;color:#587080;line-height:1.55}.new-estimate-path strong{color:#008fa9}.path-badge{position:absolute;right:20px;top:20px;padding:6px 10px;border-radius:999px;background:#dff6f8;color:#087f8d;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.path-icon .app-icon{width:26px;height:26px;color:#08a5bd}.discovery-sidebar-save-state.is-saving b{color:#587080}.discovery-sidebar-save-state.is-error b{color:#a74435}.wi-field-empty{margin:8px 0 0;padding:11px 12px;border-radius:10px;background:#f5f8fa;color:#526b79}.wi-field-empty strong{color:#173b4e}.wi-field-actions .use-detected-btn{font-weight:800}
@media(max-width:800px){.new-estimate-start-grid{grid-template-columns:1fr}.new-estimate-path p{min-height:0}}
\n\n/* V1.9.84 Discovery UI consistency pass */\n.discovery-section-navigation .discovery-continue-btn{\n  min-width:210px;justify-content:space-between;gap:16px;padding:10px 14px 10px 16px!important;\n  border-color:#168b66!important;background:#168b66!important;color:#fff!important;box-shadow:0 7px 16px rgba(22,139,102,.16);\n}\n.discovery-section-navigation .discovery-continue-btn:hover{background:#117656!important;border-color:#117656!important;transform:translateY(-1px)}\n.discovery-continue-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;text-align:left}\n.discovery-continue-copy strong{font-size:14px;font-weight:900;color:#fff}\n.discovery-continue-copy small{margin-top:3px;font-size:12px;font-weight:700;color:rgba(255,255,255,.82);text-transform:none;letter-spacing:0}\n.discovery-continue-arrow{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:999px;background:rgba(255,255,255,.15);font-size:18px;font-weight:900;line-height:1}\n@media(max-width:700px){.discovery-section-navigation .discovery-continue-btn{min-width:0}.discovery-continue-copy{flex:1}}\n
/* V1.9.85 Discovery Overview + navigation clarity */
.discovery-close-sections.active{background:#e8f8fa!important;border-color:#69c9d5!important;color:#087f8d!important;box-shadow:inset 3px 0 0 #12a9bd}
.discovery-overview-analysis{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin:18px 0 20px;padding:20px;border:1px solid #cfe1e6;border-radius:14px;background:linear-gradient(135deg,#f7fcfd 0%,#fff 72%)}
.discovery-overview-analysis.is-pending{border-left:4px solid #12a9bd}.discovery-overview-analysis.is-complete{border-left:4px solid #2b9a6f}
.discovery-overview-analysis-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#e1f6f8;color:#078da2}.discovery-overview-analysis.is-complete .discovery-overview-analysis-icon{background:#e2f4e9;color:#247e5d}.discovery-overview-analysis-icon .app-icon{width:22px;height:22px}
.discovery-overview-analysis-copy h3{margin:3px 0 5px;color:#0b2d45;font-size:18px}.discovery-overview-analysis-copy p{margin:0;max-width:720px;color:#526b7b;line-height:1.5}
.discovery-overview-analysis-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.discovery-overview-analysis-actions .btn{white-space:nowrap}
.discovery-overview-analysis-stats{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}.discovery-overview-analysis-stats span{color:#5a7180;font-size:12px;font-weight:700}.discovery-overview-analysis-stats b{color:#0b2d45;font-size:14px}
.workspace-overview-primary{margin:14px 0 4px}.discovery-overview-continue{display:inline-flex;align-items:center;gap:9px;background:#168b66!important;border-color:#168b66!important;color:#fff!important}.discovery-overview-continue:hover{background:#117656!important;border-color:#117656!important}.discovery-overview-continue .app-icon{width:17px;height:17px}
.discovery-section-navigation .discovery-continue-btn{min-width:0!important;gap:10px!important;padding:11px 15px!important}
.discovery-continue-copy{display:inline!important;font-size:14px!important;font-weight:850!important;line-height:1.2!important;white-space:nowrap;color:#fff!important}
.discovery-continue-arrow{width:auto!important;height:auto!important;background:transparent!important;font-size:18px!important}
@media(max-width:800px){.discovery-overview-analysis{grid-template-columns:auto 1fr}.discovery-overview-analysis-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:700px){.discovery-overview-analysis{grid-template-columns:1fr}.discovery-overview-analysis-icon{width:40px;height:40px}.discovery-overview-analysis-actions .btn,.workspace-overview-primary .btn{width:100%;justify-content:center}.discovery-continue-copy{white-space:normal}}

/* V1.9.86 Discovery Overview action hierarchy */
.discovery-overview-analysis{
  position:relative;
  margin:22px 0 22px;
  padding:24px 22px;
  border:2px solid #9edce3;
  border-left:6px solid #12a9bd;
  background:linear-gradient(135deg,#eefbfd 0%,#f8feff 48%,#fff 100%);
  box-shadow:0 10px 24px rgba(7,73,94,.09);
}
.discovery-overview-analysis.is-pending{
  border-color:#62cbd7;
  border-left-color:#079db3;
  background:linear-gradient(135deg,#e5f9fc 0%,#f6fdfe 58%,#fff 100%);
  box-shadow:0 12px 28px rgba(7,137,158,.14);
}
.discovery-overview-analysis.is-complete{
  border-color:#a9ddc8;
  border-left-color:#23936a;
  background:linear-gradient(135deg,#eefaf4 0%,#fbfefd 60%,#fff 100%);
}
.discovery-overview-analysis-copy .eyebrow{font-weight:900;letter-spacing:.12em}
.discovery-overview-analysis-copy h3{font-size:20px;font-weight:900}
.discovery-overview-analysis.is-pending .discovery-overview-analysis-actions .btn{background:#079db3!important;border-color:#079db3!important;color:#fff!important;box-shadow:0 7px 16px rgba(7,157,179,.18)}
.discovery-overview-analysis.is-pending .discovery-overview-analysis-actions .btn:hover{background:#07899c!important;border-color:#07899c!important}
.workspace-overview-next-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}
.workspace-overview-next-head>div:first-child{min-width:0}
.workspace-overview-next-head strong{margin-bottom:0!important}
.workspace-overview-primary{margin:0;flex:0 0 auto}
.discovery-overview-continue{min-height:42px;padding:10px 16px!important;box-shadow:0 7px 16px rgba(22,139,102,.16)}
.discovery-section-navigation .discovery-section-next.discovery-continue-btn,
.discovery-section-navigation button.discovery-section-next.discovery-continue-btn{
  background:#168b66!important;
  border-color:#168b66!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(22,139,102,.16)!important;
}
.discovery-section-navigation .discovery-section-next.discovery-continue-btn:hover,
.discovery-section-navigation button.discovery-section-next.discovery-continue-btn:hover{
  background:#117656!important;
  border-color:#117656!important;
}
@media(max-width:700px){.workspace-overview-next-head{flex-direction:column}.workspace-overview-primary{width:100%}}


/* Discovery Content Responsibility + Creative Package V1.9.87 */
.content-responsibility-guide{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:13px 14px;
  border:1px solid #c9e5e7;
  border-left:4px solid #16a9b8;
  border-radius:10px;
  background:linear-gradient(135deg,#eefafa 0%,#f8fcfd 68%,#f5f4ff 100%);
  margin-bottom:10px;
}
.content-responsibility-guide>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.content-responsibility-guide span{font-size:12px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;color:#0d8995}
.content-responsibility-guide strong{font-size:15px;color:#0b2f46}
.content-responsibility-guide small{font-size:12px;line-height:1.45;color:#5b7280;max-width:760px}
.content-responsibility-guide em{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#ddf6ef;color:#197255;font-size:12px;font-style:normal;font-weight:950;letter-spacing:.05em;text-transform:uppercase}
.content-responsibility-synced-inputs{display:none!important}
.content-responsibility-state{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:3px 8px;border:1px solid #d6e3e6;border-radius:999px;background:#f7fafb;color:#6a7d87;font-size:12px;font-weight:900;white-space:nowrap}
.content-responsibility-state.is-active{border-color:#b8e5d3;background:#eaf9f2;color:#157456}
.discovery-section-creative [data-discovery-field="content_customer_pages"],
.discovery-section-creative [data-discovery-field="content_extract_pages"],
.discovery-section-creative [data-discovery-field="content_new_pages"]{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.discovery-section-creative .is-content-responsibility-active{border-color:#8fd7c1!important;border-top-color:#24b47e!important;background:linear-gradient(180deg,#fff 0%,#f2fbf7 100%)!important;box-shadow:0 0 0 2px rgba(36,180,126,.06)}
.creative-package-includes{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:0 0 12px;border:1px solid #bfe4df;border-left:4px solid #24b47e;border-radius:10px;background:linear-gradient(100deg,#eefaf5,#f8fcfb)}
.creative-package-includes>span{flex:0 0 auto;padding:5px 8px;border-radius:6px;background:#dff5eb;color:#137152;font-size:12px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.creative-package-includes>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.creative-package-includes strong{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid #d0e7e1;border-radius:7px;background:#fff;color:#18384a;font-size:12px;font-weight:850}
@media(max-width:760px){
  .content-responsibility-guide{align-items:flex-start;flex-direction:column}
  .creative-package-includes{align-items:flex-start;flex-direction:column}
}

/* v1.9.88 - collaborative content clarification */
.discovery-section-creative [data-discovery-field="content_collaboration"]{grid-column:1/-1;border-top-color:#24b47e;background:linear-gradient(135deg,#f8fffc 0%,#f7fbff 100%)}
.content-collaboration-explainer{margin-bottom:12px;padding:14px 16px;border:1px solid #cfe6df;border-left:4px solid #24b47e;border-radius:10px;background:#fff;display:flex;flex-direction:column;gap:5px}
.content-collaboration-explainer>span{font-size:12px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;color:#0d8995}
.content-collaboration-explainer>strong{font-size:16px;line-height:1.3;color:#0b2f46}
.content-collaboration-explainer>p{margin:0;font-size:13px;line-height:1.5;color:#506b79;max-width:900px}
.content-collaboration-explainer>div{margin-top:5px;padding-top:9px;border-top:1px solid #e1ece9;font-size:12px;line-height:1.5;color:#5b7280}
.discovery-section-creative [data-discovery-field="content_collaboration"] .discovery-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:720px}
@media(max-width:700px){.discovery-section-creative [data-discovery-field="content_collaboration"] .discovery-choice-grid{grid-template-columns:1fr}}

/* v1.9.89 Timelines dashboard */
.timeline-dashboard-title{align-items:center}
.timeline-dashboard-today{min-width:170px;padding:14px 18px;border:1px solid #cfe1e5;border-radius:14px;background:#f7fbfb;text-align:right;display:grid;gap:2px}
.timeline-dashboard-today span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#66808a}.timeline-dashboard-today strong{font-size:18px;color:var(--navy)}
.timeline-dashboard-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 18px}.timeline-dashboard-stats>div{padding:16px 18px;border:1px solid #dce7ea;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(13,45,61,.04)}.timeline-dashboard-stats span{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#71868e}.timeline-dashboard-stats strong{display:block;margin-top:4px;font-size:25px;color:var(--navy)}
.timeline-dashboard-tools{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:22px}.timeline-dashboard-search{display:flex;gap:8px;align-items:center;min-width:360px}.timeline-dashboard-search .search-field{position:relative;flex:1}.timeline-dashboard-search .search-field .app-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:#69818a}.timeline-dashboard-search input{padding-left:38px;margin:0}
.timeline-dashboard-filters{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.timeline-dashboard-filters a{display:flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #d9e5e8;border-radius:999px;background:#fff;color:#526c76;font-size:13px;font-weight:800;text-decoration:none}.timeline-dashboard-filters a span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#edf4f5;font-size:11px}.timeline-dashboard-filters a.active{background:var(--navy);border-color:var(--navy);color:#fff}.timeline-dashboard-filters a.active span{background:rgba(255,255,255,.16);color:#fff}
.timeline-dashboard-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:14px}.timeline-dashboard-section-head h2{margin:2px 0 3px}.timeline-dashboard-section-head p{margin:0;color:#6a7e86}.timeline-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.timeline-project-card{margin:0!important;padding:20px!important;display:flex;flex-direction:column;gap:16px}.timeline-project-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.timeline-project-card h3{margin:7px 0 2px;font-size:20px;color:var(--navy)}.timeline-project-card small{color:#71858d;font-weight:700}.timeline-project-state,.timeline-workflow-mini{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.timeline-project-state.active{background:#e8f7ef;color:#23734d}.timeline-project-state.upcoming{background:#e9f3fb;color:#286b91}.timeline-project-state.past{background:#f2f3f4;color:#65747a}.timeline-project-state.ready{background:#fff3d9;color:#8a6418}.timeline-workflow-mini{background:#eef4f5;color:#526c76;white-space:nowrap}.timeline-project-dates,.timeline-project-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px}.timeline-project-dates>div,.timeline-project-card-meta>div{padding:11px 12px;border-radius:10px;background:#f7fafb}.timeline-project-dates span,.timeline-project-card-meta span{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#778a91;margin-bottom:3px}.timeline-project-dates strong,.timeline-project-card-meta strong{font-size:13px;color:var(--navy)}.timeline-project-open{margin-top:auto;justify-content:center}.timeline-dashboard-empty{display:grid;gap:4px;padding:26px!important;text-align:center}.timeline-dashboard-empty strong{color:var(--navy);font-size:17px}.timeline-dashboard-empty span{color:#71858d}
@media(max-width:1100px){.timeline-dashboard-stats{grid-template-columns:repeat(3,1fr)}.timeline-project-grid{grid-template-columns:repeat(2,1fr)}.timeline-dashboard-tools{align-items:stretch;flex-direction:column}.timeline-dashboard-filters{justify-content:flex-start}}
@media(max-width:700px){.timeline-dashboard-title{align-items:flex-start}.timeline-dashboard-today{width:100%;text-align:left}.timeline-dashboard-stats{grid-template-columns:1fr 1fr}.timeline-project-grid{grid-template-columns:1fr}.timeline-dashboard-search{min-width:0;flex-wrap:wrap}.timeline-dashboard-search .search-field{flex-basis:100%}.timeline-project-dates,.timeline-project-card-meta{grid-template-columns:1fr}}

/* =========================================================
   V1.9.90 - Timelines dashboard visual parity
   ========================================================= */
.timeline-dashboard-hero{
    align-items:center;
    margin-bottom:24px;
    min-height:220px;
}
.timeline-dashboard-hero>div:first-child{max-width:800px;}
.timeline-dashboard-hero h1{font-size:clamp(40px,4.4vw,60px);}
.timeline-dashboard-hero .timeline-dashboard-today{
    position:relative;
    z-index:2;
    min-width:220px;
    padding:18px 20px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:18px;
    background:rgba(255,255,255,.10);
    box-shadow:0 14px 32px rgba(0,0,0,.12);
    backdrop-filter:blur(8px);
    text-align:left;
}
.timeline-dashboard-hero .timeline-dashboard-today span{
    color:#9edce5;
    font-size:11px;
    font-weight:950;
    letter-spacing:.12em;
}
.timeline-dashboard-hero .timeline-dashboard-today strong{
    margin-top:5px;
    color:#fff;
    font-size:24px;
    letter-spacing:-.02em;
}
.timeline-dashboard-hero .timeline-dashboard-today small{
    display:block;
    margin-top:5px;
    color:#c9d9e2;
    font-size:12px;
    font-weight:700;
}
.timeline-dashboard-stats{
    gap:16px;
    margin:0 0 24px;
}
.timeline-dashboard-stats>div{
    position:relative;
    min-height:128px;
    padding:21px 20px 24px;
    border:1px solid rgba(10,77,99,.12);
    border-radius:17px;
    box-shadow:0 14px 32px rgba(7,42,62,.075);
    overflow:hidden;
    transition:transform .18s ease,box-shadow .18s ease;
}
.timeline-dashboard-stats>div:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(7,42,62,.11);}
.timeline-dashboard-stats>div:after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--cyan);}
.timeline-dashboard-stats>div:nth-child(1){background:linear-gradient(145deg,#fff 0%,#edf9fb 100%);}
.timeline-dashboard-stats>div:nth-child(2){background:linear-gradient(145deg,#fff 0%,#edf9f2 100%);}
.timeline-dashboard-stats>div:nth-child(2):after{background:#25ae73;}
.timeline-dashboard-stats>div:nth-child(3){background:linear-gradient(145deg,#fff 0%,#eef4ff 100%);}
.timeline-dashboard-stats>div:nth-child(3):after{background:#5d75ef;}
.timeline-dashboard-stats>div:nth-child(4){background:linear-gradient(145deg,#fff 0%,#f4f6f7 100%);}
.timeline-dashboard-stats>div:nth-child(4):after{background:#8da0aa;}
.timeline-dashboard-stats>div:nth-child(5){background:linear-gradient(145deg,#fff 0%,#fff7e8 100%);}
.timeline-dashboard-stats>div:nth-child(5):after{background:#e2a42d;}
.timeline-dashboard-stats span{color:#4f6979;font-size:12px;font-weight:900;letter-spacing:.09em;}
.timeline-dashboard-stats strong{margin-top:7px;font-size:31px;letter-spacing:-.035em;}
.timeline-dashboard-stats small{display:block;margin-top:7px;color:#66798a;font-size:12px;font-weight:700;}
.timeline-dashboard-controls{
    grid-template-columns:auto minmax(360px,1fr);
    margin-bottom:28px;
}
.timeline-dashboard-controls>div:first-child p{margin:5px 0 0;color:#65798a;font-size:13px;}
.timeline-dashboard-controls .timeline-dashboard-search{justify-self:end;width:min(100%,520px);min-width:0;}
.timeline-dashboard-controls .timeline-dashboard-filters{grid-column:1/-1;justify-content:flex-start;}
.timeline-dashboard-filters a{
    min-height:38px;
    padding:0 14px;
    border:1px solid #cbdde2;
    background:#f7fbfc;
    color:#4c6576;
    font-size:12px;
}
.timeline-dashboard-filters a:hover{border-color:#69bdca;color:var(--navy);}
.timeline-dashboard-filters a.active{box-shadow:0 5px 14px rgba(9,47,67,.15);}
.timeline-dashboard-section{margin-top:4px;}
.timeline-dashboard-section-head{
    margin:0 4px 14px;
    padding-bottom:12px;
    border-bottom:1px solid #dce8eb;
}
.timeline-dashboard-section-head h2{font-size:25px;letter-spacing:-.015em;color:var(--navy);}
.timeline-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.timeline-project-card{
    position:relative;
    overflow:hidden;
    gap:15px;
    padding:22px!important;
    border-color:#d4e5e9!important;
    border-radius:18px!important;
    background:linear-gradient(145deg,#fff 0%,#fbfdfe 100%);
    box-shadow:0 12px 28px rgba(10,48,66,.065)!important;
    transition:transform .18s ease,box-shadow .18s ease;
}
.timeline-project-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:#25ae73;}
.timeline-project-card.ready:before{background:#e2a42d;}
.timeline-project-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(10,48,66,.10)!important;}
.timeline-project-card-head{padding-top:3px;}
.timeline-project-card h3{margin:9px 0 3px;font-size:23px;letter-spacing:-.02em;}
.timeline-project-card small{font-size:12px;font-weight:850;color:#6b8190;}
.timeline-project-dates>div,.timeline-project-card-meta>div{
    padding:13px 14px;
    border:1px solid #e0eaed;
    border-radius:12px;
    background:#f5fafb;
}
.timeline-project-dates span,.timeline-project-card-meta span{font-size:10px;letter-spacing:.075em;}
.timeline-project-dates strong,.timeline-project-card-meta strong{font-size:14px;}
.timeline-project-open{
    min-height:44px;
    border-color:transparent!important;
    background:linear-gradient(135deg,#0a334b 0%,#0d6070 100%)!important;
    color:#fff!important;
    box-shadow:0 8px 18px rgba(8,48,67,.14);
}
.timeline-project-open:hover{background:linear-gradient(135deg,#082c41 0%,#0a5260 100%)!important;}
.timeline-project-card.ready .timeline-project-open{background:linear-gradient(135deg,#b97610 0%,#d79524 100%)!important;}
.timeline-dashboard-empty{border-radius:18px!important;border:1px solid #d4e5e9!important;box-shadow:0 10px 26px rgba(10,48,66,.055);}
@media(max-width:900px){
    .timeline-dashboard-controls{grid-template-columns:1fr;}
    .timeline-dashboard-controls .timeline-dashboard-search{justify-self:stretch;width:100%;}
    .timeline-dashboard-controls .timeline-dashboard-filters{grid-column:1;}
    .timeline-project-grid{grid-template-columns:1fr;}
}

/* V1.9.91 - Timelines dashboard control parity */
.timeline-dashboard-controls .timeline-dashboard-search.estimate-search-wrap{
    justify-self:end;
    width:min(100%,460px);
    margin:0;
}
.timeline-dashboard-controls .timeline-dashboard-search.estimate-search-wrap input[type="search"]{
    width:100%;
    min-height:46px;
    margin:0;
}
.timeline-dashboard-controls .timeline-page-size{
    grid-column:1/-1;
}
.timeline-estimate-pill{
    margin-top:5px;
    margin-bottom:0!important;
    width:max-content;
    line-height:1.2!important;
}
.timeline-load-more-wrap{
    margin:18px 0 32px;
}
@media(max-width:900px){
    .timeline-dashboard-controls .timeline-dashboard-search.estimate-search-wrap{justify-self:stretch;width:100%;}
}

/* =========================================================
   V1.9.92 Timeline UX + Deadline Integrity
   ========================================================= */
.timeline-title-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.timeline-view-estimate-link{color:#496875;font-size:13px;font-weight:850;text-decoration:none}
.timeline-view-estimate-link:hover{color:var(--navy);text-decoration:underline}
.timeline-summary-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.timeline-launch-summary{position:relative}
.timeline-launch-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:5px}
.timeline-launch-dates>div{display:grid;gap:1px}
.timeline-launch-dates small{margin:0!important;color:#6b8088!important;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.timeline-launch-dates strong{margin:0!important}
.timeline-launch-variance{margin-top:7px!important;font-size:11px;font-weight:850}
.timeline-launch-summary.timeline-risk{box-shadow:inset 0 -4px 0 #ef9d43}
.timeline-launch-summary.timeline-cushion{background:#f5fbf7!important;box-shadow:inset 0 -4px 0 #39ad72}
.timeline-launch-summary.timeline-cushion .timeline-launch-variance{color:#28763a}
.timeline-launch-summary.timeline-aligned{background:#f5fbf7!important;box-shadow:inset 0 -4px 0 #39ad72}
.timeline-launch-summary.timeline-aligned .timeline-launch-variance{color:#28763a}
.timeline-client-deadline.due-soon .timeline-client-date{border-color:#efcf91;background:#fff5dc;box-shadow:inset 0 -3px 0 #e7a82c}
.timeline-client-deadline.due-soon .timeline-client-date span,.timeline-client-deadline.due-soon .timeline-client-date strong{color:#9a6114}
.timeline-client-deadline.due-today .timeline-client-date{border-color:#efb377;background:#fff1e5;box-shadow:inset 0 -3px 0 #e98528}
.timeline-client-deadline.due-today .timeline-client-date span,.timeline-client-deadline.due-today .timeline-client-date strong{color:#a45118}
.timeline-client-deadline.past-due .timeline-client-date{border-color:#e9a8a1;background:#fff0ee;box-shadow:inset 0 -3px 0 #d55b4d}
.timeline-client-deadline.past-due .timeline-client-date span,.timeline-client-deadline.past-due .timeline-client-date strong{color:#a33a2f}
.polished-workflow{margin-top:16px}
.timeline-approver-collapsible{min-width:420px!important;padding:0!important;overflow:hidden}
.timeline-approver-collapsible>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;cursor:pointer;list-style:none;background:#f8fbfc}
.timeline-approver-collapsible>summary::-webkit-details-marker{display:none}
.timeline-approver-collapsible>summary>div{display:grid;gap:3px}
.timeline-approver-collapsible>summary small{color:#6b8088;font-size:11px;font-weight:650}
.timeline-approver-collapsible[open]>summary{border-bottom:1px solid #dce8eb}
.timeline-approver-collapsible .timeline-approver-options{padding:12px}
.timeline-approver-collapsible .timeline-approver-submit-row{padding:0 12px 12px}
@media(max-width:900px){.timeline-summary-four{grid-template-columns:1fr 1fr}.timeline-approver-collapsible{min-width:0!important}.timeline-launch-dates{grid-template-columns:1fr}}
@media(max-width:620px){.timeline-summary-four{grid-template-columns:1fr}.timeline-title-actions{justify-content:flex-start}}

/* =========================================================
   V1.9.93 Timeline Working Calendar
   Holidays, BMG days, and schedule-impact visibility
   ========================================================= */
.timeline-calendar-manage-btn{display:inline-flex;align-items:center;gap:7px;text-decoration:none}
.timeline-calendar-manage-btn .app-icon{width:16px;height:16px}
.timeline-calendar-impact{margin:14px 0 18px;padding:0;overflow:hidden;border-top:3px solid #7b61d1}
.timeline-calendar-impact-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:18px 20px 16px;background:linear-gradient(110deg,#fbfaff 0%,#f4fbfc 100%);border-bottom:1px solid #dce8eb}
.timeline-calendar-impact-head h3{margin:4px 0 5px;color:var(--navy);font-size:20px}
.timeline-calendar-impact-head p{margin:0;max-width:720px;line-height:1.45}
.timeline-calendar-impact-stat{min-width:190px;padding:12px 14px;border:1px solid #d8d8ef;border-radius:12px;background:#fff;text-align:center}
.timeline-calendar-impact-stat strong{display:block;color:#5f4bb6;font-size:28px;line-height:1}
.timeline-calendar-impact-stat span{display:block;margin-top:5px;color:#667b85;font-size:12px;font-weight:800}
.timeline-calendar-impact-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 20px}
.timeline-calendar-impact-event{display:flex;align-items:center;gap:12px;min-width:0;padding:11px 12px;border:1px solid #d9e7ea;border-radius:12px;background:#fff}
.timeline-calendar-impact-event.nonworking{border-left:4px solid #7b61d1}
.timeline-calendar-impact-event.display-only{border-left:4px solid #9eb0b8}
.timeline-calendar-impact-date{display:flex;flex:0 0 48px;height:50px;flex-direction:column;align-items:center;justify-content:center;border:1px solid #cbdde2;border-radius:10px;background:#f8fbfc;color:var(--navy);line-height:1}
.timeline-calendar-impact-date span{font-size:11px;font-weight:900;text-transform:uppercase;color:#6b818a}
.timeline-calendar-impact-date strong{margin-top:2px;font-size:20px}
.timeline-calendar-impact-event>div:last-child{min-width:0}
.timeline-calendar-impact-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.timeline-calendar-impact-title>strong{color:var(--navy);font-size:13px}
.timeline-calendar-impact-event small{display:block;margin-top:5px;color:#687e87;font-size:12px;font-weight:700}
.timeline-calendar-type-pill,.timeline-calendar-off-pill,.timeline-calendar-display-pill{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.035em}
.timeline-calendar-type-pill{background:#efeaff;color:#5d4aad}
.timeline-calendar-type-pill.holiday{background:#fff0dc;color:#a85d16}
.timeline-calendar-type-pill.bmg_event{background:#e8f7fa;color:#087e91}
.timeline-calendar-type-pill.office_closure{background:#ffe8e5;color:#a64035}
.timeline-calendar-off-pill{background:#eee9fb;color:#5f4bb6}
.timeline-calendar-display-pill{background:#edf2f4;color:#667b85}
.timeline-calendar-impact-empty{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 20px;color:#667b85}
.timeline-calendar-impact-empty strong{color:var(--navy)}
.timeline-calendar-impact-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 20px;border-top:1px solid #e1eaed;background:#f8fbfc;font-size:12px;font-weight:800;color:#5d747e}
.timeline-calendar-impact-foot>span,.timeline-calendar-impact-foot>a{display:inline-flex;align-items:center;gap:7px}
.timeline-calendar-impact-foot .app-icon{width:15px;height:15px}
.timeline-calendar-impact-foot>a{color:#087f91;text-decoration:none}
.timeline-calendar-impact-foot>a:hover{text-decoration:underline}
.timeline-calendar-key i{background:#7b61d1!important}
@media(max-width:800px){.timeline-calendar-impact-head{flex-direction:column}.timeline-calendar-impact-stat{width:100%}.timeline-calendar-impact-events{grid-template-columns:1fr}.timeline-calendar-impact-foot{align-items:flex-start;flex-direction:column}}

/* =========================================================
   V1.9.94 Working Calendar Visual Integration
   ========================================================= */
/* Date-range entry: Event Type gets its own row, then Start/End align evenly. */
.calendar-form-fields.range-mode .calendar-event-type-field{grid-column:1/-1}
.calendar-form-fields.range-mode .calendar-range-date-field{grid-column:auto}
.calendar-event-date strong,
.timeline-calendar-impact-date strong{color:var(--cyan-dark)}

/* Calendar bands sit behind schedule bars and week lines. Non-working dates
   are intentionally visible; display-only dates remain much more subtle. */
.timeline-calendar-shade{
    position:absolute;
    top:0;
    bottom:0;
    z-index:1;
    min-width:2px;
    pointer-events:none;
    background:rgba(18,169,195,.09);
    border-left:1px solid rgba(7,133,155,.18);
    border-right:1px solid rgba(7,133,155,.12);
}
.timeline-calendar-shade.holiday{background:rgba(127,151,163,.11);border-color:rgba(106,132,145,.18)}
.timeline-calendar-shade.bmg_event{background:rgba(18,169,195,.12);border-color:rgba(7,133,155,.22)}
.timeline-calendar-shade.office_closure{background:rgba(239,108,53,.09);border-color:rgba(196,82,42,.18)}
.timeline-calendar-shade.display-only{opacity:.42;background:rgba(135,155,165,.07);border-left-style:dashed;border-right-style:dashed}
.timeline-weekline{z-index:2}
.timeline-bar,.timeline-milestone{z-index:3}
.timeline-today-line{z-index:8!important}

/* Small calendar flags identify event positions without covering weekly dates.
   Full names remain available in the Working Calendar panel and via hover. */
.timeline-calendar-scale-marker{
    position:absolute!important;
    top:100%!important;
    width:0!important;
    height:0!important;
    transform:translateX(-50%)!important;
    z-index:24!important;
    pointer-events:auto;
}
.timeline-calendar-scale-marker i{
    position:absolute;
    left:0;
    top:11px;
    width:7px;
    height:7px;
    transform:translate(-50%,-50%) rotate(45deg);
    border:1px solid rgba(7,133,155,.38);
    border-radius:1px;
    background:#9fdce5;
    box-shadow:0 0 0 2px rgba(255,255,255,.88);
}
.timeline-calendar-scale-marker.holiday i{border-color:#879aa3;background:#dce5e8}
.timeline-calendar-scale-marker.office_closure i{border-color:#d57a56;background:#f5c1ad}
.timeline-calendar-scale-marker.display-only i{opacity:.5}

@media(max-width:600px){
    .calendar-form-fields.range-mode .calendar-event-type-field,
    .calendar-form-fields.range-mode .calendar-range-date-field{grid-column:auto}
}

/* =========================================================
   V1.9.95 Working Calendar Editing + Gantt Event Labels
   ========================================================= */
.calendar-event-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.calendar-event-actions form{margin:0}
.calendar-form-actions{gap:8px;align-items:center}

/* Clear category key. Keep task ownership colors distinct from calendar overlays. */
.timeline-calendar-key.holiday i{background:#9aaeb7!important}
.timeline-calendar-key.bmg_event i{background:#16a9bd!important}
.timeline-calendar-key.office_closure i{background:#e58b67!important}
.timeline-calendar-key.other i{background:#7b61d1!important}

/* Give calendar events their own labeled strip directly below the weekly dates.
   Two compact rows allow overlapping events to remain legible. */
.timeline-scale.has-calendar-events{height:104px}
.timeline-scale.has-calendar-events .timeline-today-date-marker{top:51px!important;bottom:auto!important}
.timeline-calendar-scale-event{
    position:absolute!important;
    top:calc(63px + (var(--calendar-row,0) * 21px));
    z-index:25;
    display:flex;
    align-items:center;
    min-width:72px;
    height:18px;
    padding:0 6px;
    overflow:visible;
    border:1px solid rgba(7,133,155,.28);
    border-radius:5px;
    background:#dff5f8;
    color:#086f80;
    box-sizing:border-box;
    pointer-events:auto;
    white-space:nowrap;
}
.timeline-calendar-scale-event>span{
    display:block;
    max-width:150px;
    overflow:hidden;
    text-overflow:ellipsis;
    font-size:10px;
    font-weight:900;
    line-height:1;
    letter-spacing:.015em;
}
.timeline-calendar-scale-event.holiday{border-color:#c3d0d5;background:#eef3f5;color:#5d737d}
.timeline-calendar-scale-event.bmg_event{border-color:#84ced9;background:#e3f7f9;color:#08798a}
.timeline-calendar-scale-event.office_closure{border-color:#e7b59f;background:#fff0e9;color:#a75433}
.timeline-calendar-scale-event.other{border-color:#c8bee9;background:#f2eefb;color:#5e4ba6}
.timeline-calendar-scale-event.display-only{opacity:.62;border-style:dashed}

@media(max-width:600px){
    .calendar-event-actions{grid-column:2;justify-content:flex-start}
    .timeline-calendar-scale-event>span{max-width:95px}
}


/* =========================================================
   V1.9.96 Working Calendar Gantt Clarity
   Separate calendar events from the weekly date scale
   ========================================================= */
/* Undo the V1.9.95 date-scale expansion. Calendar events now have a dedicated
   strip above the scale, keeping week labels and the Today marker uncluttered. */
.timeline-scale.has-calendar-events{height:auto}
.timeline-scale.has-calendar-events .timeline-today-date-marker{top:auto!important;bottom:0!important}
.timeline-calendar-scale-event{display:none!important}

.timeline-calendar-event-strip{
    position:relative;
    display:grid;
    grid-template-columns:116px minmax(0,1fr);
    align-items:stretch;
    min-height:48px;
    border:1px solid #d8e6e9;
    border-bottom:0;
    background:#f8fbfc;
}
.timeline-calendar-event-strip-label{
    display:flex;
    align-items:center;
    padding:0 10px;
    border-right:1px solid #d8e6e9;
    color:#59727d;
    font-size:10px;
    font-weight:900;
    line-height:1.25;
    letter-spacing:.055em;
    text-transform:uppercase;
}
.timeline-calendar-event-strip-track{
    position:relative;
    min-width:0;
    min-height:48px;
    overflow:hidden;
    background:linear-gradient(180deg,#fbfdfe 0,#f5fafb 100%);
}
.timeline-calendar-strip-event{
    position:absolute;
    top:calc(4px + (var(--calendar-row,0) * 21px));
    z-index:6;
    display:flex;
    align-items:center;
    min-width:20px;
    height:18px;
    padding:0 6px;
    overflow:hidden;
    box-sizing:border-box;
    border:1px solid #84ced9;
    border-radius:5px;
    background:#e3f7f9;
    color:#08798a;
    white-space:nowrap;
    pointer-events:auto;
}
.timeline-calendar-strip-event>span{
    display:block;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    font-size:10px;
    font-weight:900;
    line-height:1;
    letter-spacing:.01em;
}
.timeline-calendar-strip-event.holiday{border-color:#c3d0d5;background:#eef3f5;color:#5d737d}
.timeline-calendar-strip-event.bmg_event{border-color:#84ced9;background:#e3f7f9;color:#08798a}
.timeline-calendar-strip-event.office_closure{border-color:#e7b59f;background:#fff0e9;color:#a75433}
.timeline-calendar-strip-event.other{border-color:#c8bee9;background:#f2eefb;color:#5e4ba6}
.timeline-calendar-strip-event.display-only{opacity:.64;border-style:dashed}

/* Today returns to the weekly scale itself. */
.timeline-today-date-marker{bottom:0!important;top:auto!important}

@media(max-width:700px){
    .timeline-calendar-event-strip{grid-template-columns:92px minmax(0,1fr)}
    .timeline-calendar-event-strip-label{font-size:9px;padding:0 7px}
}


/* =========================================================
   V1.9.98 Working Calendar Strip Tone + Tooltip Fix
   Keeps the calendar band distinct without competing with the month scale,
   and allows full event details to escape clipped marker labels.
   ========================================================= */
.timeline-calendar-event-strip{
    min-height:52px;
    border:1px solid #d8dce3;
    border-bottom:0;
    background:#f5f1fb;
    box-shadow:inset 0 3px 0 #9b8ad0;
}
.timeline-calendar-event-strip-label{
    background:#eef1f3;
    border-right:1px solid #d8dce3;
    color:#52646d;
    letter-spacing:.07em;
}
.timeline-calendar-event-strip-track{
    min-height:52px;
    overflow:visible;
    background:
        linear-gradient(180deg,rgba(126,102,189,.055) 0,rgba(126,102,189,.02) 100%),
        #f6f2fb;
}
.timeline-calendar-strip-event{
    top:calc(5px + (var(--calendar-row,0) * 21px));
    z-index:12;
    cursor:default;
    outline:none;
    overflow:visible;
}
.timeline-calendar-strip-event>span{width:100%;}
.timeline-calendar-strip-event:focus-visible{
    box-shadow:0 0 0 2px #fff,0 0 0 4px #0b8fa3;
}
.timeline-calendar-strip-event::after{
    content:attr(data-tooltip);
    position:absolute;
    left:50%;
    top:calc(100% + 8px);
    z-index:100;
    width:max-content;
    max-width:300px;
    padding:7px 9px;
    border-radius:7px;
    background:#082f45;
    color:#fff;
    font-size:11px;
    font-weight:700;
    line-height:1.35;
    white-space:normal;
    box-shadow:0 8px 20px rgba(4,34,51,.18);
    opacity:0;
    pointer-events:none;
    transform:translate(-50%,-4px);
    transition:opacity .12s ease,transform .12s ease;
}
.timeline-calendar-strip-event::before{
    content:"";
    position:absolute;
    left:50%;
    top:calc(100% + 3px);
    z-index:101;
    border:5px solid transparent;
    border-bottom-color:#082f45;
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%);
    transition:opacity .12s ease;
}
.timeline-calendar-strip-event:hover::after,
.timeline-calendar-strip-event:focus::after,
.timeline-calendar-strip-event:hover::before,
.timeline-calendar-strip-event:focus::before{opacity:1;transform:translate(-50%,0)}
.timeline-calendar-strip-event:hover::before,
.timeline-calendar-strip-event:focus::before{transform:translateX(-50%)}
@media(max-width:700px){
    .timeline-calendar-event-strip{grid-template-columns:92px minmax(0,1fr)}
    .timeline-calendar-event-strip-track{overflow:hidden}
    .timeline-calendar-strip-event::after,.timeline-calendar-strip-event::before{display:none}
}

/* V1.10.00 - Discovery Intelligence Actionability + Web Review Completion Guidance */
.review-integration-item[data-review-attention="1"]{background:linear-gradient(135deg,#fffdf7 0%,#fff9e9 100%);border:1px solid #e7c45c;border-left:5px solid #d79a16;box-shadow:0 10px 24px rgba(94,72,14,.08)}
.review-integration-item[data-review-attention="1"] .integration-resolution{background:#fff;padding:12px;border:1px solid #eadfbf;border-radius:10px;margin-top:12px}
.review-integration-item[data-review-attention="1"] .integration-resolution:before{content:"Decision required before Web Verification";grid-column:1/-1;font-size:12px;font-weight:800;color:#8a5a08;text-transform:uppercase;letter-spacing:.04em}
.review-submit-card:not(.is-complete){border-top-color:#d79a16;background:linear-gradient(135deg,#fffdf8 0%,#fffaf0 100%)}
.web-review-go-remaining{background:#182852!important;color:#fff!important;border-color:#182852!important}
.web-review-go-remaining:hover{background:#233a70!important;border-color:#233a70!important}
.web-review-clarification:not(.has-blockers){background:#fbfcfd;border-style:dashed;box-shadow:none}
.web-review-clarification:not(.has-blockers)>summary h3{font-size:16px}
.web-review-clarification.has-blockers{border-color:#e3a13b;background:#fffaf1}


/* V1.10.01 - Integration scope question clarity */
.integration-scope-question .integration-intelligence-label{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#087d7d;margin-bottom:8px}
.integration-scope-question .integration-scope-title{display:block;font-size:18px;line-height:1.3;color:#102d4a;margin-bottom:6px}
.integration-scope-question .integration-scope-question-copy{font-size:14px;line-height:1.55;color:#314d66;margin:0 0 14px;max-width:760px}
.integration-scope-question .integration-evidence{background:#f3f9fb;border:1px solid #cfe5ea;border-radius:10px;padding:12px 14px;margin:0 0 14px}
.integration-scope-question .integration-evidence>strong{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#087d7d}
.integration-scope-question .integration-evidence p{margin:5px 0 7px;font-size:13px;line-height:1.5;color:#425d72}
.integration-scope-question .integration-evidence small{font-size:12px;color:#647b8c}
.integration-scope-question .integration-requirement-label{display:block;font-size:13px;font-weight:800;color:#17334d;margin:0 0 7px}
.integration-scope-question .integration-resolution{align-items:stretch}
.integration-scope-question .integration-resolution select{min-width:260px}
.integration-scope-question .integration-resolution input{min-width:320px;flex:1}
@media(max-width:760px){.integration-scope-question .integration-resolution{display:grid;grid-template-columns:1fr}.integration-scope-question .integration-resolution select,.integration-scope-question .integration-resolution input{min-width:0;width:100%}}

/* v1.10.02 - Technical integration decision cards */
.review-integration-item.integration-scope-question{width:100%;max-width:none;grid-template-columns:42px minmax(0,1fr);padding:22px 24px;background:#fffdf8;border:1px solid #e8c46b;border-left:4px solid #d99700;border-radius:12px}
.integration-scope-question .integration-review-body{width:100%;max-width:980px}
.integration-scope-question .integration-evidence{max-width:780px;margin-bottom:18px}
.integration-decision-heading{margin:2px 0 10px}
.integration-decision-heading strong{display:block;font-size:15px;color:#17334d;margin-bottom:2px}
.integration-decision-heading span{display:block;font-size:12px;color:#6b7f8f}
.integration-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%}
.integration-choice{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;min-height:112px;padding:15px 14px;border:1px solid #d6e2e7;border-radius:11px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.integration-choice:hover{border-color:#8bcbd3;box-shadow:0 4px 12px rgba(16,45,74,.07)}
.integration-choice input{position:absolute;opacity:0;pointer-events:none}
.integration-choice-dot{width:18px;height:18px;border:2px solid #b9cbd2;border-radius:50%;margin-top:1px;background:#fff;box-shadow:inset 0 0 0 4px #fff}
.integration-choice strong{display:block;font-size:13px;line-height:1.35;color:#17334d;margin-bottom:6px}
.integration-choice small{display:block;font-size:12px;line-height:1.45;color:#617789}
.integration-choice:has(input:checked){border-color:#17a6b2;background:#f1fbfc;box-shadow:0 0 0 2px rgba(23,166,178,.12)}
.integration-choice:has(input:checked) .integration-choice-dot{border-color:#17a6b2;background:#17a6b2}
.integration-choice-unsure:has(input:checked){border-color:#d99700;background:#fff9eb;box-shadow:0 0 0 2px rgba(217,151,0,.12)}
.integration-choice-unsure:has(input:checked) .integration-choice-dot{border-color:#d99700;background:#d99700}
.integration-yes-details{display:none;margin-top:12px;padding:14px 15px;background:#f3fafb;border:1px solid #cce5e8;border-radius:10px}
.integration-choice-grid:has(input[value="production_decision"]:checked)+.integration-yes-details{display:block}
.integration-yes-details label{display:block;margin-bottom:8px}
.integration-yes-details label strong{display:block;font-size:13px;color:#17334d;margin-bottom:2px}
.integration-yes-details label span{display:block;font-size:12px;color:#637b8d}
.integration-yes-details textarea{width:100%;min-height:82px;resize:vertical;border:1px solid #c9dbe1;border-radius:8px;background:#fff;padding:10px 12px;font:inherit;font-size:13px;color:#17334d}
@media(max-width:900px){.integration-choice-grid{grid-template-columns:1fr}.integration-choice{min-height:0}.review-integration-item.integration-scope-question{padding:18px 16px}}

/* v1.10.03 - Technical integration full-width decision layout */
.web-review-integration-section .discovery-review-integrations{grid-template-columns:1fr}
.review-integration-item.integration-scope-question{display:block!important;width:100%;max-width:none;padding:22px 24px!important;background:#fffdf8;border:1px solid #e8c46b;border-left:5px solid #d99700;border-radius:14px}
.integration-question-top{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;align-items:start}
.integration-scope-question .integration-review-body{width:100%;max-width:none}
.integration-scope-question .integration-scope-title{font-size:21px;line-height:1.25;margin-bottom:7px}
.integration-scope-question .integration-scope-question-copy{font-size:14px;line-height:1.55;max-width:860px;margin-bottom:0}
.integration-scope-question .integration-evidence.integration-evidence-horizontal{max-width:none;margin:16px 0 18px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#f3f9fb}
.integration-evidence-horizontal>div{min-width:0}
.integration-evidence-horizontal p{margin:4px 0 0!important}
.integration-evidence-horizontal>small{flex:0 0 auto;white-space:nowrap;padding-left:16px;border-left:1px solid #cfe5ea}
.integration-decision-heading{margin:0 0 10px}
.integration-decision-heading strong{font-size:14px}
.integration-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.integration-choice{min-height:0;padding:16px 16px;grid-template-columns:22px minmax(0,1fr);gap:11px;align-items:start}
.integration-choice strong{font-size:14px;line-height:1.3;margin-bottom:5px}
.integration-choice small{font-size:12px;line-height:1.45}
.integration-choice-dot{width:19px;height:19px}
.integration-yes-details{margin-top:14px;padding:16px 17px}
.integration-yes-details textarea{min-height:96px}
.discovery-handoff-actions:has(.web-review-clarification:not(.has-blockers)){grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr)}
.web-review-clarification:not(.has-blockers){align-self:start;padding:15px 16px!important}
.web-review-clarification:not(.has-blockers)>summary .eyebrow{font-size:11px}
.web-review-clarification:not(.has-blockers)>summary h3{font-size:14px;margin:2px 0}
.web-review-clarification:not(.has-blockers)>summary>span{font-size:11px}
@media(max-width:1000px){.integration-choice-grid{grid-template-columns:1fr}.integration-scope-question .integration-evidence.integration-evidence-horizontal{display:block}.integration-evidence-horizontal>small{display:block;margin-top:8px;padding:8px 0 0;border-left:0;border-top:1px solid #cfe5ea;white-space:normal}.discovery-handoff-actions:has(.web-review-clarification:not(.has-blockers)){grid-template-columns:1fr}}

/* =========================================================
   V1.10.04 - Responsive application header / overflow menu
   Preserve direct access to primary workflow areas while moving
   lower-priority utilities into More before the header can collide.
   ========================================================= */
.top{
    flex-wrap:nowrap!important;
    align-items:center!important;
}
.header-nav{
    min-width:0;
    flex:0 1 auto;
    flex-wrap:nowrap!important;
    justify-content:flex-end;
}
.header-primary-link,.header-admin-link,.header-feedback-primary{flex:0 0 auto}
.header-menu{position:relative;display:none;flex:0 0 auto}
.header-menu summary{list-style:none}
.header-menu summary::-webkit-details-marker{display:none}
.header-menu-toggle{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:40px;
    padding:8px 11px;
    border:1px solid rgba(255,255,255,.26);
    border-radius:10px;
    color:#fff;
    background:rgba(255,255,255,.07);
    font-weight:750;
    cursor:pointer;
    white-space:nowrap;
    user-select:none;
}
.header-menu-toggle:hover,.header-menu-toggle.active,.header-menu[open]>.header-menu-toggle{
    background:rgba(255,255,255,.14);
    border-color:rgba(255,255,255,.42);
}
.header-menu-toggle .app-icon{width:16px;height:16px}
.header-menu-panel{
    position:absolute;
    right:0;
    top:calc(100% + 10px);
    z-index:3100;
    width:230px;
    padding:8px;
    border:1px solid #cfe2e7;
    border-radius:14px;
    background:#fff;
    box-shadow:0 18px 42px rgba(9,43,66,.24);
}
.header-menu-panel a,.header-menu-panel button{
    width:100%;
    display:flex!important;
    align-items:center;
    gap:9px;
    padding:11px 12px!important;
    border:0;
    border-radius:9px!important;
    background:transparent;
    color:#0b2f48!important;
    font:inherit;
    font-size:14px!important;
    font-weight:750!important;
    text-align:left;
    text-decoration:none!important;
    cursor:pointer;
    opacity:1!important;
    white-space:nowrap;
}
.header-menu-panel a:hover,.header-menu-panel button:hover,.header-menu-panel a.active{
    background:#eef8fa!important;
}
.header-menu-panel .app-icon{width:16px;height:16px;flex:0 0 16px}
.header-overflow-new{display:none!important}
.header-mobile-menu{display:none}

/* First compression state: shorten the brand before hiding navigation. */
@media(max-width:1460px){
    .brand-sub{display:none!important}
    .top{gap:12px!important;padding-left:18px!important;padding-right:18px!important}
    .brand img{height:31px!important}
}

/* Normal/narrow desktop: keep workflow destinations visible, move utilities to More. */
@media(max-width:1220px){
    .header-admin-link,.header-feedback-primary{display:none!important}
    .header-overflow{display:block}
    .top nav>a{font-size:14px!important}
}

/* Tighter laptop widths: New Estimate/New Discovery joins the More menu. */
@media(max-width:1080px){
    .header-new-action{display:none!important}
    .header-overflow-new{display:flex!important}
    .top nav>a{padding-left:8px!important;padding-right:8px!important}
}

/* Small/tablet widths: switch to one compact Menu control rather than wrapping navigation. */
@media(max-width:760px){
    .top{min-height:68px!important;padding:0 14px!important;gap:10px!important}
    .brand img{height:28px!important;max-width:165px}
    .header-primary-link,.header-new-action,.header-admin-link,.header-feedback-primary,.header-overflow{display:none!important}
    .header-mobile-menu{display:block}
    .header-nav{margin-left:auto;gap:8px!important}
    .header-menu-toggle span{display:none}
    .header-menu-toggle{width:40px;justify-content:center;padding:8px}
    .header-menu-panel{width:min(260px,calc(100vw - 28px))}
    .account-menu{margin-left:0}
}

/* =========================================================
   V1.10.05 Timeline View / Zoom Controls
   Display-only scaling. Schedule data and calculations unchanged.
   ========================================================= */
.timeline-zoom-toolbar{
    margin:12px 0 10px;
    padding:12px 14px;
    border:1px solid #cfdee3;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 24px rgba(6,40,63,.055);
}
.timeline-zoom-primary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}
.timeline-zoom-primary .eyebrow{margin-bottom:3px}
.timeline-zoom-primary strong{color:var(--navy);font-size:13px}
.timeline-zoom-segment{
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:4px;
    border:1px solid #cfdee3;
    border-radius:11px;
    background:#f2f7f8;
}
.timeline-zoom-segment button{
    min-height:36px;
    padding:7px 12px;
    border:0;
    border-radius:8px;
    background:transparent;
    color:#536b75;
    font:inherit;
    font-size:12px;
    font-weight:850;
    cursor:pointer;
    white-space:nowrap;
}
.timeline-zoom-segment button:hover{background:#fff;color:var(--navy)}
.timeline-zoom-segment button.active{
    background:#182852;
    color:#fff;
    box-shadow:0 3px 9px rgba(24,40,82,.18);
}
.timeline-zoom-segment button:focus-visible,
.timeline-zoom-nav-btn:focus-visible,
.timeline-zoom-today-btn:focus-visible{outline:3px solid rgba(15,169,195,.25);outline-offset:2px}
.timeline-zoom-navigator{
    display:grid;
    grid-template-columns:auto minmax(250px,1fr) auto auto;
    align-items:center;
    gap:8px;
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid #e2ecef;
}
.timeline-zoom-navigator[hidden]{display:none!important}
.timeline-zoom-nav-btn,.timeline-zoom-today-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-height:38px;
    padding:7px 11px;
    border:1px solid #cbdde2;
    border-radius:9px;
    background:#f8fbfc;
    color:var(--navy);
    font:inherit;
    font-size:12px;
    font-weight:850;
    cursor:pointer;
}
.timeline-zoom-nav-btn:hover,.timeline-zoom-today-btn:hover{border-color:#9ccbd3;background:#eef9fb}
.timeline-zoom-nav-btn:disabled{opacity:.38;cursor:not-allowed}
.timeline-zoom-nav-btn .app-icon{width:14px;height:14px}
.timeline-zoom-today-btn{color:#087f91;background:#edf9fa;border-color:#b8dfe5}
.timeline-zoom-range{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-width:0;
    color:#617780;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.timeline-zoom-range strong{
    color:var(--navy);
    font-size:13px;
    font-weight:900;
    text-transform:none;
    letter-spacing:0;
    white-space:nowrap;
}
.timeline-board-head,.timeline-phase,.timeline-row{
    min-width:var(--timeline-board-width,1420px)!important;
}
.timeline-scroll-top-spacer{
    min-width:var(--timeline-board-width,1420px)!important;
}
@media(max-width:900px){
    .timeline-zoom-primary{align-items:flex-start;flex-direction:column}
    .timeline-zoom-segment{width:100%;overflow-x:auto}
    .timeline-zoom-segment button{flex:1 0 auto}
    .timeline-zoom-navigator{grid-template-columns:1fr 1fr}
    .timeline-zoom-range{grid-column:1/-1;grid-row:1}
}
.timeline-zoom-today-btn:disabled{opacity:.4;cursor:not-allowed}

/* =========================================================
   V1.10.06 Timeline Detailed Daily Scale
   1 Month / 2 Weeks use true daily headers and guides.
   ========================================================= */
.timeline-zoom-range{
    justify-self:center;
    padding:7px 14px;
    border:1px solid #c8dfe4;
    border-radius:10px;
    background:linear-gradient(180deg,#f8fcfd,#edf8fa);
    box-shadow:0 2px 7px rgba(6,40,63,.045);
}
.timeline-zoom-range span{color:#078ca0;font-size:10px;letter-spacing:.09em}
.timeline-zoom-range strong{font-size:14px}
.timeline-daily-mode .timeline-week-cell{display:none!important}
.timeline-daily-scale{
    position:absolute;
    inset:0;
    z-index:4;
    display:block;
    pointer-events:none;
}
.timeline-day-cell{
    position:absolute;
    top:0;
    bottom:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    border-left:1px solid #dbe8eb;
    background:#fff;
    box-sizing:border-box;
    overflow:hidden;
}
.timeline-day-cell.weekend{background:#f3f6f8}
.timeline-day-cell.today{background:#e8f8fa;box-shadow:inset 2px 0 0 #ec6f46,inset -1px 0 0 rgba(236,111,70,.22)}
.timeline-day-cell b{color:#6b818a;font-size:10px;line-height:1;font-weight:900;letter-spacing:.06em}
.timeline-day-cell small{color:#079eb4;font-size:14px;line-height:1;font-weight:950}
.timeline-two-week-mode .timeline-day-cell b{font-size:11px}
.timeline-two-week-mode .timeline-day-cell small{font-size:16px}
.timeline-daily-guides{
    position:absolute;
    inset:0;
    z-index:0;
    pointer-events:none;
}
.timeline-day-guide{
    position:absolute;
    top:0;
    bottom:0;
    display:block;
    border-left:1px solid rgba(203,220,225,.62);
    box-sizing:border-box;
}
.timeline-day-guide.weekend{background:rgba(119,143,153,.055)}
.timeline-day-guide.week-start{border-left:2px solid rgba(15,169,195,.20)}
.timeline-day-guide.today{background:rgba(15,169,195,.085);border-left:2px solid rgba(236,111,70,.78)}
.timeline-daily-mode .timeline-week-cell-guide{opacity:.12}
.timeline-daily-mode .timeline-track{background:linear-gradient(180deg,#fff,#fcfefe)}
@media(max-width:900px){
    .timeline-zoom-range{width:100%;box-sizing:border-box}
}

/* =========================================================
   V1.10.07 Timeline Detail Context + Information Density
   Detailed views keep task context and reveal more information.
   ========================================================= */
.timeline-detail-mode .timeline-task-head,
.timeline-detail-mode .timeline-task-cell{
    position:sticky!important;
    left:0!important;
    width:330px!important;
    min-width:330px!important;
    max-width:330px!important;
    box-sizing:border-box;
    z-index:30!important;
}
.timeline-detail-mode .timeline-task-head{
    display:block!important;
    visibility:visible!important;
    color:var(--muted)!important;
    background:#f7fafb!important;
    box-shadow:8px 0 16px rgba(6,40,63,.055);
}
.timeline-detail-mode .timeline-task-cell{
    background:#fff!important;
    box-shadow:8px 0 16px rgba(6,40,63,.045);
}
.timeline-detail-mode .timeline-phase>summary>div:first-child{
    position:sticky!important;
    left:0!important;
    z-index:31!important;
    width:330px;
    min-width:330px;
    box-sizing:border-box;
}
/* The original orange Today marker remains the positional marker.
   Daily guides provide only the soft column highlight, avoiding a double line. */
.timeline-detail-mode .timeline-day-guide.today{
    background:rgba(15,169,195,.085)!important;
    border-left:0!important;
    box-shadow:none!important;
}
.timeline-detail-mode .timeline-day-cell.today{
    background:#e8f8fa!important;
    box-shadow:inset 0 -3px 0 #ec6f46!important;
}
.timeline-detail-mode .timeline-day-guide.weekend{background:rgba(119,143,153,.07)}
.timeline-detail-mode .timeline-day-guide.week-start{border-left:2px solid rgba(15,169,195,.26)}
.timeline-detail-mode .timeline-track{overflow:hidden}
.timeline-detail-mode .timeline-bar.timeline-detail-bar em{
    max-width:300px;
    overflow:visible;
    text-overflow:clip;
}
.timeline-two-week-mode .timeline-bar.timeline-detail-bar em{
    font-size:12px;
    font-weight:850;
}
.timeline-detail-mode .timeline-task-cell strong{font-size:12px}
.timeline-detail-mode .timeline-task-cell small{font-size:12px;line-height:1.3}
.timeline-zoom-range strong{font-variant-numeric:tabular-nums}

/* =========================================================
   V1.10.08 Timeline Today + Horizontal Navigation Polish
   ========================================================= */
/* Detailed views use the same warm attention family as customer/adjusted
   states so Today cannot disappear into the teal production palette. */
.timeline-detail-mode .timeline-day-cell.today{
    background:#fff3dc!important;
    box-shadow:inset 0 -3px 0 #e89b24!important;
}
.timeline-detail-mode .timeline-day-cell.today b{color:#a85d12!important}
.timeline-detail-mode .timeline-day-cell.today small{color:#b86813!important}
.timeline-detail-mode .timeline-day-guide.today{
    background:rgba(246,185,74,.10)!important;
    border-left:0!important;
    box-shadow:none!important;
}

/* Make the synchronized horizontal control read as an intentional navigator. */
.timeline-scroll-hint{
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:8px;
    color:#637a84;
}
.timeline-scroll-hint::before{display:none!important}
.timeline-scroll-hint strong{
    color:#0b8fa2;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.timeline-scroll-direction{font-size:11px;font-weight:800;color:#6a8089}
.timeline-scroll-top{
    height:20px!important;
    border-color:#bfd9df!important;
    background:#dfecef!important;
    box-shadow:inset 0 1px 2px rgba(6,40,63,.07);
}
.timeline-scroll-top::-webkit-scrollbar{height:18px!important}
.timeline-scroll-top::-webkit-scrollbar-track{background:#dfecef!important;border-radius:999px}
.timeline-scroll-top::-webkit-scrollbar-thumb{
    background:#42aebd!important;
    border:3px solid #dfecef!important;
    border-radius:999px;
    min-width:54px;
}
.timeline-scroll-top::-webkit-scrollbar-thumb:hover{background:#168fa1!important}
.timeline-scroll-tools{
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:34px;
    margin:-2px 2px 6px;
    pointer-events:none;
}
.timeline-scroll-edge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    min-height:30px;
    padding:5px 10px;
    border:1px solid #bcd9df;
    border-radius:9px;
    background:rgba(255,255,255,.94);
    color:#0b6575;
    box-shadow:0 3px 10px rgba(6,40,63,.08);
    font:800 11px/1 inherit;
    cursor:pointer;
    pointer-events:auto;
    transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease;
}
.timeline-scroll-edge:hover{transform:translateY(-1px);box-shadow:0 5px 13px rgba(6,40,63,.12)}
.timeline-scroll-edge.is-hidden{opacity:0;pointer-events:none}
.timeline-scroll-edge:disabled{cursor:default}
@media(max-width:760px){
    .timeline-scroll-direction{display:none}
    .timeline-scroll-hint{justify-content:center}
    .timeline-scroll-edge span{display:none}
    .timeline-scroll-edge{min-width:34px;justify-content:center}
}


/* =========================================================
   V1.10.09 Timeline Layering + Sticky Context Polish
   Keep task context visible in every zoom mode, keep labels above
   timeline markers, and give the Working Calendar strip subtle depth.
   ========================================================= */
/* The task/context rail stays anchored for every Timeline View option. */
.timeline-task-head,
.timeline-task-cell{
    position:sticky!important;
    left:0!important;
    width:330px!important;
    min-width:330px!important;
    max-width:330px!important;
    box-sizing:border-box;
}
.timeline-task-head{
    z-index:34!important;
    background:#f7fafb!important;
    box-shadow:8px 0 16px rgba(6,40,63,.05);
}
.timeline-task-cell{
    z-index:32!important;
    background:#fff;
    box-shadow:8px 0 16px rgba(6,40,63,.035);
}
.timeline-phase>summary>div:first-child{
    position:sticky!important;
    left:0!important;
    z-index:33!important;
    width:330px;
    min-width:330px;
    box-sizing:border-box;
}

/* Timeline text and task marks should read above positional markers,
   including the Today line. */
.timeline-bar,
.timeline-milestone{z-index:10!important}
.timeline-bar em{
    z-index:18!important;
    text-shadow:
        0 1px 0 rgba(255,255,255,.96),
        1px 0 0 rgba(255,255,255,.96),
        -1px 0 0 rgba(255,255,255,.96),
        0 -1px 0 rgba(255,255,255,.96);
}
.timeline-phase-meta,
.timeline-phase>summary strong{position:relative;z-index:12}

/* The calendar band is intentionally unique. Keep it light, but add a
   restrained lavender gradient + micro-pattern so it reads as a calendar layer. */
.timeline-calendar-event-strip{
    background:linear-gradient(135deg,#f8f5fc 0%,#f2edf9 52%,#f8f5fc 100%)!important;
}
.timeline-calendar-event-strip-track{
    background:
        repeating-linear-gradient(135deg,rgba(111,88,168,.035) 0 1px,transparent 1px 9px),
        linear-gradient(135deg,rgba(255,255,255,.46) 0%,rgba(232,224,247,.46) 52%,rgba(255,255,255,.38) 100%),
        #f5f0fb!important;
}

/* =========================================================
   V1.10.10 Timeline Sticky Ruler + Phase Completion
   Keep date context visible while scrolling deep into the Gantt and
   allow finished phases to collapse without losing their completion state.
   ========================================================= */
.timeline-sticky-ruler{
    position:fixed;
    display:none;
    overflow:hidden;
    z-index:44;
    border:1px solid #cbdde2;
    border-top:0;
    border-radius:0 0 12px 12px;
    background:#fff;
    box-shadow:0 10px 24px rgba(6,40,63,.14);
    pointer-events:none;
}
.timeline-sticky-ruler.is-active{display:block}
.timeline-sticky-ruler-inner{
    position:absolute;
    top:0;
    left:0;
    will-change:transform;
}
.timeline-sticky-ruler .timeline-board-head{
    margin:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}
.timeline-sticky-ruler .timeline-task-head{
    position:static!important;
    box-shadow:none!important;
}
.timeline-sticky-task-overlay{
    position:absolute!important;
    top:0;
    bottom:0;
    left:0!important;
    z-index:50!important;
    width:330px!important;
    min-width:330px!important;
    max-width:330px!important;
    display:flex!important;
    align-items:flex-start;
    padding:14px 18px!important;
    border-right:1px solid #cbdde2!important;
    background:#f7fafb!important;
    box-shadow:8px 0 16px rgba(6,40,63,.08)!important;
    box-sizing:border-box;
}

.timeline-phase-meta{flex-wrap:wrap;justify-content:flex-end}
.timeline-phase-complete-badge{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:3px 8px;
    border:1px solid #a8dec4;
    border-radius:999px;
    background:#eaf8f0;
    color:#1d7c55;
    font-size:10px;
    font-weight:950;
    letter-spacing:.055em;
    text-transform:uppercase;
    white-space:nowrap;
}
.timeline-phase-complete-action{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:4px 9px;
    border:1px solid #bad7dd;
    border-radius:8px;
    background:#fff;
    color:#49636d;
    font:800 10px/1 inherit;
    cursor:pointer;
    white-space:nowrap;
}
.timeline-phase-complete-action:hover{border-color:#7fc7d2;background:#eff9fa;color:#086f80}
.timeline-phase-complete-action.reopen{border-color:#b8d9c7;color:#2d7659;background:#f6fcf8}
.timeline-phase-complete-action:disabled{opacity:.55;cursor:wait}
.timeline-phase.is-complete>summary{
    border-color:#c4e4d2!important;
    background:linear-gradient(90deg,#eef9f3 0%,#f7fcf9 48%,#ffffff 100%)!important;
    box-shadow:inset 4px 0 0 #39a871!important;
}
.timeline-phase.is-complete>summary .timeline-phase-number{
    background:#2e9b69!important;
    box-shadow:0 3px 9px rgba(46,155,105,.18)!important;
}
.timeline-phase.is-complete>summary strong{color:#175c43}
.timeline-phase.is-complete:not([open])>summary{border-bottom-color:#c4e4d2!important}

@media(max-width:760px){
    .timeline-sticky-ruler{display:none!important}
    .timeline-phase-complete-action{padding:4px 7px}
}

/* =========================================================
   V1.10.11 Timeline Phase Controls + Unified Navigation
   Keep phase status controls visible while the date canvas scrolls and
   remove duplicate horizontal navigation affordances.
   ========================================================= */
.timeline-phase > summary{
    position:relative;
    grid-template-columns:minmax(330px,1fr) auto;
}
.timeline-phase-meta{
    position:sticky!important;
    right:0!important;
    z-index:38!important;
    min-height:30px;
    padding:4px 10px 4px 18px;
    border-left:1px solid rgba(203,221,226,.9);
    background:linear-gradient(90deg,rgba(251,253,254,.78) 0%,#fbfdfe 18%,#fbfdfe 100%);
    box-shadow:-10px 0 16px rgba(251,253,254,.92);
    white-space:nowrap;
}
.timeline-phase.is-complete > summary .timeline-phase-meta{
    background:linear-gradient(90deg,rgba(247,252,249,.78) 0%,#f7fcf9 18%,#f7fcf9 100%);
    box-shadow:-10px 0 16px rgba(247,252,249,.92);
}
.timeline-zoom-navigator.full-project-mode{
    grid-template-columns:minmax(250px,1fr) auto;
}
.timeline-zoom-navigator.full-project-mode .timeline-zoom-range{
    justify-self:center;
}
.timeline-zoom-navigator.full-project-mode .timeline-zoom-today-btn{
    justify-self:end;
}
/* V1.10.08 edge buttons were useful during exploration but duplicated the
   primary Earlier/Later controls. The scrollbar remains the direct browse tool. */
.timeline-scroll-tools{display:none!important}
@media(max-width:900px){
    .timeline-zoom-navigator.full-project-mode{grid-template-columns:1fr auto}
    .timeline-zoom-navigator.full-project-mode .timeline-zoom-range{grid-column:auto;grid-row:auto}
}


/* =========================================================
   V1.10.12 Sticky Timeline Navigation Architecture
   Keep zoom selection separate from horizontal navigation. Horizontal
   browsing now travels with the sticky calendar ruler deep into the Gantt.
   ========================================================= */
.timeline-zoom-toolbar{
    padding-bottom:12px!important;
}
.timeline-zoom-primary{
    border-bottom:0!important;
    padding-bottom:0!important;
}
.timeline-calendar-navigation{
    display:block;
    margin:8px 0 4px;
    padding:8px 10px;
    border:1px solid #c9dde2;
    border-radius:12px;
    background:rgba(255,255,255,.92);
    box-shadow:0 4px 14px rgba(6,40,63,.05);
}
.timeline-calendar-nav-row,
.timeline-sticky-controls-row{
    display:grid;
    grid-template-columns:auto minmax(280px,1fr) auto auto;
    align-items:center;
    gap:10px;
}
.timeline-calendar-nav-row .timeline-zoom-range,
.timeline-sticky-controls-row .timeline-zoom-range{
    justify-self:center;
    min-width:280px;
    max-width:520px;
}
.timeline-calendar-navigation .timeline-zoom-nav-btn:disabled,
.timeline-sticky-controls .timeline-zoom-nav-btn:disabled{
    opacity:.4;
    cursor:default;
}
.timeline-calendar-navigation + .timeline-scroll-hint{
    margin-top:7px!important;
}

/* The vertical sticky ruler now owns the horizontal navigation controls too. */
.timeline-sticky-ruler{
    pointer-events:none;
}
.timeline-sticky-controls{
    position:absolute;
    top:0;
    left:0;
    right:0;
    z-index:58;
    padding:7px 10px 5px;
    border-bottom:1px solid #c9dde2;
    background:rgba(245,250,251,.98);
    box-shadow:0 4px 12px rgba(6,40,63,.07);
    pointer-events:auto;
}
.timeline-sticky-controls-row{
    margin-bottom:4px;
}
.timeline-sticky-controls .timeline-zoom-range{
    min-height:34px;
    padding:5px 12px;
    background:#fff;
}
.timeline-sticky-controls .timeline-scroll-top{
    width:100%!important;
    margin:0!important;
    height:18px!important;
    pointer-events:auto;
}
.timeline-sticky-controls .timeline-scroll-top::-webkit-scrollbar{
    height:16px!important;
}
.timeline-sticky-ruler-inner{
    position:absolute!important;
    left:0!important;
}
.timeline-sticky-task-overlay{
    bottom:auto!important;
}

@media(max-width:900px){
    .timeline-calendar-nav-row,
    .timeline-sticky-controls-row{
        grid-template-columns:auto 1fr auto;
    }
    .timeline-calendar-nav-row .timeline-zoom-range,
    .timeline-sticky-controls-row .timeline-zoom-range{
        grid-column:1 / -1;
        grid-row:1;
        width:100%;
        min-width:0;
        max-width:none;
    }
    .timeline-calendar-nav-row .timeline-calendar-earlier,
    .timeline-sticky-controls-row .sticky-earlier{grid-column:1;grid-row:2}
    .timeline-calendar-nav-row .timeline-calendar-today,
    .timeline-sticky-controls-row .sticky-today{grid-column:2;grid-row:2;justify-self:end}
    .timeline-calendar-nav-row .timeline-calendar-later,
    .timeline-sticky-controls-row .sticky-later{grid-column:3;grid-row:2}
}
@media(max-width:760px){
    .timeline-calendar-navigation{padding:7px}
    .timeline-calendar-nav-row{grid-template-columns:auto 1fr auto;gap:6px}
    .timeline-calendar-nav-row .timeline-zoom-nav-btn{padding:7px 9px}
    .timeline-sticky-controls{display:none!important}
}

/* =========================================================
   V1.10.13 - workflow hardening
   ========================================================= */
.dashboard-hero-side{display:flex;align-items:center;gap:14px;position:relative;z-index:2;flex-wrap:wrap;justify-content:flex-end}
.dashboard-hero-date{min-width:190px;padding:15px 18px;border:1px solid rgba(255,255,255,.24);border-radius:16px;background:rgba(255,255,255,.10);box-shadow:0 12px 28px rgba(0,0,0,.10);backdrop-filter:blur(8px);display:grid;gap:3px;text-align:left}
.dashboard-hero-date span{font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;color:#9edce5}
.dashboard-hero-date strong{font-size:22px;line-height:1.15;color:#fff;letter-spacing:-.02em}
.dashboard-hero-date small{font-size:12px;font-weight:700;color:#c9d9e2}
.dashboard-hero-side .hero-actions{margin:0}
@media(max-width:900px){.dashboard-hero-side{width:100%;justify-content:flex-start}.dashboard-hero-date{min-width:0}.dashboard-hero-side .hero-actions{margin-left:auto}}
@media(max-width:620px){.dashboard-hero-side{align-items:stretch;flex-direction:column}.dashboard-hero-date{width:100%}.dashboard-hero-side .hero-actions{margin:0}.dashboard-hero-side .hero-actions .btn{width:100%;justify-content:center}}

.discovery-dashboard-row.is-new-submission{position:relative;border-color:#edbd57!important;background:linear-gradient(90deg,#fffaf0 0%,#fff 24%,#fff 100%);box-shadow:0 12px 30px rgba(183,124,18,.10)}
.discovery-dashboard-row.is-new-submission:before{background:#e5a927!important}
.discovery-new-review{background:#fff0c9!important;color:#8a5a00!important;border:1px solid #efc86d!important;font-weight:900!important}

.web-review-transition{max-width:1080px;margin:36px auto!important;padding:34px!important;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;border-top:4px solid #20a9b8!important;background:linear-gradient(135deg,#fff 0%,#f4fbfb 100%)}
.web-review-transition-check{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#e2f7ee;color:#16845e}
.web-review-transition-check .app-icon{width:34px;height:34px}
.web-review-transition h1{margin:5px 0 10px;color:var(--navy);font-size:clamp(28px,3vw,42px)}
.web-review-transition p{max-width:830px;margin:0;color:#526b79;font-size:16px;line-height:1.6}
.web-review-transition-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:24px 0;padding:14px;border:1px solid #d6e8ea;border-radius:13px;background:#fff}
.web-review-transition-flow span{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;color:#58707d;font-weight:850}
.web-review-transition-flow span b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e8f3f5;color:#157b89;font-size:12px}
.web-review-transition-flow span.active{background:#e8f7f7;color:#0c6170}.web-review-transition-flow span.active b{background:#16a4b4;color:#fff}
.web-review-transition-flow i{font-style:normal;color:#85a0aa;font-weight:900}
@media(max-width:700px){.web-review-transition{grid-template-columns:1fr;padding:24px!important}.web-review-transition-check{width:52px;height:52px}.web-review-transition-flow i{display:none}}


/* =========================================================
   V1.10.14 - discovery quantities + dashboard date placement
   ========================================================= */
@media(min-width:821px){
  .estimates-dashboard-hero .dashboard-hero-side{
    align-self:stretch;
    flex-direction:column;
    align-items:flex-end;
    justify-content:flex-start;
    flex-wrap:nowrap;
    gap:14px;
  }
  .estimates-dashboard-hero .dashboard-hero-date{
    margin-left:auto;
  }
  .estimates-dashboard-hero .dashboard-hero-side .hero-actions{
    margin-top:auto;
    margin-left:auto;
  }
}

/* V1.10.15 - keep conditional quantities inside their parent Discovery decision card */
.discovery-question-card > .discovery-inline-conditional{margin:14px 0 0;padding:14px 0 0;border:0;border-top:1px solid #c9dce3;border-radius:0;background:transparent;box-shadow:none;min-height:0;grid-column:auto;}
.discovery-question-card > .discovery-inline-conditional .discovery-question-head{margin-bottom:8px;}
.discovery-question-card > .discovery-inline-conditional .discovery-question-status{display:none;}
.discovery-question-card > .discovery-inline-conditional[hidden]{display:none!important;}

/* V1.10.22 - ECHO supplied SVG brand assets */
.echo-attribution{margin:22px 0 0;padding:14px 18px;border-top:1px solid #d9e6e9;text-align:center;color:#64727a;font-size:12px;line-height:1.5;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.echo-attribution a{color:#087f91;font-weight:800;text-decoration:none}
.echo-attribution a:hover{text-decoration:underline}
.echo-logo-footer{display:block;width:104px;height:auto;flex:0 0 auto}
.brand-sub{gap:10px!important}
.echo-logo-header{display:block;width:118px;height:auto;max-height:48px;flex:0 0 auto}
.login-art .echo-logo-login{display:block;width:min(300px,78%);height:auto;margin:24px 0 0}
.login-art .echo-logo-login + h1{margin-top:54px}
.login-art .echo-login-tagline{font-size:15px!important;line-height:1.5!important;max-width:470px}
@media(max-width:1180px){.echo-logo-header{width:105px}}
@media(max-width:980px){.login-art .echo-logo-login{width:min(250px,80%)}.login-art .echo-logo-login + h1{margin-top:42px}}
@media(max-width:760px){.echo-logo-header{width:98px}.echo-attribution{gap:9px}.echo-logo-footer{width:92px}}

/* V1.10.23 - Login brand spacing refinement */
.login-art .login-logo{
    width:min(500px,88%);
    margin-bottom:0;
}
.login-art .echo-logo-login{
    width:min(500px,88%);
    margin-top:120px;
}
.login-art .echo-logo-login + h1{
    margin-top:54px;
}
@media(max-width:980px){
    .login-art .login-logo{width:min(500px,88%)}
    .login-art .echo-logo-login{width:min(500px,88%);margin-top:90px}
}

/* V1.10.24 - Reports + ECHO Investment Opportunity */
.estimate-reports-panel{margin:0 0 22px;padding:22px 24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.9fr);gap:24px;align-items:center;background:linear-gradient(135deg,#f6fbfc 0%,#f8f7ff 100%);border-left:4px solid #1e8f9c}
.estimate-reports-copy h2{margin:4px 0 7px;font-size:22px;color:#182852}.estimate-reports-copy p{margin:0;max-width:720px;color:#5e6879;line-height:1.55}
.estimate-report-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px;border:1px solid #d9e4e8;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(24,40,82,.07)}
.estimate-report-card-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:#e9f7f8;color:#177e89}.estimate-report-card-icon .app-icon{width:22px;height:22px}.estimate-report-card strong{display:block;color:#182852;font-size:15px}.estimate-report-card span{display:block;margin-top:3px;color:#6c7584;font-size:12px;line-height:1.35}

.investment-report-shell{max-width:1180px;margin:0 auto 56px}.investment-report-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 18px}.investment-report-toolbar>div{display:flex;align-items:center;gap:10px}
.investment-report-page{overflow:hidden;margin:0 0 26px;border:1px solid #dbe5e9;border-radius:26px;background:#fff;box-shadow:0 18px 48px rgba(22,53,69,.12)}
.investment-report-masthead{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:24px 34px;border-bottom:1px solid #e5ecef;background:#fff}.investment-customer-mark{position:relative;width:86px;height:70px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#f4fbfb,#eef6ff);overflow:hidden}.investment-customer-logo{max-width:74px;max-height:58px;object-fit:contain}.investment-customer-fallback{display:none;font-size:24px;font-weight:900;color:#138d9a}.investment-customer-mark.show-fallback .investment-customer-fallback,.investment-customer-mark:not(:has(.investment-customer-logo)) .investment-customer-fallback{display:block}.investment-report-masthead-copy strong{display:block;color:#102d45;font-size:20px;line-height:1.1}.investment-report-masthead-copy span{display:block;margin-top:5px;color:#657787;font-size:13px}.investment-echo-logo{width:178px;max-height:54px;object-fit:contain}
.investment-report-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:46px;align-items:center;padding:42px 38px;background:radial-gradient(circle at 72% 20%,rgba(43,182,193,.26),transparent 32%),linear-gradient(135deg,#063b4a 0%,#0d5365 46%,#182852 100%);color:#fff}.investment-report-hero:after{content:"";position:absolute;right:-70px;bottom:-95px;width:330px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(113,200,129,.25),transparent 65%);pointer-events:none}.investment-report-hero .eyebrow{color:#6fe0e7;font-size:13px;letter-spacing:.18em}.investment-report-hero h1{max-width:760px;margin:10px 0 14px;color:#fff;font-size:46px;line-height:1.02;letter-spacing:-.025em}.investment-report-hero p{max-width:760px;margin:0;color:#e8f2f3;font-size:19px;line-height:1.48}.investment-report-investment{position:relative;z-index:1;padding:22px 23px;border:1px solid rgba(255,255,255,.25);border-radius:20px;background:rgba(255,255,255,.92);color:#182852;box-shadow:0 16px 28px rgba(0,0,0,.12)}.investment-report-investment small{display:block;color:#667587;font-size:13px;font-weight:700}.investment-report-investment strong{display:block;margin:5px 0 7px;font-size:39px;line-height:1;color:#182852}.investment-report-investment span,.investment-report-investment em{display:block;color:#4b5d70;font-size:13px;font-style:normal}.investment-report-investment em{margin-top:9px}
.investment-opportunity-band{padding:24px 26px 28px;background:#fff}.investment-area-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.investment-area-card{position:relative;overflow:hidden;padding:18px 16px 17px;border:1px solid #dbe5e9;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdfe);min-height:245px}.investment-area-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:linear-gradient(90deg,#1fb2bd,#65bf7b)}.investment-area-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin-bottom:14px;background:#e6f7f8;color:#128b96}.investment-area-icon .app-icon{width:23px;height:23px}.investment-area-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.investment-area-name{font-size:21px;font-weight:900;color:#182852}.investment-level{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;padding:5px 8px;border-radius:999px;background:#edf2f4;color:#596675}.level-high{background:#e3f6e9;color:#167746}.level-meaningful{background:#e5f5f7;color:#176f7a}.level-emerging{background:#fff2d8;color:#8d611e}.investment-area-card p{font-size:14px;line-height:1.42;color:#4e6071;min-height:80px}.investment-score-track{height:5px;border-radius:999px;background:#e8eef0;overflow:hidden;margin:13px 0}.investment-score-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#18aab5,#5ec074)}.investment-area-reason{font-size:12px;line-height:1.4;color:#657584}
.investment-accessibility{display:grid;grid-template-columns:auto minmax(0,1.25fr) minmax(290px,.75fr);gap:24px;align-items:center;padding:28px 34px;border-top:1px solid #dfe8eb;border-bottom:1px solid #dfe8eb;background:linear-gradient(90deg,#f3fbff 0%,#f7f4ff 100%)}.investment-accessibility-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#8c68e8,#5e36c8);color:#fff;box-shadow:0 0 0 10px rgba(111,81,211,.12)}.investment-accessibility-icon .app-icon{width:40px;height:40px}.investment-accessibility h2{margin:5px 0 7px;color:#182852;font-size:30px}.investment-accessibility p{margin:0;color:#536677;font-size:15px;line-height:1.55}.investment-accessibility-points{display:grid;gap:9px;padding-left:24px;border-left:1px solid #c8dbe0}.investment-accessibility-points span{position:relative;padding-left:26px;color:#3e5163;font-size:14px;line-height:1.35}.investment-accessibility-points span:before{content:"✓";position:absolute;left:0;top:0;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;background:#33b7c1;color:#fff;font-size:11px;font-weight:900}
.investment-found{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;padding:28px 34px;background:#fff}.investment-found h2{margin:5px 0 7px;color:#182852;font-size:31px}.investment-found p{max-width:620px;margin:0;color:#56697a;font-size:15px;line-height:1.5}.investment-found-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.investment-found-stats>div{min-width:108px;display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:9px;align-items:center}.investment-found-stats span{grid-row:1/3;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#e7f6f7;color:#15919b}.investment-found-stats span .app-icon{width:21px;height:21px}.investment-found-stats strong{font-size:27px;line-height:1;color:#182852}.investment-found-stats small{font-size:12px;color:#6c7985}
.investment-report-page-two{padding:0}.investment-research-strong{padding:34px}.investment-section-intro{max-width:760px}.investment-section-intro h2{margin:5px 0 8px;color:#182852;font-size:32px}.investment-section-intro p{margin:0;color:#596b7a;font-size:16px;line-height:1.5}.investment-research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.investment-research-grid article{padding:22px;border:1px solid #dce6e9;border-radius:18px;background:linear-gradient(180deg,#f8fcfc,#fff)}.investment-research-grid article:nth-child(2){background:linear-gradient(180deg,#f4fbf4,#fff)}.investment-research-grid article:nth-child(3){background:linear-gradient(180deg,#f7f3ff,#fff)}.investment-research-grid article>strong{display:block;color:#147f89;font-size:41px;line-height:1}.investment-research-grid article:nth-child(2)>strong{color:#3ca35c}.investment-research-grid .research-accessibility>strong{color:#6f47cb}.investment-research-grid h3{margin:8px 0 8px;color:#182852;font-size:18px}.investment-research-grid p{margin:0;color:#576979;font-size:14px;line-height:1.5}.investment-research-grid small{display:block;margin-top:15px;padding-top:12px;border-top:1px solid #e8edef;color:#77838e;font-size:12px;line-height:1.35}.investment-research-note{margin-top:16px;padding:14px 16px;border-radius:12px;background:#f0f5f7;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;color:#61717f;font-size:12px;line-height:1.4}.investment-research-note strong{color:#34495a;white-space:nowrap}
.investment-perspective-v2{display:grid;grid-template-columns:1.05fr .95fr;gap:0;border-top:1px solid #dce5e9;background:linear-gradient(135deg,#f4fbfc,#fbf9ff)}.investment-perspective-money{padding:34px}.investment-big-number{display:block;margin:9px 0 7px;font-size:50px;line-height:1;color:#182852}.investment-perspective-money h2{margin:0 0 12px;color:#182852;font-size:30px;line-height:1.1}.investment-perspective-money p{margin:0;color:#576979;font-size:15px;line-height:1.55}.investment-impact-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:36px 34px 34px;border-left:1px solid #d8e3e7;background:#fff}.investment-impact-list>div{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.investment-impact-list b{font-size:14px;line-height:1.25;color:#223a50}.impact-dot{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff}.impact-dot .app-icon{width:19px;height:19px}.impact-teal{background:#19aeb8}.impact-purple{background:#7a4bd5}.impact-green{background:#54b86a}.impact-blue{background:#247ac8}.impact-coral{background:#ef6755}.impact-gold{background:#e7a72e}
.investment-report-close{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:30px;align-items:center;padding:34px 36px;background:radial-gradient(circle at 80% 10%,rgba(55,188,197,.24),transparent 28%),linear-gradient(135deg,#063b4a,#182852);color:#fff}.investment-report-close .eyebrow{color:#70dfe5}.investment-report-close blockquote{margin:9px 0 10px;max-width:760px;font-size:31px;line-height:1.17;font-weight:800}.investment-report-close p{max-width:780px;margin:0;color:#e0ebed;font-size:15px;line-height:1.55}.investment-report-close small{display:block;margin-top:17px;color:#afc1ca;font-size:12px;line-height:1.4}.investment-close-brand{padding-left:28px;border-left:1px solid rgba(255,255,255,.25);text-align:center}.investment-close-brand>img:first-child{width:180px;max-height:56px}.investment-close-brand span{display:block;margin:13px 0 14px;color:#d9e7ea;font-size:12px;line-height:1.35}.investment-close-brand span strong{color:#fff}.investment-bmg-logo{width:178px;max-height:52px;filter:none}
.investment-report-v2 .eyebrow{font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#36b8c2}
@media(max-width:1050px){.investment-area-grid{grid-template-columns:repeat(2,1fr)}.investment-area-card:last-child{grid-column:span 2}.investment-report-hero{grid-template-columns:1fr}.investment-report-investment{max-width:280px}.investment-accessibility{grid-template-columns:auto 1fr}.investment-accessibility-points{grid-column:1/-1;border-left:0;padding-left:0;grid-template-columns:1fr 1fr}.investment-found{grid-template-columns:1fr}.investment-research-grid{grid-template-columns:1fr}.investment-perspective-v2,.investment-report-close{grid-template-columns:1fr}.investment-impact-list{border-left:0;border-top:1px solid #d8e3e7}.investment-close-brand{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:24px 0 0;text-align:left}}
@media(max-width:680px){.investment-report-toolbar{align-items:flex-start;flex-direction:column}.investment-report-toolbar>div{flex-wrap:wrap}.investment-report-page{border-radius:18px}.investment-report-masthead{grid-template-columns:auto 1fr;padding:18px}.investment-echo-logo{grid-column:1/-1;width:150px}.investment-report-hero{padding:28px 22px}.investment-report-hero h1{font-size:34px}.investment-report-hero p{font-size:16px}.investment-opportunity-band{padding:20px}.investment-area-grid{grid-template-columns:1fr}.investment-area-card:last-child{grid-column:auto}.investment-accessibility{grid-template-columns:1fr;padding:24px}.investment-accessibility-points{grid-template-columns:1fr}.investment-found{padding:24px}.investment-found-stats{grid-template-columns:1fr 1fr 1fr;gap:12px}.investment-found-stats>div{min-width:0;grid-template-columns:1fr;text-align:center}.investment-found-stats span{grid-row:auto;margin:auto}.investment-research-strong,.investment-perspective-money,.investment-impact-list,.investment-report-close{padding:24px}.investment-impact-list{grid-template-columns:1fr}.investment-report-close blockquote{font-size:26px}}
@page{size:Letter portrait;margin:.32in}
@media print{html,body{background:#fff!important}.top,.investment-report-toolbar,.echo-app-footer,.pilot-feedback-success{display:none!important}.wrap{max-width:none!important;padding:0!important}.investment-report-shell{width:100%;max-width:none;margin:0}.investment-report-page{margin:0;border:0;border-radius:0;box-shadow:none;overflow:visible;-webkit-print-color-adjust:exact;print-color-adjust:exact}.investment-report-page-one{page-break-after:always}.investment-report-masthead{padding:14px 18px}.investment-customer-mark{width:62px;height:52px}.investment-customer-logo{max-width:54px;max-height:44px}.investment-report-masthead-copy strong{font-size:15px}.investment-report-masthead-copy span{font-size:10px}.investment-echo-logo{width:130px}.investment-report-hero{grid-template-columns:minmax(0,1fr) 190px;gap:22px;padding:24px 20px}.investment-report-hero h1{font-size:31px}.investment-report-hero p{font-size:12px;line-height:1.38}.investment-report-investment{padding:15px 16px}.investment-report-investment strong{font-size:28px}.investment-report-investment small,.investment-report-investment span,.investment-report-investment em{font-size:9px}.investment-opportunity-band{padding:16px 18px}.investment-area-grid{grid-template-columns:repeat(5,1fr);gap:7px}.investment-area-card{min-height:168px;padding:10px 9px}.investment-area-icon{width:31px;height:31px;margin-bottom:7px}.investment-area-icon .app-icon{width:15px;height:15px}.investment-area-name{font-size:13px}.investment-level{font-size:7px;padding:3px 5px}.investment-area-card p{font-size:8.5px;line-height:1.35;min-height:48px}.investment-score-track{height:3px;margin:7px 0}.investment-area-reason{font-size:7.5px;line-height:1.3}.investment-accessibility{grid-template-columns:auto 1fr 245px;gap:15px;padding:16px 18px}.investment-accessibility-icon{width:52px;height:52px}.investment-accessibility-icon .app-icon{width:26px;height:26px}.investment-accessibility h2{font-size:20px}.investment-accessibility p{font-size:9px;line-height:1.35}.investment-accessibility-points{gap:4px;padding-left:14px}.investment-accessibility-points span{font-size:8px;padding-left:18px}.investment-accessibility-points span:before{width:13px;height:13px;font-size:8px}.investment-found{padding:16px 18px}.investment-found h2{font-size:21px}.investment-found p{font-size:9px}.investment-found-stats{gap:14px}.investment-found-stats>div{min-width:78px}.investment-found-stats span{width:32px;height:32px}.investment-found-stats strong{font-size:20px}.investment-found-stats small{font-size:8px}.investment-research-strong{padding:22px}.investment-section-intro h2{font-size:24px}.investment-section-intro p{font-size:10px}.investment-research-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.investment-research-grid article{padding:14px}.investment-research-grid article>strong{font-size:29px}.investment-research-grid h3{font-size:13px}.investment-research-grid p{font-size:8.5px;line-height:1.35}.investment-research-grid small{font-size:7.5px;margin-top:8px;padding-top:7px}.investment-research-note{font-size:8px;padding:9px 10px;margin-top:10px}.investment-perspective-v2{grid-template-columns:1.05fr .95fr}.investment-perspective-money{padding:22px}.investment-big-number{font-size:36px}.investment-perspective-money h2{font-size:22px}.investment-perspective-money p{font-size:9px}.investment-impact-list{grid-template-columns:1fr 1fr;padding:22px;gap:10px}.impact-dot{width:29px;height:29px}.impact-dot .app-icon{width:14px;height:14px}.investment-impact-list b{font-size:9px}.investment-report-close{grid-template-columns:minmax(0,1fr) 220px;padding:22px 24px}.investment-report-close blockquote{font-size:23px}.investment-report-close p{font-size:9px;line-height:1.4}.investment-report-close small{font-size:7.5px;margin-top:10px}.investment-close-brand{padding-left:18px}.investment-close-brand>img:first-child{width:130px}.investment-close-brand span{font-size:8px;margin:7px 0}.investment-bmg-logo{width:130px}.investment-report-v2 .eyebrow{font-size:8px}.investment-report-page-two{page-break-inside:avoid}}

/* V1.10.26 Investment Opportunity visual storytelling */
.investment-report-masthead{padding:25px 34px}.investment-customer-mark{width:112px;height:91px;border-radius:18px}.investment-customer-logo{max-width:96px;max-height:76px}.investment-customer-fallback{font-size:29px}.investment-report-masthead-copy strong{font-size:22px}
.investment-report-hero{overflow:hidden;padding:46px 38px;background:linear-gradient(110deg,rgba(3,56,72,.98) 0%,rgba(6,85,101,.94) 48%,rgba(24,40,82,.92) 100%)}.investment-report-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 48%,rgba(61,192,201,.12) 48% 62%,rgba(117,77,211,.13) 62% 76%,transparent 76%);pointer-events:none}.investment-hero-brand-ghost{position:absolute;right:215px;top:50%;width:300px;height:230px;transform:translateY(-50%);display:grid;place-items:center;opacity:.085;filter:grayscale(1) brightness(3);pointer-events:none}.investment-hero-brand-ghost .investment-customer-logo{max-width:280px;max-height:205px}.investment-hero-brand-ghost .investment-customer-fallback{display:none}.investment-report-hero-copy{position:relative;z-index:2}.investment-report-investment{z-index:3}
.investment-opportunity-band{padding:28px 26px 30px;background:linear-gradient(180deg,#fff,#fbfdff)}.investment-area-grid{gap:15px}.investment-area-card{display:flex;flex-direction:column;min-height:330px;padding:20px 17px 0;text-align:center;border-color:#d7e3e8;box-shadow:0 9px 24px rgba(25,57,76,.055)}.investment-area-card:after{display:none}.investment-area-icon{width:58px;height:58px;margin:0 auto 13px}.investment-area-icon .app-icon{width:28px;height:28px}.investment-area-top{justify-content:center;flex-wrap:wrap}.investment-area-name{font-size:22px}.investment-area-tagline{margin:7px 0 9px;font-size:10px;line-height:1.1;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.investment-area-card p{min-height:72px;margin:0;color:#42586b;font-size:14px;line-height:1.4}.investment-score-track{width:78%;margin:13px auto 9px}.investment-area-reason{min-height:34px;margin-bottom:13px;font-size:11.5px;line-height:1.35}.investment-area-visual{height:82px;margin:auto -17px 0;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;overflow:hidden}.investment-area-visual span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2)}.investment-area-visual .app-icon{width:18px;height:18px}.investment-area-visual b{font-size:13px;letter-spacing:.04em}.area-attract{background:linear-gradient(180deg,#f3fcff 0%,#fff 62%)}.area-attract .investment-area-icon{background:#dff7fb;color:#0b9cb0}.area-attract .investment-area-tagline{color:#07899c}.area-attract .investment-area-visual{background:linear-gradient(135deg,#0697b4,#23c4c4)}.area-engage{background:linear-gradient(180deg,#f2fbf4 0%,#fff 62%)}.area-engage .investment-area-icon{background:#e0f7e6;color:#37a55a}.area-engage .investment-area-tagline{color:#348b4d}.area-engage .investment-area-visual{background:linear-gradient(135deg,#3aa75b,#70c96f)}.area-convert{background:linear-gradient(180deg,#fff4f2 0%,#fff 62%)}.area-convert .investment-area-icon{background:#ffe4df;color:#ed5b45}.area-convert .investment-area-tagline{color:#cf4d39}.area-convert .investment-area-visual{background:linear-gradient(135deg,#ed5c45,#ff8564)}.area-serve{background:linear-gradient(180deg,#f7f2ff 0%,#fff 62%)}.area-serve .investment-area-icon{background:#ece2ff;color:#7343d1}.area-serve .investment-area-tagline{color:#6b3bc6}.area-serve .investment-area-visual{background:linear-gradient(135deg,#6840c7,#9a60e6)}.area-operate{background:linear-gradient(180deg,#fff8e9 0%,#fff 62%)}.area-operate .investment-area-icon{background:#fff0c9;color:#d99413}.area-operate .investment-area-tagline{color:#a36a0b}.area-operate .investment-area-visual{background:linear-gradient(135deg,#d99615,#f2ba39)}
.investment-accessibility{padding:31px 34px;background:radial-gradient(circle at 5% 50%,rgba(119,74,216,.14),transparent 24%),linear-gradient(90deg,#f3fbff 0%,#f7f4ff 100%)}
.investment-found-wrap{padding:20px 0;background:linear-gradient(90deg,#eef8ff,#f8f4ff);border-top:1px solid #dce8ee;border-bottom:1px solid #dce8ee}.investment-found{margin:0 20px;padding:28px 30px;border:1px solid rgba(80,143,170,.22);border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 10px 28px rgba(33,67,89,.06)}.investment-found-stats>div{padding:10px 12px;border-radius:14px;background:#f7fbfc}.investment-found-stats span{background:#dff5f7}
.investment-research-strong{background:linear-gradient(180deg,#fff,#fbfdff)}.investment-research-grid article{box-shadow:0 9px 22px rgba(25,57,76,.045)}
.investment-close-brand{display:flex;min-height:178px;flex-direction:column;align-items:center}.investment-close-brand>img:first-child{margin-top:2px}.investment-close-brand span{margin:13px 0 0}.investment-bmg-anchor{display:flex;align-items:flex-end;justify-content:center;flex:1;width:100%}.investment-bmg-logo{display:block;margin-top:auto}
@media(max-width:1050px){.investment-area-card{min-height:285px}.investment-hero-brand-ghost{right:20px}.investment-found-wrap{padding:16px 0}}
@media(max-width:680px){.investment-customer-mark{width:96px;height:78px}.investment-customer-logo{max-width:82px;max-height:66px}.investment-area-card{min-height:300px}.investment-area-visual{height:72px}.investment-found{margin:0 12px}.investment-hero-brand-ghost{display:none}}
@media print{.investment-customer-mark{width:81px;height:66px}.investment-customer-logo{max-width:70px;max-height:56px}.investment-report-hero{padding:25px 20px}.investment-hero-brand-ghost{right:145px;width:190px;height:140px}.investment-hero-brand-ghost .investment-customer-logo{max-width:175px;max-height:125px}.investment-area-card{min-height:205px;padding:10px 8px 0}.investment-area-icon{width:36px;height:36px;margin-bottom:5px}.investment-area-icon .app-icon{width:17px;height:17px}.investment-area-name{font-size:13px}.investment-area-tagline{font-size:6px;margin:3px 0 5px}.investment-area-card p{min-height:38px;font-size:7.5px}.investment-score-track{margin:5px auto}.investment-area-reason{min-height:20px;margin-bottom:5px;font-size:6.5px}.investment-area-visual{height:38px;margin-left:-8px;margin-right:-8px}.investment-area-visual span{width:21px;height:21px}.investment-area-visual .app-icon{width:11px;height:11px}.investment-area-visual b{font-size:7px}.investment-found-wrap{padding:9px 0}.investment-found{margin:0 10px;padding:12px 14px}.investment-close-brand{min-height:118px}.investment-bmg-logo{margin-top:auto}}

/* V1.10.27 - Closing endorsement alignment */
.investment-close-brand{position:relative;padding-bottom:35px}
.investment-bmg-anchor{position:absolute;left:0;right:0;bottom:35px;display:flex;align-items:flex-end;justify-content:center;width:auto;height:auto}
.investment-bmg-logo{display:block;margin:0 auto}
@media print{
  .investment-close-brand{position:relative;padding-bottom:26px}
  .investment-bmg-anchor{left:0;right:0;bottom:26px}
}

/* V1.10.28 - closing endorsement alignment
   Stretch the endorsement column to the full height of the closing panel so the
   BMG mark is anchored to the panel baseline, not to the height of its own content. */
.investment-report-close{align-items:stretch}
.investment-close-brand{align-self:stretch;height:100%;min-height:0;position:relative;padding-bottom:35px}
.investment-bmg-anchor{position:absolute;left:0;right:0;bottom:35px;display:flex;justify-content:center;align-items:flex-end;width:auto;height:auto}
.investment-bmg-logo{display:block;margin:0 auto}
@media print{
  .investment-report-close{align-items:stretch}
  .investment-close-brand{align-self:stretch;height:100%;min-height:0;padding-bottom:26px}
  .investment-bmg-anchor{bottom:26px}
}

/* V1.10.29 - Simplified Enhanced Analysis / What-If Scenario */
.investment-enhance-panel{margin:22px 0;padding:26px 30px;border:1px solid #d9e7ec;border-radius:20px;background:linear-gradient(120deg,#f7fbfc,#f8f5ff);display:grid;grid-template-columns:minmax(260px,.8fr) minmax(480px,1.2fr);gap:26px;align-items:end}.investment-enhance-copy h2{margin:5px 0 8px;font-size:24px;color:#17364a}.investment-enhance-copy p{margin:0;color:#5a6e7d;font-size:14px;line-height:1.5}.investment-enhance-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.investment-enhance-form label>span{display:block;margin-bottom:6px;font-size:12px;font-weight:800;color:#355064}.investment-enhance-form input,.investment-enhance-form select{width:100%;min-height:44px;border:1px solid #cbdde4;border-radius:10px;background:#fff;font-size:15px}.investment-money-input{position:relative}.investment-money-input b{position:absolute;left:13px;top:11px;color:#4d6574}.investment-money-input input{padding-left:27px}.investment-enhance-unavailable{padding:16px 18px;border-radius:12px;background:#fff6e6;color:#7b5514;display:flex;flex-direction:column;gap:3px}.investment-scenario-remove{grid-column:2;margin-top:-14px;text-align:right}.investment-scenario-remove button{border:0;background:none;color:#788a96;text-decoration:underline;cursor:pointer;font-size:12px}.investment-scenario-story{margin:24px 0;padding:30px 34px;border-radius:22px;color:#fff;background:linear-gradient(120deg,#073f52,#096d75 55%,#5343a6);box-shadow:0 14px 34px rgba(19,63,83,.12)}.investment-scenario-kicker{display:flex;justify-content:space-between;align-items:center}.investment-scenario-story .eyebrow{color:#a9eef1}.investment-source-badge{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.15);font-size:11px;font-weight:900;letter-spacing:.04em}.investment-scenario-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:center;margin-top:16px}.investment-scenario-lead>strong{display:block;font-size:58px;line-height:.9}.investment-scenario-lead h2{margin:5px 0 8px;color:#fff;font-size:29px}.investment-scenario-lead p{margin:0;max-width:580px;color:#dceff2;font-size:15px;line-height:1.45}.investment-scenario-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.investment-scenario-metrics div{padding:18px 12px;text-align:center;border:1px solid rgba(255,255,255,.18);border-radius:15px;background:rgba(255,255,255,.09)}.investment-scenario-metrics strong{display:block;font-size:29px}.investment-scenario-metrics span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#d6ebee}.investment-scenario-story>small{display:block;margin-top:18px;padding-top:13px;border-top:1px solid rgba(255,255,255,.15);color:#c9dfe4;font-size:11px}.no-print{display:block}
@media(max-width:900px){.investment-enhance-panel{grid-template-columns:1fr}.investment-enhance-form{grid-template-columns:1fr}.investment-scenario-remove{grid-column:auto;margin-top:-8px}.investment-scenario-grid{grid-template-columns:1fr}}
@media print{.no-print{display:none!important}.investment-scenario-story{margin:12px 0;padding:18px 20px;box-shadow:none;break-inside:avoid}.investment-scenario-lead>strong{font-size:34px}.investment-scenario-lead h2{font-size:18px}.investment-scenario-lead p{font-size:9px}.investment-scenario-metrics strong{font-size:19px}.investment-scenario-metrics span,.investment-scenario-story>small{font-size:7px}}

/* V1.10.31 - Supplemental Input UX */
.investment-enhance-panel{align-items:center}.investment-enhance-form{grid-template-columns:minmax(320px,1fr) auto;align-items:end}.investment-value-field{display:block}.investment-field-help{display:block!important;margin:7px 0 0!important;font-size:12px!important;font-weight:500!important;color:#6a7f8c!important;line-height:1.4}.investment-source-check{display:flex!important;align-items:center;gap:9px;margin-top:12px;cursor:pointer}.investment-source-check input{width:18px!important;min-height:18px!important;height:18px;margin:0;accent-color:#0a7884}.investment-source-check span{margin:0!important;font-size:13px!important;font-weight:700!important;color:#29485b!important}.investment-enhance-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.supplemental-save-status{min-height:16px;font-size:12px;font-weight:700;color:#34806e}.investment-scenario-remove{grid-column:2;margin-top:-18px;text-align:left}.investment-scenario-remove button{font-family:inherit;font-weight:700}.investment-money-input input{font-variant-numeric:tabular-nums}.investment-source-badge{font-size:12px}.investment-enhance-panel .eyebrow{margin-bottom:4px}
@media(max-width:900px){.investment-enhance-form{grid-template-columns:1fr}.investment-scenario-remove{grid-column:auto;margin-top:-8px}}

/* V1.10.32 - Integrated investment perspective + supplemental input cards */
.investment-perspective-v2{grid-template-columns:1.05fr .95fr}
.investment-perspective-supplement{grid-column:1/-1;display:none;border-top:1px solid #dce5e9;background:linear-gradient(120deg,#eefafb 0%,#f7f4ff 100%)}
.investment-perspective-supplement.has-data{display:block}
.investment-break-even{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:30px;align-items:center;padding:30px 34px}
.investment-break-even-copy .eyebrow{margin-bottom:7px}
.investment-break-even-answer{display:flex;align-items:baseline;gap:13px;margin:1px 0 8px}
.investment-break-even-answer strong{font-size:62px;line-height:.9;color:#0b6874;letter-spacing:-.045em}
.investment-break-even-answer span{font-size:25px;line-height:1.05;font-weight:900;color:#172b52}
.investment-break-even-copy p{max-width:720px;margin:0;color:#405b6c;font-size:15px;line-height:1.55}
.investment-break-even-copy small{display:block;margin-top:9px;color:#728692;font-size:11px;font-weight:700}
.investment-break-even-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.investment-break-even-metrics>div{padding:17px 12px;text-align:center;border:1px solid #c9e0e6;border-radius:14px;background:rgba(255,255,255,.82)}
.investment-break-even-metrics>div:nth-child(3){grid-column:1/-1}
.investment-break-even-metrics strong{display:block;color:#17345f;font-size:30px;line-height:1}
.investment-break-even-metrics span{display:block;margin-top:5px;color:#617887;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.investment-context-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 34px 28px}
.investment-context-card{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:16px;border:1px solid #d9e7eb;border-radius:14px;background:#fff}
.context-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center}
.context-icon .app-icon{width:19px;height:19px}.context-teal{background:#dff7f8;color:#0795a2}.context-green{background:#e6f7e9;color:#3a9e56}.context-purple{background:#eee5ff;color:#6f48ca}
.investment-context-card strong{display:block;color:#172b52;font-size:24px;line-height:1}.investment-context-card b{display:block;margin-top:3px;color:#29465a;font-size:12px}.investment-context-card small{display:block;margin-top:3px;color:#7a8c97;font-size:10px}

.investment-enhance-panel{display:block;margin:22px 0;padding:28px 30px;border:1px solid #dbe8ec;border-radius:20px;background:linear-gradient(135deg,#f7fbfc,#f8f5ff)}
.investment-enhance-copy{max-width:760px}.investment-enhance-copy h2{margin:4px 0 8px;font-size:26px}.investment-enhance-copy p{font-size:14px}
.investment-input-builder{margin-top:20px}.investment-input-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.investment-input-card{display:flex;flex-direction:column;min-height:285px;padding:18px;border:1px solid #d6e5ea;border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(28,65,82,.04);cursor:default}
.investment-input-card:nth-child(1){border-top:4px solid #13a8b6}.investment-input-card:nth-child(2){border-top:4px solid #4fbd6b}.investment-input-card:nth-child(3){border-top:4px solid #7650d4}.investment-input-card:nth-child(4){border-top:4px solid #e3a121}
.investment-input-card-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;margin-bottom:11px;background:#e7f7f8;color:#0b91a1}.investment-input-card-icon .app-icon{width:19px;height:19px}
.investment-input-card>strong{font-size:16px;color:#193650}.investment-input-card>p{min-height:60px;margin:6px 0 13px;color:#637785;font-size:12px;line-height:1.42}
.investment-input-card .investment-money-input,.investment-input-card>.investment-number-input{margin-top:auto}
.investment-input-card .investment-money-input input,.investment-input-card>.investment-number-input{width:100%;min-height:44px;border:1px solid #cbdde4;border-radius:10px;background:#fff;font-size:15px;font-weight:700;color:#1f3b50}
.investment-input-card>.investment-number-input{padding:0 12px}
.investment-input-card .investment-source-check{margin-top:11px}
.investment-enhance-actions{display:flex;flex-direction:row;align-items:center;gap:12px;margin-top:17px}.supplemental-save-status{min-width:90px}.investment-clear-inputs{border:0;background:none;color:#738794;font:700 12px inherit;text-decoration:underline;cursor:pointer}.investment-clear-inputs:hover{color:#263f50}

@media(max-width:1050px){.investment-input-grid{grid-template-columns:repeat(2,1fr)}.investment-break-even{grid-template-columns:1fr}.investment-context-row{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.investment-input-grid{grid-template-columns:1fr}.investment-input-card{min-height:0}.investment-input-card>p{min-height:0}.investment-break-even{padding:24px}.investment-break-even-answer{align-items:flex-start;flex-direction:column;gap:4px}.investment-break-even-answer strong{font-size:52px}.investment-context-row{grid-template-columns:1fr;padding:0 24px 24px}.investment-enhance-panel{padding:24px 20px}.investment-enhance-actions{align-items:flex-start;flex-direction:column}}
@media print{.investment-perspective-supplement.has-data{display:block}.investment-break-even{grid-template-columns:1.35fr .65fr;gap:18px;padding:15px 20px}.investment-break-even-answer strong{font-size:34px}.investment-break-even-answer span{font-size:15px}.investment-break-even-copy p{font-size:8.5px}.investment-break-even-copy small{font-size:6.5px}.investment-break-even-metrics{gap:6px}.investment-break-even-metrics>div{padding:9px 7px;border-radius:9px}.investment-break-even-metrics strong{font-size:18px}.investment-break-even-metrics span{font-size:6px}.investment-context-row{grid-template-columns:repeat(3,1fr);gap:6px;padding:0 20px 14px}.investment-context-card{padding:8px;gap:7px;border-radius:8px}.context-icon{width:25px;height:25px}.context-icon .app-icon{width:12px;height:12px}.investment-context-card strong{font-size:14px}.investment-context-card b{font-size:7px}.investment-context-card small{font-size:6px}}

/* V1.10.33 - Supplemental workspace + content management scenarios */
.investment-enhance-panel{width:calc(100% - 64px);margin:24px auto 26px;padding:30px 32px;background:#f3f7f8;border:1px solid #d6e3e7;border-radius:18px;box-shadow:0 10px 28px rgba(25,55,70,.05)}
.investment-input-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.investment-input-card{min-height:300px}
.investment-efficiency-card{grid-column:1/-1;min-height:0;background:#fffdf8}
.efficiency-scenarios{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:5px}
.efficiency-option{position:relative;display:flex;gap:9px;padding:13px;border:1px solid #d8e3e7;border-radius:12px;background:#fff;cursor:pointer}
.efficiency-option input{width:17px;height:17px;margin:2px 0 0;accent-color:#0b7884;flex:0 0 auto}
.efficiency-option span{display:block}.efficiency-option b{display:block;color:#193650;font-size:13px;line-height:1.2}.efficiency-option small{display:block;margin-top:5px;color:#647986;font-size:11px;line-height:1.35}
.efficiency-option em{display:inline-block;margin:5px 0 0;padding:3px 6px;border-radius:999px;background:#e4f6ee;color:#26775d;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.efficiency-option:has(input:checked){border-color:#0b9aa7;box-shadow:0 0 0 2px rgba(11,154,167,.12);background:#f5fcfc}.efficiency-option.is-recommended{border-style:dashed;border-color:#83b9a9}.efficiency-none{background:#f8fafb}
.investment-context-card-copy strong{font-size:14px;text-transform:uppercase;letter-spacing:.05em}.investment-context-card-copy b{font-size:13px}.investment-context-card-copy small{font-size:10px;line-height:1.35}
@media(max-width:1050px){.investment-input-grid{grid-template-columns:1fr 1fr}.investment-efficiency-card{grid-column:1/-1}.efficiency-scenarios{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.investment-enhance-panel{width:calc(100% - 28px);padding:22px 18px}.investment-input-grid,.efficiency-scenarios{grid-template-columns:1fr}.investment-efficiency-card{grid-column:auto}}

/* V1.10.34 - Investment Opportunity typography compliance */
/* Screen standard: normal customer-facing copy 14-16px, supporting copy 13px, labels/badges 12px minimum. */
.investment-report-v2 .investment-level{font-size:12px}
.investment-report-v2 .investment-area-tagline{font-size:12px;line-height:1.2}
.investment-report-v2 .investment-area-reason{font-size:13px;line-height:1.4}
.investment-report-v2 .investment-found-stats small{font-size:13px}
.investment-report-v2 .investment-research-grid small{font-size:12px;line-height:1.45}
.investment-report-v2 .investment-research-note{font-size:13px;line-height:1.45}
.investment-report-v2 .investment-break-even-copy small{font-size:12px;line-height:1.45}
.investment-report-v2 .investment-break-even-metrics span{font-size:12px;line-height:1.25}
.investment-report-v2 .investment-context-card b{font-size:13px;line-height:1.3}
.investment-report-v2 .investment-context-card small{font-size:12px;line-height:1.4}
.investment-report-v2 .investment-context-card-copy strong{font-size:14px}
.investment-report-v2 .investment-context-card-copy b{font-size:14px;line-height:1.3}
.investment-report-v2 .investment-context-card-copy small{font-size:12px;line-height:1.4}
.investment-report-v2 .investment-input-card>p{font-size:13px;line-height:1.48}
.investment-report-v2 .investment-field-help{font-size:13px!important;line-height:1.45!important}
.investment-report-v2 .supplemental-save-status{font-size:12px}
.investment-report-v2 .investment-clear-inputs{font-size:12px}
.investment-report-v2 .efficiency-option b{font-size:14px;line-height:1.25}
.investment-report-v2 .efficiency-option small{font-size:13px;line-height:1.42}
.investment-report-v2 .efficiency-option em{font-size:12px;line-height:1.2;padding:4px 7px}
.investment-report-v2 .investment-report-masthead-copy span{font-size:13px}
.investment-report-v2 .investment-report-investment small,
.investment-report-v2 .investment-report-investment span,
.investment-report-v2 .investment-report-investment em{font-size:13px}
.investment-report-v2 .investment-report-close small,
.investment-report-v2 .investment-close-brand span,
.investment-report-v2 .eyebrow{font-size:12px}

/* Print/PDF: preserve readable type instead of shrinking the report to force a two-page fit. */
@media print{
  @page{size:Letter portrait;margin:.42in}
  .investment-report-page-one{page-break-after:always}
  .investment-report-page-two{page-break-inside:auto}
  .investment-report-masthead-copy strong{font-size:16px}
  .investment-report-masthead-copy span{font-size:12px}
  .investment-report-hero h1{font-size:30px}
  .investment-report-hero p{font-size:14px;line-height:1.45}
  .investment-report-investment small,.investment-report-investment span,.investment-report-investment em{font-size:12px}
  .investment-area-name{font-size:15px}
  .investment-level{font-size:12px;padding:4px 6px}
  .investment-area-tagline{font-size:12px;line-height:1.2}
  .investment-area-card p{font-size:12px;line-height:1.4;min-height:0}
  .investment-area-reason{font-size:12px;line-height:1.4}
  .investment-accessibility p{font-size:12px;line-height:1.45}
  .investment-accessibility-points span{font-size:12px;line-height:1.4}
  .investment-found p{font-size:12px;line-height:1.45}
  .investment-found-stats small{font-size:12px}
  .investment-section-intro p{font-size:13px;line-height:1.45}
  .investment-research-grid h3{font-size:15px}
  .investment-research-grid p{font-size:12px;line-height:1.45}
  .investment-research-grid small{font-size:12px;line-height:1.4}
  .investment-research-note{font-size:12px;line-height:1.4}
  .investment-perspective-money p{font-size:12px;line-height:1.45}
  .investment-impact-list b{font-size:12px;line-height:1.35}
  .investment-break-even-copy p{font-size:12px;line-height:1.45}
  .investment-break-even-copy small{font-size:12px;line-height:1.4}
  .investment-break-even-metrics span{font-size:12px;line-height:1.2}
  .investment-context-card b{font-size:12px;line-height:1.3}
  .investment-context-card small{font-size:12px;line-height:1.35}
  .investment-context-card-copy strong,.investment-context-card-copy b,.investment-context-card-copy small{font-size:12px;line-height:1.35}
  .investment-report-close p{font-size:12px;line-height:1.45}
  .investment-report-close small{font-size:12px;line-height:1.4}
  .investment-close-brand span{font-size:12px;line-height:1.35}
  .investment-report-v2 .eyebrow{font-size:12px}
}

/* V1.10.35 - Customer delivery, share links, and dedicated PDF composition */
.investment-public-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:12px 16px;border:1px solid #d5e4e9;border-radius:14px;background:#f7fbfc;color:#476270;font-size:13px;font-weight:800}
.investment-public-share{max-width:1220px;margin:24px auto 48px}
.investment-share-dialog{width:min(720px,100%)}
.investment-share-dialog>p{font-size:14px;line-height:1.5}
.investment-share-unavailable{padding:16px 18px;border:1px solid #ead7ab;border-radius:12px;background:#fff8e8;color:#75541b;display:flex;flex-direction:column;gap:4px}
.investment-share-unavailable[hidden],.investment-share-create[hidden],.investment-share-active[hidden]{display:none!important}
.investment-share-create{padding:18px 0 2px}
.investment-share-active{margin-top:18px;padding:18px;border:1px solid #d6e6eb;border-radius:14px;background:#f7fbfc}
.investment-share-active>label{display:block;margin-bottom:7px;color:#23455a;font-size:13px;font-weight:850}
.investment-share-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.investment-share-link-row input{width:100%;min-height:44px;border:1px solid #c9dce4;border-radius:10px;background:#fff;color:#274658;font-size:13px;padding:0 12px}
.investment-share-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
.investment-share-status{display:block;margin-top:10px;color:#2a755f;font-size:12px;font-weight:800}
.investment-print-view{display:none}

@media(max-width:720px){
  .investment-public-toolbar{align-items:flex-start;flex-direction:column}
  .investment-share-link-row{grid-template-columns:1fr}
}

/*
 * PDF is deliberately composed as three fixed US-Letter pages. The normal
 * responsive report remains untouched on screen. beforeprint clones only the
 * customer-facing sections into the slots below, preventing browser pagination
 * from separating cards, evidence, and the investment story.
 */
@media print{
  @page{size:Letter portrait;margin:0}
  html,body{width:8.5in!important;margin:0!important;padding:0!important;background:#fff!important}
  body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .top,.echo-app-footer,.investment-report-toolbar,.investment-public-toolbar,.investment-report-shell>.investment-report-page,.investment-enhance-panel,.feedback-modal,.pilot-feedback-success{display:none!important}
  .wrap{width:8.5in!important;max-width:none!important;margin:0!important;padding:0!important}
  .investment-report-shell{width:8.5in!important;max-width:none!important;margin:0!important;padding:0!important}
  .investment-print-view{display:block!important;width:8.5in!important;margin:0!important;padding:0!important}
  .investment-print-page{box-sizing:border-box!important;width:8.5in!important;height:11in!important;min-height:11in!important;max-height:11in!important;margin:0!important;padding:.32in .38in!important;overflow:hidden!important;background:#fff!important;page-break-after:always!important;break-after:page!important;position:relative!important}
  .investment-print-page:last-child{page-break-after:auto!important;break-after:auto!important}
  .investment-print-slot{height:100%;display:flex;flex-direction:column;gap:0}

  /* Page 1 - opportunity and project profile */
  .investment-print-page-1 .investment-report-masthead{flex:0 0 auto;padding:0 0 12px!important;margin:0!important;border:0!important}
  .investment-print-page-1 .investment-customer-mark{width:76px!important;height:62px!important}
  .investment-print-page-1 .investment-customer-logo{max-width:68px!important;max-height:54px!important}
  .investment-print-page-1 .investment-report-masthead-copy strong{font-size:15px!important}
  .investment-print-page-1 .investment-report-masthead-copy span{font-size:11px!important}
  .investment-print-page-1 .investment-echo-logo{width:126px!important}
  .investment-print-page-1 .investment-report-hero{grid-template-columns:minmax(0,1fr) 174px!important;gap:16px!important;padding:18px 20px!important;border-radius:0!important;min-height:0!important}
  .investment-print-page-1 .investment-report-hero h1{font-size:25px!important;line-height:1.02!important;margin:6px 0 8px!important}
  .investment-print-page-1 .investment-report-hero p{font-size:11.5px!important;line-height:1.38!important;margin:0!important}
  .investment-print-page-1 .investment-report-investment{padding:13px 14px!important;border-radius:14px!important}
  .investment-print-page-1 .investment-report-investment strong{font-size:27px!important}
  .investment-print-page-1 .investment-report-investment small,.investment-print-page-1 .investment-report-investment span,.investment-print-page-1 .investment-report-investment em{font-size:10.5px!important}
  .investment-print-page-1 .investment-hero-brand-ghost{width:160px!important;height:110px!important;right:148px!important}
  .investment-print-page-1 .investment-opportunity-band{padding:14px 0 12px!important;background:#fff!important}
  .investment-print-page-1 .investment-area-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important}
  .investment-print-page-1 .investment-area-card{min-height:0!important;height:250px!important;padding:9px 7px 0!important;border-radius:11px!important;overflow:hidden!important}
  .investment-print-page-1 .investment-area-icon{width:32px!important;height:32px!important;margin:0 auto 5px!important}
  .investment-print-page-1 .investment-area-icon .app-icon{width:16px!important;height:16px!important}
  .investment-print-page-1 .investment-area-top{justify-content:center!important;gap:5px!important;flex-wrap:wrap!important}
  .investment-print-page-1 .investment-area-name{font-size:12px!important}
  .investment-print-page-1 .investment-level{font-size:8px!important;padding:3px 5px!important}
  .investment-print-page-1 .investment-area-tagline{font-size:8.5px!important;margin:3px 0 5px!important;letter-spacing:.10em!important}
  .investment-print-page-1 .investment-area-card p{font-size:9.5px!important;line-height:1.28!important;margin:0!important;min-height:72px!important}
  .investment-print-page-1 .investment-score-track{height:3px!important;margin:6px auto!important}
  .investment-print-page-1 .investment-area-reason{display:none!important}
  .investment-print-page-1 .investment-area-visual{height:35px!important;margin:7px -7px 0!important}
  .investment-print-page-1 .investment-area-visual span{width:20px!important;height:20px!important}
  .investment-print-page-1 .investment-area-visual b{font-size:7.5px!important}
  .investment-print-page-1 .investment-accessibility{grid-template-columns:44px 1fr 215px!important;gap:12px!important;padding:12px 14px!important;margin:0 0 10px!important;border-radius:12px!important}
  .investment-print-page-1 .investment-accessibility-icon{width:44px!important;height:44px!important}
  .investment-print-page-1 .investment-accessibility h2{font-size:17px!important;margin:2px 0 4px!important}
  .investment-print-page-1 .investment-accessibility p,.investment-print-page-1 .investment-accessibility-points span{font-size:9.5px!important;line-height:1.3!important}
  .investment-print-page-1 .investment-found-wrap{margin-top:8px!important;padding:0!important}
  .investment-print-page-1 .investment-found{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)!important;margin:0!important;padding:14px 16px!important;border-radius:13px!important}
  .investment-print-page-1 .investment-found h2{font-size:20px!important;margin:4px 0 5px!important}
  .investment-print-page-1 .investment-found p{font-size:10px!important;line-height:1.35!important;margin:0!important}
  .investment-print-page-1 .investment-found-stats{gap:8px!important}
  .investment-print-page-1 .investment-found-stats>div{min-width:0!important}
  .investment-print-page-1 .investment-found-stats span{width:28px!important;height:28px!important}
  .investment-print-page-1 .investment-found-stats strong{font-size:17px!important}
  .investment-print-page-1 .investment-found-stats small{font-size:9px!important}
  .investment-print-page-1 .eyebrow{font-size:9px!important}

  /* Page 2 - evidence and investment perspective */
  .investment-print-page-2 .investment-research-strong{padding:0 0 14px!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .investment-print-page-2 .investment-section-intro h2{font-size:22px!important;margin:4px 0 5px!important}
  .investment-print-page-2 .investment-section-intro p{font-size:11px!important;line-height:1.38!important;margin:0!important}
  .investment-print-page-2 .investment-research-grid{grid-template-columns:repeat(3,1fr)!important;gap:9px!important;margin-top:11px!important}
  .investment-print-page-2 .investment-research-grid article{padding:12px!important;border-radius:12px!important}
  .investment-print-page-2 .investment-research-grid article>strong{font-size:25px!important}
  .investment-print-page-2 .investment-research-grid h3{font-size:12px!important;margin:3px 0 5px!important}
  .investment-print-page-2 .investment-research-grid p{font-size:9.5px!important;line-height:1.34!important;margin:0!important}
  .investment-print-page-2 .investment-research-grid small{font-size:8.5px!important;line-height:1.3!important;margin-top:7px!important;padding-top:6px!important}
  .investment-print-page-2 .investment-research-note{font-size:9px!important;line-height:1.3!important;padding:8px 9px!important;margin-top:8px!important}
  .investment-print-page-2 .investment-perspective-v2{display:grid!important;grid-template-columns:1.05fr .95fr!important;margin:0!important;border-top:1px solid #dbe6ea!important;background:#fff!important}
  .investment-print-page-2 .investment-perspective-money{padding:15px 16px!important}
  .investment-print-page-2 .investment-big-number{font-size:31px!important}
  .investment-print-page-2 .investment-perspective-money h2{font-size:18px!important;line-height:1.05!important;margin:4px 0 7px!important}
  .investment-print-page-2 .investment-perspective-money p{font-size:9.5px!important;line-height:1.35!important;margin:0!important}
  .investment-print-page-2 .investment-impact-list{grid-template-columns:1fr 1fr!important;padding:15px 16px!important;gap:7px 10px!important}
  .investment-print-page-2 .impact-dot{width:26px!important;height:26px!important}
  .investment-print-page-2 .impact-dot .app-icon{width:13px!important;height:13px!important}
  .investment-print-page-2 .investment-impact-list b{font-size:9.5px!important;line-height:1.25!important}
  .investment-print-page-2 .investment-perspective-supplement{grid-column:1/-1!important}
  .investment-print-page-2 .investment-break-even{grid-template-columns:1.28fr .72fr!important;gap:12px!important;padding:13px 16px!important}
  .investment-print-page-2 .investment-break-even-answer strong{font-size:34px!important}
  .investment-print-page-2 .investment-break-even-answer span{font-size:14px!important}
  .investment-print-page-2 .investment-break-even-copy p{font-size:9.5px!important;line-height:1.35!important;margin:4px 0!important}
  .investment-print-page-2 .investment-break-even-copy small{font-size:8.5px!important;line-height:1.3!important}
  .investment-print-page-2 .investment-break-even-metrics{gap:6px!important}
  .investment-print-page-2 .investment-break-even-metrics>div{padding:8px 6px!important;border-radius:9px!important}
  .investment-print-page-2 .investment-break-even-metrics strong{font-size:18px!important}
  .investment-print-page-2 .investment-break-even-metrics span{font-size:8px!important}
  .investment-print-page-2 .investment-context-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;padding:0 16px 12px!important}
  .investment-print-page-2 .investment-context-card{padding:8px!important;gap:7px!important;border-radius:9px!important}
  .investment-print-page-2 .context-icon{width:25px!important;height:25px!important}
  .investment-print-page-2 .context-icon .app-icon{width:12px!important;height:12px!important}
  .investment-print-page-2 .investment-context-card strong{font-size:14px!important}
  .investment-print-page-2 .investment-context-card b{font-size:8.5px!important;line-height:1.25!important}
  .investment-print-page-2 .investment-context-card small{font-size:7.5px!important;line-height:1.25!important}
  .investment-print-page-2 .investment-context-card-copy strong{font-size:10px!important}
  .investment-print-page-2 .investment-context-card-copy b{font-size:9px!important}
  .investment-print-page-2 .investment-context-card-copy small{font-size:8px!important;line-height:1.25!important}
  .investment-print-page-2 .eyebrow{font-size:9px!important}

  /* Page 3 - intentional closing page, not leftover web flow */
  .investment-print-page-3{padding:0!important;background:linear-gradient(145deg,#eef8fa 0%,#f7f7fc 58%,#eef3fb 100%)!important}
  .investment-print-closing{box-sizing:border-box;width:100%;height:11in;display:grid;grid-template-rows:auto 1fr auto;padding:.42in .48in;background:linear-gradient(145deg,#eef8fa 0%,#f7f7fc 58%,#eef3fb 100%);color:#12364b;position:relative;overflow:hidden}
  .investment-print-closing:before{content:"";position:absolute;width:5.6in;height:5.6in;border-radius:50%;right:-2.1in;top:1.1in;background:radial-gradient(circle,rgba(28,180,195,.18),rgba(86,72,171,.04) 58%,transparent 72%)}
  .investment-print-closing-top{position:relative;z-index:1;display:grid;grid-template-columns:72px 1fr 126px;gap:14px;align-items:center;padding-bottom:20px;border-bottom:1px solid #cbdde5}
  .investment-print-closing-top .investment-customer-mark{width:70px;height:58px}
  .investment-print-closing-top .investment-customer-logo{max-width:62px;max-height:50px}
  .investment-print-closing-top>div:nth-child(2)>strong{display:block;font-size:17px;color:#17364a}
  .investment-print-closing-top>div:nth-child(2)>span{display:block;margin-top:3px;font-size:10px;color:#6a7e8b}
  .investment-print-closing-top .investment-echo-logo{width:122px}
  .investment-print-closing-main{position:relative;z-index:1;align-self:center;max-width:6.25in;padding:.25in 0}
  .investment-print-closing-main .eyebrow{font-size:10px!important;color:#0a9eae!important}
  .investment-print-closing-main h2{max-width:5.9in;margin:10px 0 15px;font-size:36px;line-height:1.02;color:#123756}
  .investment-print-closing-main p{max-width:5.9in;margin:0;color:#435f70;font-size:15px;line-height:1.5}
  .investment-print-closing-investment{display:inline-grid;margin-top:26px;padding:16px 20px;border:1px solid #c8dce5;border-radius:14px;background:rgba(255,255,255,.78);box-shadow:0 12px 28px rgba(26,72,90,.08)}
  .investment-print-closing-investment span{font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#607685}
  .investment-print-closing-investment strong{font-size:31px;line-height:1;color:#162f61;margin:4px 0}
  .investment-print-closing-investment small{font-size:10px;color:#6d7f89}
  .investment-print-impact-copy{max-width:5.9in;margin-top:28px;padding-top:20px;border-top:3px solid #13a9b8;color:#173c50;font-size:17px;font-weight:750;line-height:1.4}
  .investment-print-closing-bottom{position:relative;z-index:1;display:grid;grid-template-columns:1fr 2.55in;gap:24px;align-items:end;padding-top:18px;border-top:1px solid #cbdde5}
  .investment-print-closing-bottom small{font-size:9.5px;line-height:1.4;color:#6a7e8a}
  .investment-print-brand-lockup{display:grid;justify-items:center;gap:7px;text-align:center}
  .investment-print-brand-lockup img:first-child{width:120px}
  .investment-print-brand-lockup img:last-child{width:126px}
  .investment-print-brand-lockup span{font-size:9px;color:#5b7080}
}

/* V1.10.35 print typography guardrail: ECHO report text never renders below 12px. */
@media print{
  .investment-print-page-1 .investment-report-masthead-copy span,
  .investment-print-page-1 .investment-report-hero p,
  .investment-print-page-1 .investment-report-investment small,
  .investment-print-page-1 .investment-report-investment span,
  .investment-print-page-1 .investment-report-investment em,
  .investment-print-page-1 .investment-level,
  .investment-print-page-1 .investment-area-tagline,
  .investment-print-page-1 .investment-area-card p,
  .investment-print-page-1 .investment-area-visual b,
  .investment-print-page-1 .investment-accessibility p,
  .investment-print-page-1 .investment-accessibility-points span,
  .investment-print-page-1 .investment-found p,
  .investment-print-page-1 .investment-found-stats small,
  .investment-print-page-1 .eyebrow,
  .investment-print-page-2 .investment-section-intro p,
  .investment-print-page-2 .investment-research-grid p,
  .investment-print-page-2 .investment-research-grid small,
  .investment-print-page-2 .investment-research-note,
  .investment-print-page-2 .investment-perspective-money p,
  .investment-print-page-2 .investment-impact-list b,
  .investment-print-page-2 .investment-break-even-copy p,
  .investment-print-page-2 .investment-break-even-copy small,
  .investment-print-page-2 .investment-break-even-metrics span,
  .investment-print-page-2 .investment-context-card b,
  .investment-print-page-2 .investment-context-card small,
  .investment-print-page-2 .investment-context-card-copy strong,
  .investment-print-page-2 .investment-context-card-copy b,
  .investment-print-page-2 .investment-context-card-copy small,
  .investment-print-page-2 .eyebrow,
  .investment-print-closing-top>div:nth-child(2)>span,
  .investment-print-closing-main .eyebrow,
  .investment-print-closing-investment span,
  .investment-print-closing-investment small,
  .investment-print-closing-bottom small,
  .investment-print-brand-lockup span{font-size:12px!important}
  .investment-print-page-1 .investment-area-card p{line-height:1.32!important}
  .investment-print-page-2 .investment-context-card-copy small{line-height:1.3!important}
}

/* V1.10.36 - Shared View management and PDF finishing pass */
.investment-share-close{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;display:grid!important;place-items:center!important;padding:0!important;border-radius:50%!important;right:14px!important;top:14px!important;line-height:1!important;cursor:pointer}
.investment-share-close span{display:block;font-size:28px;line-height:1;transform:translateY(-1px)}
.investment-share-close:hover,.investment-share-close:focus-visible{background:#e8f4f6!important;color:#083d52!important;outline:3px solid rgba(18,169,184,.2)!important;outline-offset:2px}
.estimate-shared-pill{display:inline-flex!important;align-items:center;gap:5px;background:#e6f7f4!important;color:#16735f!important;border:1px solid #bce5db!important}
.estimate-shared-pill .app-icon{width:13px;height:13px}

@media print{
  /* Keep the three-page composition inside the printable Letter box. Exact 11in
     heights can round onto a fourth sheet in Chromium after print scaling. */
  .investment-print-page{height:10.96in!important;min-height:10.96in!important;max-height:10.96in!important}
  .investment-print-page-3{height:10.94in!important;min-height:10.94in!important;max-height:10.94in!important;page-break-after:auto!important;break-after:auto!important;overflow:hidden!important}
  .investment-print-closing{height:10.94in!important;min-height:10.94in!important;max-height:10.94in!important}
  /* Give the five opportunity cards a cleaner, more even print rhythm. */
  .investment-print-page-1 .investment-area-grid{align-items:stretch!important}
  .investment-print-page-1 .investment-area-card{height:238px!important;display:flex!important;flex-direction:column!important}
  .investment-print-page-1 .investment-area-card p{min-height:0!important;flex:1 1 auto!important}
  .investment-print-page-1 .investment-area-visual{margin-top:auto!important}
}


/* V1.10.37 - Dashboard share visibility + PDF pagination repair */
@media print{
  /* The responsive <=1050px rule makes the last opportunity card span two columns.
     Reset it for the fixed five-column PDF composition. */
  .investment-print-page-1 .investment-area-card:last-child{grid-column:auto!important}
  /* The normal ECHO application attribution is outside the report shell and was
     creating an otherwise blank fourth printed page. Page 3 already carries the
     full ECHO/BMG lockup. */
  .echo-attribution{display:none!important}
}

/* V1.10.38 - Share Link dashboard action, return-to-origin, and PDF composition balance */
.estimate-share-link-btn{display:inline-flex!important;align-items:center!important;gap:7px!important;background:#e9f8f8!important;color:#087c8b!important;border:1px solid #79cdd4!important;box-shadow:0 2px 0 rgba(7,124,139,.08)!important;font-weight:800!important}
.estimate-share-link-btn:hover,.estimate-share-link-btn:focus-visible{background:#d8f2f3!important;color:#075e6b!important;border-color:#39aebb!important;box-shadow:0 0 0 3px rgba(18,169,184,.14)!important}
.estimate-share-link-btn .app-icon{width:15px;height:15px}
@media print{
  .investment-print-evidence-bridge{margin-top:auto!important;display:grid!important;grid-template-columns:1fr 1.45fr!important;gap:18px!important;align-items:center!important;padding:13px 16px!important;border-top:1px solid #d8e5e9!important;border-bottom:1px solid #d8e5e9!important;background:linear-gradient(90deg,#f3fafb,#f8f7fc)!important}
  .investment-print-evidence-bridge span{display:block!important;font-size:12px!important;font-weight:850!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:#0a9eae!important}
  .investment-print-evidence-bridge strong{display:block!important;margin-top:3px!important;font-size:18px!important;line-height:1.15!important;color:#18355f!important}
  .investment-print-evidence-bridge p{margin:0!important;font-size:12px!important;line-height:1.4!important;color:#536b79!important}
  .investment-print-page-1>.investment-print-slot>.investment-research-note{display:grid!important;margin:8px 0 0!important;padding:8px 10px!important;font-size:12px!important;line-height:1.35!important;border-radius:8px!important}
  .investment-print-page-2 .investment-research-note{display:none!important}
  .investment-print-page-2 .investment-research-strong{padding-bottom:18px!important}
  .investment-print-page-2 .investment-perspective-v2{margin-top:8px!important;border:1px solid #dbe6ea!important;border-radius:12px!important;overflow:hidden!important}
  .investment-print-strengths{margin-top:26px!important}
  .investment-print-strengths>small{display:block!important;margin-bottom:9px!important;font-size:12px!important;font-weight:850!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#607685!important}
  .investment-print-strengths>div{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .investment-print-strengths span{display:inline-flex!important;align-items:center!important;padding:8px 12px!important;border:1px solid #c7dce4!important;border-radius:999px!important;background:rgba(255,255,255,.72)!important;font-size:12px!important;font-weight:800!important;color:#173c50!important}
  .investment-print-closing-main{max-width:6.55in!important}
  .investment-print-closing-main h2,.investment-print-closing-main p,.investment-print-impact-copy{max-width:6.2in!important}
}

/* V1.10.39 - Final PDF design pass: clean Page 1 ending and premium closing page */
@media print{
  /* Page 1 now ends cleanly with the project profile. Research begins on Page 2. */
  .investment-print-page-1 .investment-found-wrap{margin-top:12px!important}

  /* Restore the benchmark explanation to the page where the research actually lives. */
  .investment-print-page-2 .investment-research-note{display:grid!important;margin-top:10px!important}

  /* Page 3 becomes a true brand/customer closing moment rather than a sparse text page. */
  .investment-print-closing-main{
    width:100%!important;
    max-width:none!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.35fr) minmax(2.05in,.65fr)!important;
    gap:.36in!important;
    align-items:center!important;
    padding:.18in 0!important;
  }
  .investment-print-closing-copy{position:relative;z-index:2}
  .investment-print-closing-main h2{max-width:5.1in!important;font-size:34px!important}
  .investment-print-closing-main p{max-width:5.05in!important;font-size:14px!important;line-height:1.48!important}
  .investment-print-impact-copy{max-width:5.05in!important;margin-top:24px!important;font-size:16px!important}
  .investment-print-strengths{margin-top:22px!important}
  .investment-print-strengths>div{gap:7px!important}
  .investment-print-strengths span{padding:7px 10px!important}
  .investment-print-closing-visual{
    position:relative;
    align-self:stretch;
    min-height:4.75in;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:.28in .2in;
    border:1px solid rgba(92,147,166,.28);
    border-radius:22px;
    background:linear-gradient(155deg,rgba(255,255,255,.88),rgba(226,246,247,.72) 55%,rgba(236,232,252,.64));
    box-shadow:0 18px 42px rgba(25,74,95,.08);
    overflow:hidden;
  }
  .investment-print-closing-visual:before,
  .investment-print-closing-visual:after{
    content:"";
    position:absolute;
    border-radius:50%;
    pointer-events:none;
  }
  .investment-print-closing-visual:before{width:2.3in;height:2.3in;right:-.8in;top:-.65in;background:rgba(20,172,188,.10)}
  .investment-print-closing-visual:after{width:2.6in;height:2.6in;left:-1.05in;bottom:-1in;background:rgba(93,76,187,.08)}
  .investment-print-closing-visual-mark{
    position:relative;
    z-index:1;
    width:1.78in;
    height:1.42in;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    padding:12px;
    border-radius:20px;
    background:rgba(255,255,255,.92);
    box-shadow:0 12px 28px rgba(22,66,87,.10);
  }
  .investment-print-closing-visual-mark .investment-customer-logo{max-width:1.5in!important;max-height:1.16in!important;width:auto!important;height:auto!important}
  .investment-print-closing-visual-mark .investment-customer-fallback{font-size:28px!important}
  .investment-print-closing-visual>strong{position:relative;z-index:1;max-width:2in;font-size:17px!important;line-height:1.2;color:#173753}
  .investment-print-closing-visual>span{position:relative;z-index:1;max-width:1.9in;margin-top:9px;font-size:12px!important;line-height:1.4;color:#647987}
  .investment-print-closing-bottom{padding-top:14px!important}
}

/* V1.10.40 - PDF paper-first composition: stacked opportunity bands + stronger closing synthesis */
@media print{
  /* Keep decorative hero artwork strictly inside the hero. The PDF should never
     allow screen-layer pseudo-elements or the customer ghost mark to bleed into
     the white paper composition. */
  .investment-print-page-1,
  .investment-print-page-2{background:#fff!important;isolation:isolate!important}
  .investment-print-page-1 .investment-report-hero{
    overflow:hidden!important;
    contain:paint!important;
    isolation:isolate!important;
    background:linear-gradient(110deg,#063846 0%,#0a5968 50%,#192d58 100%)!important;
  }
  .investment-print-page-1 .investment-report-hero:before,
  .investment-print-page-1 .investment-report-hero:after,
  .investment-print-page-1 .investment-hero-brand-ghost{display:none!important}

  /* Page 1 is now designed vertically for paper instead of shrinking the five
     screen cards into narrow columns. */
  .investment-print-page-1 .investment-opportunity-band{
    padding:10px 0 8px!important;
    background:#fff!important;
  }
  .investment-print-page-1 .investment-area-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  .investment-print-page-1 .investment-area-card,
  .investment-print-page-1 .investment-area-card:last-child{
    grid-column:auto!important;
    box-sizing:border-box!important;
    width:100%!important;
    height:auto!important;
    min-height:72px!important;
    display:grid!important;
    grid-template-columns:44px 1.08in minmax(0,1fr) 1.62in!important;
    grid-template-rows:auto auto!important;
    column-gap:12px!important;
    row-gap:2px!important;
    align-items:center!important;
    padding:9px 12px!important;
    text-align:left!important;
    border-radius:10px!important;
    overflow:hidden!important;
    box-shadow:none!important;
  }
  .investment-print-page-1 .investment-area-icon{
    grid-column:1!important;
    grid-row:1 / 3!important;
    width:38px!important;
    height:38px!important;
    margin:0!important;
  }
  .investment-print-page-1 .investment-area-icon .app-icon{width:18px!important;height:18px!important}
  .investment-print-page-1 .investment-area-top{
    grid-column:2!important;
    grid-row:1!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:5px!important;
  }
  .investment-print-page-1 .investment-area-name{font-size:16px!important;line-height:1.05!important}
  .investment-print-page-1 .investment-level{font-size:12px!important;padding:3px 6px!important}
  .investment-print-page-1 .investment-area-tagline{
    grid-column:2!important;
    grid-row:2!important;
    margin:0!important;
    font-size:12px!important;
    line-height:1.15!important;
    letter-spacing:.08em!important;
  }
  .investment-print-page-1 .investment-area-card p{
    grid-column:3!important;
    grid-row:1 / 3!important;
    align-self:center!important;
    margin:0!important;
    min-height:0!important;
    font-size:12.5px!important;
    line-height:1.34!important;
  }
  .investment-print-page-1 .investment-score-track,
  .investment-print-page-1 .investment-area-reason{display:none!important}
  .investment-print-page-1 .investment-area-visual{
    grid-column:4!important;
    grid-row:1 / 3!important;
    align-self:stretch!important;
    height:auto!important;
    min-height:48px!important;
    margin:-9px -12px -9px 0!important;
    padding:8px 10px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:7px!important;
  }
  .investment-print-page-1 .investment-area-visual span{width:27px!important;height:27px!important}
  .investment-print-page-1 .investment-area-visual .app-icon{width:13px!important;height:13px!important}
  .investment-print-page-1 .investment-area-visual b{font-size:12px!important;line-height:1.15!important}

  /* Give the Project Opportunity Profile a real container budget and prevent any
     copy/stat overflow in browser print engines. */
  .investment-print-page-1 .investment-found-wrap{
    margin-top:8px!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .investment-print-page-1 .investment-found{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.2fr) minmax(2.45in,.8fr)!important;
    gap:18px!important;
    align-items:center!important;
    margin:0!important;
    padding:14px 16px!important;
    overflow:hidden!important;
  }
  .investment-print-page-1 .investment-found>div{min-width:0!important}
  .investment-print-page-1 .investment-found p{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    font-size:12px!important;
    line-height:1.35!important;
  }
  .investment-print-page-1 .investment-found-stats{
    min-width:0!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .investment-print-page-1 .investment-found-stats>div{
    min-width:0!important;
    grid-template-columns:auto 1fr!important;
  }
  .investment-print-page-1 .investment-found-stats small{font-size:12px!important}

  /* Keep Page 2 neutral and self-contained. */
  .investment-print-page-2 .investment-research-strong,
  .investment-print-page-2 .investment-perspective-v2{position:relative!important;z-index:1!important;background-clip:padding-box!important}

  /* Page 3 now closes with the six business outcomes already established in the
     report, so the page gains substance without inventing new claims. */
  .investment-print-closing-main{
    align-self:stretch!important;
    grid-template-columns:minmax(0,1.3fr) minmax(2.0in,.7fr)!important;
    gap:.32in!important;
    padding:.15in 0 .08in!important;
  }
  .investment-print-closing-copy{align-self:start!important;padding-top:.05in!important}
  .investment-print-closing-main h2{font-size:31px!important;margin:8px 0 11px!important}
  .investment-print-closing-main p{font-size:13px!important;line-height:1.43!important}
  .investment-print-closing-investment{margin-top:18px!important;padding:13px 17px!important}
  .investment-print-impact-copy{margin-top:18px!important;padding-top:14px!important;font-size:15px!important;line-height:1.34!important}
  .investment-print-strengths{margin-top:15px!important}
  .investment-print-strengths>small,
  .investment-print-outcomes>small{
    display:block!important;
    margin-bottom:8px!important;
    font-size:12px!important;
    font-weight:850!important;
    letter-spacing:.1em!important;
    text-transform:uppercase!important;
    color:#607685!important;
  }
  .investment-print-strengths span{padding:6px 9px!important;font-size:12px!important}
  .investment-print-outcomes{margin-top:18px!important;padding-top:14px!important;border-top:1px solid #cbdde5!important}
  .investment-print-outcomes-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px 13px!important;
  }
  .investment-print-outcomes-grid>div{
    min-width:0!important;
    display:grid!important;
    grid-template-columns:28px 1fr!important;
    gap:8px!important;
    align-items:center!important;
  }
  .investment-print-outcomes-grid .impact-dot{width:28px!important;height:28px!important}
  .investment-print-outcomes-grid .impact-dot .app-icon{width:13px!important;height:13px!important}
  .investment-print-outcomes-grid b{font-size:12px!important;line-height:1.22!important;color:#173c50!important}
  .investment-print-closing-visual{min-height:4.35in!important;padding:.22in .18in!important}
  .investment-print-closing-bottom{padding-top:10px!important}
}

/* V1.10.41 - PDF alignment, containment, and closing-panel polish */
@media print{
  /* Chromium can paint gradients outside fragmented print boxes. Use a solid
     print hero so Page 1 artwork cannot ghost onto Page 2. */
  .investment-print-page-1 .investment-report-hero{
    background:#0a5261!important;
    background-image:none!important;
    overflow:hidden!important;
    clip-path:inset(0)!important;
    contain:layout paint!important;
  }
  .investment-print-page-1 .investment-report-hero *,
  .investment-print-page-2 *{background-attachment:scroll!important}
  .investment-print-page-2{background:#fff!important;background-image:none!important}

  /* Give Page 1 a little more vertical rhythm while keeping every opportunity
     row on a shared alignment grid. */
  .investment-print-page-1 .investment-opportunity-band{padding:13px 0 11px!important}
  .investment-print-page-1 .investment-area-grid{gap:9px!important}
  .investment-print-page-1 .investment-area-card,
  .investment-print-page-1 .investment-area-card:last-child{
    min-height:78px!important;
    grid-template-columns:44px 1.12in 76px minmax(0,1fr) 1.55in!important;
    grid-template-rows:1fr!important;
    column-gap:11px!important;
    padding:10px 12px!important;
  }
  .investment-print-page-1 .investment-area-icon{
    grid-column:1!important;grid-row:1!important;align-self:center!important;
  }
  .investment-print-page-1 .investment-area-top{
    grid-column:2 / 4!important;grid-row:1!important;
    display:grid!important;grid-template-columns:1.12in 76px!important;
    gap:8px!important;align-items:center!important;align-self:center!important;
  }
  .investment-print-page-1 .investment-area-name{
    grid-column:1!important;white-space:nowrap!important;text-align:left!important;
  }
  .investment-print-page-1 .investment-level{
    grid-column:2!important;justify-self:start!important;min-width:62px!important;
    box-sizing:border-box!important;text-align:center!important;
  }
  .investment-print-page-1 .investment-area-tagline{
    grid-column:5!important;grid-row:1!important;align-self:center!important;
    margin:0!important;text-align:left!important;font-size:12px!important;
    line-height:1.18!important;letter-spacing:.065em!important;
  }
  .investment-print-page-1 .investment-area-card p{
    grid-column:4!important;grid-row:1!important;align-self:center!important;
    padding:0 4px!important;
  }
  .investment-print-page-1 .investment-area-visual{
    display:none!important;
  }

  /* The profile metrics own fixed columns. Long labels such as Estimated Hours
     wrap inside their cell instead of increasing the grid width. */
  .investment-print-page-1 .investment-found-wrap{margin-top:11px!important}
  .investment-print-page-1 .investment-found{
    grid-template-columns:minmax(0,1fr) 2.65in!important;
    gap:14px!important;padding:15px 16px!important;
  }
  .investment-print-page-1 .investment-found-stats{
    width:2.65in!important;max-width:2.65in!important;
    grid-template-columns:repeat(3,minmax(0,.883in))!important;gap:5px!important;
  }
  .investment-print-page-1 .investment-found-stats>div{
    width:auto!important;max-width:.883in!important;box-sizing:border-box!important;
    display:grid!important;grid-template-columns:25px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;column-gap:5px!important;
    padding:7px 5px!important;overflow:hidden!important;
  }
  .investment-print-page-1 .investment-found-stats span{
    grid-row:1 / 3!important;width:25px!important;height:25px!important;
  }
  .investment-print-page-1 .investment-found-stats strong{
    min-width:0!important;font-size:16px!important;line-height:1!important;
  }
  .investment-print-page-1 .investment-found-stats small{
    min-width:0!important;max-width:100%!important;font-size:12px!important;
    line-height:1.05!important;white-space:normal!important;overflow-wrap:anywhere!important;
  }

  /* Page 3: open up the left narrative and make the customer panel feel like an
     intentional visual anchor rather than unused space. */
  .investment-print-closing-main{gap:.38in!important;padding:.22in 0 .12in!important}
  .investment-print-closing-copy{padding-top:.12in!important}
  .investment-print-closing-main h2{margin:12px 0 15px!important;line-height:1.08!important}
  .investment-print-closing-main p{line-height:1.52!important}
  .investment-print-closing-investment{margin-top:24px!important;padding:15px 18px!important}
  .investment-print-impact-copy{margin-top:24px!important;padding-top:17px!important}
  .investment-print-strengths{margin-top:20px!important}
  .investment-print-outcomes{margin-top:23px!important;padding-top:17px!important}
  .investment-print-outcomes-grid{gap:12px 14px!important}
  .investment-print-closing-visual{
    position:relative!important;overflow:hidden!important;isolation:isolate!important;
    min-height:4.65in!important;padding:.32in .22in!important;
    background:#f2f8fa!important;background-image:none!important;
    border:1px solid #c8dfe5!important;
  }
  .investment-print-closing-visual:before{
    content:""!important;display:block!important;position:absolute!important;
    z-index:0!important;width:3.2in!important;height:3.2in!important;
    right:-1.35in!important;top:-.95in!important;border-radius:50%!important;
    background:rgba(18,166,181,.11)!important;
  }
  .investment-print-closing-visual:after{
    content:""!important;display:block!important;position:absolute!important;
    z-index:0!important;width:2.8in!important;height:2.8in!important;
    left:-1.25in!important;bottom:-.9in!important;border-radius:50%!important;
    background:rgba(91,72,194,.075)!important;
  }
  .investment-print-closing-visual-mark,
  .investment-print-closing-visual>strong,
  .investment-print-closing-visual>span{position:relative!important;z-index:2!important}
  .investment-print-closing-visual-mark{
    box-shadow:0 12px 30px rgba(20,69,88,.08)!important;
    border:1px solid rgba(29,142,157,.16)!important;
  }
}

/* V1.10.42 - PDF opportunity-row spacing + solid print surfaces */
@media print{
  /* Page 1: give each opportunity row a little more room and restore the
     colored outcome end-cap used by the screen report. */
  .investment-print-page-1 .investment-area-grid{gap:10px!important}
  .investment-print-page-1 .investment-area-card,
  .investment-print-page-1 .investment-area-card:last-child{
    min-height:88px!important;
    grid-template-columns:44px 1.02in 84px minmax(0,1fr) 1.50in!important;
    column-gap:12px!important;
    padding:11px 12px!important;
    overflow:hidden!important;
  }
  .investment-print-page-1 .investment-area-top{
    grid-column:2 / 4!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:1.02in 84px!important;
    gap:10px!important;
    align-items:center!important;
    align-self:center!important;
    min-width:0!important;
  }
  .investment-print-page-1 .investment-area-name{
    grid-column:1!important;
    min-width:0!important;
    text-align:left!important;
    white-space:nowrap!important;
    font-size:14px!important;
  }
  .investment-print-page-1 .investment-level{
    grid-column:2!important;
    justify-self:start!important;
    min-width:72px!important;
    max-width:80px!important;
    box-sizing:border-box!important;
    padding:4px 7px!important;
    font-size:9px!important;
    line-height:1.1!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  .investment-print-page-1 .investment-area-card p{
    grid-column:4!important;
    grid-row:1!important;
    align-self:center!important;
    min-width:0!important;
    padding:0 3px!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.36!important;
  }
  .investment-print-page-1 .investment-area-tagline{display:none!important}
  .investment-print-page-1 .investment-area-visual{
    grid-column:5!important;
    grid-row:1!important;
    align-self:stretch!important;
    box-sizing:border-box!important;
    height:auto!important;
    min-height:66px!important;
    margin:-11px -12px -11px 0!important;
    padding:10px 11px!important;
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:8px!important;
    text-align:left!important;
    border-radius:0 9px 9px 0!important;
  }
  .investment-print-page-1 .investment-area-visual span{
    flex:0 0 auto!important;
    width:28px!important;
    height:28px!important;
  }
  .investment-print-page-1 .investment-area-visual .app-icon{width:14px!important;height:14px!important}
  .investment-print-page-1 .investment-area-visual b{
    min-width:0!important;
    font-size:11px!important;
    line-height:1.2!important;
    text-align:left!important;
  }

  /* Profile stats: never split words inside the three metric cells. */
  .investment-print-page-1 .investment-found-stats small{
    font-size:11px!important;
    line-height:1.12!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  .investment-print-page-1 .investment-found-stats strong{font-size:17px!important}

  /* Print engines have been leaking gradient/radial layers across page
     boundaries. Use explicit solid surfaces on pages 2 and 3. */
  .investment-print-page-2,
  .investment-print-page-2 .investment-research-strong,
  .investment-print-page-2 .investment-perspective-v2,
  .investment-print-page-3,
  .investment-print-closing{
    background-image:none!important;
  }
  .investment-print-page-2 .investment-research-strong{background:#fff!important}
  .investment-print-page-2 .investment-research-grid article{background:#f8fcfc!important}
  .investment-print-page-2 .investment-research-grid article:nth-child(2){background:#f4fbf4!important}
  .investment-print-page-2 .investment-research-grid article:nth-child(3){background:#f7f3ff!important}
  .investment-print-page-2 .investment-research-note{background:#f0f5f7!important}
  .investment-print-page-2 .investment-perspective-v2{background:#fff!important}
  .investment-print-page-2 .investment-perspective-supplement{background:#eef8fa!important}
  .investment-print-page-2:before,
  .investment-print-page-2:after,
  .investment-print-page-2 .investment-research-strong:before,
  .investment-print-page-2 .investment-research-strong:after,
  .investment-print-page-2 .investment-research-grid article:before,
  .investment-print-page-2 .investment-research-grid article:after{display:none!important;content:none!important}

  /* Page 3: keep the improved spacing, but replace the floating circles with
     a restrained branded panel so the customer mark looks intentional. */
  .investment-print-page-3{background:#f5f9fb!important}
  .investment-print-closing{background:#f5f9fb!important}
  .investment-print-closing:before,
  .investment-print-closing:after,
  .investment-print-closing-visual:before,
  .investment-print-closing-visual:after{display:none!important;content:none!important}
  .investment-print-closing-visual{
    background:#eef7f9!important;
    background-image:none!important;
    border:1px solid #c8dfe5!important;
    border-top:8px solid #17a9b6!important;
    box-shadow:0 14px 34px rgba(28,73,91,.07)!important;
  }
  .investment-print-closing-visual-mark{
    background:#fff!important;
    box-shadow:0 12px 26px rgba(20,69,88,.09)!important;
  }
}

/* V1.10.43 - PDF shadow cleanup + equal opportunity row spacing */
@media print{
  /* Chromium rasterizes CSS shadows into soft bitmap layers in printed PDFs.
     Remove shadows throughout the dedicated report composition so those
     apparent background images cannot bleed or float behind later sections. */
  .investment-print-page,
  .investment-print-page *,
  .investment-print-closing,
  .investment-print-closing *{
    box-shadow:none!important;
    filter:none!important;
    text-shadow:none!important;
  }

  /* Page 1: one exact vertical rhythm for all five stacked opportunity bands. */
  .investment-print-page-1 .investment-area-grid{
    row-gap:14px!important;
    column-gap:0!important;
    margin:0!important;
  }
  .investment-print-page-1 .investment-area-card,
  .investment-print-page-1 .investment-area-card:last-child{
    min-height:92px!important;
    margin:0!important;
    padding:12px!important;
  }
  .investment-print-page-1 .investment-area-visual{
    margin:-12px -12px -12px 0!important;
    min-height:68px!important;
  }

  /* Give the profile metrics a little more horizontal budget while keeping the
     copy side flexible. */
  .investment-print-page-1 .investment-found{
    grid-template-columns:minmax(0,1fr) 2.82in!important;
  }
  .investment-print-page-1 .investment-found-stats{
    width:2.82in!important;
    max-width:2.82in!important;
    grid-template-columns:repeat(3,minmax(0,.94in))!important;
  }
  .investment-print-page-1 .investment-found-stats>div{
    max-width:.94in!important;
    padding:7px 6px!important;
  }

  /* Explicitly flatten any remaining decorative print surfaces. */
  .investment-print-page-1,
  .investment-print-page-2,
  .investment-print-page-3,
  .investment-print-page-1 .investment-report-hero,
  .investment-print-page-2 .investment-research-strong,
  .investment-print-page-2 .investment-research-grid article,
  .investment-print-page-2 .investment-research-note,
  .investment-print-page-2 .investment-perspective-v2,
  .investment-print-page-2 .investment-perspective-supplement,
  .investment-print-closing,
  .investment-print-closing-visual,
  .investment-print-closing-visual-mark{
    background-image:none!important;
  }
}

/* V1.10.44 - PDF final Page 1 opportunity band spacing */
@media print{
  /* Chromium has been inconsistent about honoring grid row-gap in the dedicated
     print composition. Use explicit block flow + sibling margins so the five
     opportunity bands have exactly the same visible separation on paper. */
  .investment-print-page-1 .investment-area-grid{
    display:block!important;
    margin:0!important;
    padding:0!important;
    gap:0!important;
    row-gap:0!important;
  }
  .investment-print-page-1 .investment-area-card,
  .investment-print-page-1 .investment-area-card:last-child{
    display:grid!important;
    width:100%!important;
    min-height:92px!important;
    margin:0 0 14px 0!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }
  .investment-print-page-1 .investment-area-card:last-child{
    margin-bottom:0!important;
  }
}

/* v1.10.46 - Reports dashboard */
.reports-dashboard-hero{margin-bottom:22px}
.reports-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:22px}
.reports-dashboard-controls{grid-template-columns:minmax(260px,1fr) minmax(300px,460px) auto;align-items:end}
.reports-filter-tabs{grid-column:auto}
.report-dashboard-row .report-type-pill{background:#e9f8fb;color:#087f91;border:1px solid #bde7ed}
.report-dashboard-row .report-private-pill{background:#f2f5f7;color:#5d7180;border:1px solid #dbe4e8}
.report-dashboard-row .estimate-share-link-btn{border-color:#56c8d3;background:#eefbfc;color:#087f91}
.report-dashboard-row .estimate-share-link-btn:hover{background:#dff7f9;border-color:#25adbb;color:#056c7a}
.report-dashboard-row .row-actions .btn{white-space:nowrap}
@media(max-width:980px){.reports-kpi-grid{grid-template-columns:1fr}.reports-dashboard-controls{grid-template-columns:1fr}.reports-filter-tabs{justify-self:start}}

/* =========================================================
   V1.10.47 - Reports Dashboard parity + validity visibility
   ========================================================= */
.reports-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.reports-dashboard-controls{
    grid-template-columns:minmax(280px,1fr) minmax(300px,460px);
    align-items:end;
}
.reports-dashboard-controls .reports-filter-tabs{grid-column:1/-1;}
.reports-dashboard-controls .dashboard-people-tools{grid-column:1/2;}
.reports-dashboard-controls .dashboard-page-size{grid-column:2/3;grid-row:auto;align-self:end;}
.reports-dashboard-section .estimate-section-head{
    background:linear-gradient(115deg,#06283f 0%,#0b425b 68%,#08737b 100%);
    border-left:5px solid #22b9c4;
}
.reports-dashboard-section .estimate-section-head:after{
    background:radial-gradient(circle,rgba(42,199,190,.30),rgba(42,199,190,0) 68%);
}
.reports-dashboard-section .estimate-section-head .eyebrow{color:#82e3e8;}
.reports-dashboard-section .estimate-section-head h2{color:#fff;}
.reports-dashboard-section .estimate-section-head p{color:#cce0e7;max-width:850px;}
.report-dashboard-row:before{
    content:"";
    position:absolute;
    inset:0 auto 0 0;
    width:5px;
    background:linear-gradient(180deg,#1ab5c3,#34bd91);
    border-radius:18px 0 0 18px;
    z-index:2;
}
.report-dashboard-row .estimate-row-main{padding-left:24px;}
.report-dashboard-row .estimate-row-identity{flex:1 1 auto;}
.report-dashboard-row .report-date-strip{padding-left:0;padding-right:0;margin-top:8px;border-top:0;background:transparent;gap:9px 20px;}
.report-dashboard-row .report-date-strip span{padding-right:18px;border-right:1px solid #dbe7ea;}
.report-dashboard-row .report-date-strip span:last-child{padding-right:0;border-right:0;}
.report-expiring-pill{background:#fff4d9!important;color:#8b5d08!important;border:1px solid #efd08b!important;}
.report-expired-pill{background:#fff0f0!important;color:#a23d3d!important;border:1px solid #efbcbc!important;}
.report-valid-pill{background:#eef6f8!important;color:#56707f!important;border:1px solid #d5e3e7!important;}
.reports-load-more-wrap{margin-top:-8px;}
@media(max-width:1100px){
    .reports-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:820px){
    .reports-dashboard-controls{grid-template-columns:1fr;}
    .reports-dashboard-controls .reports-filter-tabs,
    .reports-dashboard-controls .dashboard-people-tools,
    .reports-dashboard-controls .dashboard-page-size{grid-column:1;}
    .reports-dashboard-controls .dashboard-page-size{justify-self:start;}
}
@media(max-width:520px){.reports-kpi-grid{grid-template-columns:1fr;}}

/* V1.10.48 - Unified popup close-control hit area
   Render the X as a non-interactive pseudo-element so the button remains the
   pointer target across the full control, including directly over the glyph. */
.feedback-close,
.timeline-date-close,
.timeline-inline-close{
    flex:0 0 auto;
    padding:0;
    overflow:visible;
    font-size:0!important;
    line-height:1;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
}
.feedback-close::before,
.timeline-date-close::before,
.timeline-inline-close::before{
    content:"\00d7";
    display:block;
    pointer-events:none;
    user-select:none;
    font-size:22px;
    font-weight:400;
    line-height:1;
    transform:translateY(-1px);
}
.feedback-close > *,
.timeline-date-close > *,
.timeline-inline-close > *{
    pointer-events:none!important;
}
.feedback-close:focus-visible,
.timeline-date-close:focus-visible,
.timeline-inline-close:focus-visible{
    outline:3px solid rgba(18,169,184,.22);
    outline-offset:2px;
}
.timeline-date-close:hover,
.timeline-date-close:focus-visible{
    background:#edf5f6;
    border-color:#bdd7dc;
    color:var(--navy);
}
.timeline-inline-close::before{font-size:20px}
.investment-share-close::before{font-size:28px}
.investment-share-close > span{display:none!important}


/* V1.10.49 - Close control position correction
   V1.10.48 accidentally overrode the feedback/share close button's absolute
   positioning. Keep each control's original positioning while preserving the
   unified pointer-safe X hit area. */

/* V1.10.50 Better Proposals API foundation */
.bp-integration-card{margin-bottom:22px;overflow:hidden}
.bp-integration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.bp-integration-grid>div{padding:16px 18px;border:1px solid #d9e7eb;border-radius:14px;background:#f7fbfc;display:flex;flex-direction:column;gap:4px;min-width:0}
.bp-integration-grid span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#557080}
.bp-integration-grid strong{font-size:17px;color:#0c2b3d}
.bp-integration-grid small{font-size:12px;color:#637989;overflow-wrap:anywhere}
.bp-integration-actions{display:flex;align-items:center;gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid #e3edf0}
.bp-integration-actions form{margin:0}
.bp-template-inventory{margin-top:16px;border:1px solid #d8e7eb;border-radius:14px;background:#fff}
.bp-template-inventory>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;font-size:13px;color:#294c5d}
.bp-template-inventory>summary::-webkit-details-marker{display:none}
.bp-template-inventory>summary span:first-child{display:flex;flex-direction:column;gap:2px}
.bp-template-inventory>summary b{font-size:14px;color:#0d3042}
.bp-template-inventory>summary small{font-size:12px;color:#6a7f8c}
.bp-template-inventory-list{border-top:1px solid #e3edf0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.bp-template-inventory-list>div{display:flex;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid #edf3f5;min-width:0}
.bp-template-inventory-list strong{font-size:13px;color:#17394a;overflow-wrap:anywhere}
.bp-template-inventory-list code{font-size:12px;color:#557080;background:#edf5f7;border-radius:6px;padding:2px 6px;white-space:nowrap}
@media(max-width:900px){.bp-integration-grid{grid-template-columns:1fr}.bp-template-inventory-list{grid-template-columns:1fr}.bp-integration-actions{align-items:flex-start;flex-direction:column}}

/* V1.10.51 - Better Proposals live template mapping */
.status-mapped{background:#e8f7fb;color:#087887!important}
.bp-template-mapper{min-width:0}
.bp-template-mapper>label{display:grid;gap:6px}
.bp-template-search-wrap{position:relative;display:flex;align-items:center}
.bp-template-search-wrap svg{position:absolute;left:13px;width:17px;height:17px;color:#64808f;pointer-events:none}
.bp-template-search-wrap input{width:100%;padding-left:40px!important;background:#f8fbfc!important}
.bp-template-select{width:100%;margin-top:2px}
.bp-template-mapper code{font-size:12px;padding:2px 6px;border-radius:6px;background:#edf5f7;color:#315767;font-weight:800}
@media(max-width:720px){.bp-template-search-wrap input,.bp-template-select{width:100%}}

/* V1.10.53 - Better Proposals active-template filtering + direct ID mapping */
.bp-template-id-input{font-variant-numeric:tabular-nums;letter-spacing:.02em}
.bp-template-or{display:flex;align-items:center;gap:10px;margin:2px 0 4px;color:#6a7f8c;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.bp-template-or:before,.bp-template-or:after{content:"";height:1px;background:#dce8ec;flex:1}
.bp-template-or span{white-space:nowrap}
@media(max-width:720px){.bp-template-or span{white-space:normal;text-align:center}}


/* V1.10.54 Better Proposals live creation */
.bp-create-panel{margin-top:16px;padding:18px;border:1px solid #bcdbe0;border-radius:16px;background:linear-gradient(135deg,#f2fbfb,#f8fbfc);box-shadow:0 10px 24px rgba(17,57,73,.06)}
.bp-create-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.bp-create-panel h4{margin:3px 0 5px;font-size:20px;color:#102f45}.bp-create-panel p{margin:0;color:#5b7180;line-height:1.5}.bp-create-summary,.bp-created-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.bp-create-summary>div,.bp-created-meta>div{padding:12px 14px;border:1px solid #cfe2e6;border-radius:12px;background:#fff}.bp-create-summary span,.bp-created-meta span{display:block;margin-bottom:4px;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#5d7482}.bp-create-summary strong,.bp-created-meta strong{display:block;font-size:14px;color:#12364c;overflow-wrap:anywhere}.bp-contact-details{margin:12px 0;border:1px solid #cfe2e6;border-radius:12px;background:#fff}.bp-contact-details>summary{display:flex;justify-content:space-between;gap:14px;padding:12px 14px;cursor:pointer;font-weight:800;color:#14384e}.bp-contact-details>summary span{font-size:12px;color:#718793;font-weight:700}.bp-contact-grid{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:12px;padding:0 14px 12px}.bp-contact-grid label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#284f64}.bp-contact-grid input{min-height:42px}.bp-contact-details>small{display:block;padding:0 14px 14px;color:#667e8c}.bp-create-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:14px;border-top:1px solid #d4e5e8}.bp-create-actions>span{font-size:12px;color:#5d7482}.bp-create-panel-warning{border-color:#e2d6b3;background:#fffaf0}.bp-created-panel{border-color:#b8d8c7;background:linear-gradient(135deg,#f1faf5,#f8fbfa)}.bp-create-retry-note{display:grid;gap:3px;margin:12px 0;padding:10px 12px;border:1px solid #efc6c1;border-radius:10px;background:#fff5f4;color:#8f3d34}.bp-create-panel code{font-size:12px}.bp-created-panel>.btn{margin-top:4px}
@media(max-width:900px){.bp-create-summary,.bp-created-meta,.bp-contact-grid{grid-template-columns:1fr}.bp-create-panel-head,.bp-create-actions{align-items:stretch;flex-direction:column}.bp-create-actions .btn{width:100%;justify-content:center}}

/* V1.10.55 Better Proposals handoff workflow clarity */
#proposal-contract{scroll-margin-top:92px}
#better-proposals-handoff{scroll-margin-top:110px}
.better-proposals-status-badge{cursor:default;pointer-events:none;box-shadow:none!important;text-decoration:none!important}
.proposal-route-actions{position:sticky;bottom:10px;z-index:4}
.proposal-route-actions .btn{white-space:normal;text-align:center;min-width:240px}
.bp-create-ready-panel{border-color:#65c5ce;box-shadow:0 14px 34px rgba(11,130,144,.12)}
.bp-create-ready-panel:before{content:"Route confirmed";display:inline-flex;margin-bottom:10px;padding:5px 9px;border-radius:999px;background:#e7f7f8;color:#087c89;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:760px){.proposal-route-actions{position:static}.proposal-route-actions .btn{min-width:0;width:100%}}

/* V1.10.56 - Estimate Next Steps + Better Proposals guided handoff */
.bp-route-complete{display:flex;align-items:center;gap:14px;margin:4px 0 16px;padding:14px 16px;border:1px solid #b8d8c7;border-radius:14px;background:linear-gradient(90deg,#f0faf5,#f8fbfa)}
.bp-route-complete-check{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#3f786b;color:#fff;font-size:20px;font-weight:900}
.bp-route-complete>div:last-child{display:grid;gap:2px}.bp-route-complete span{font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:#4d7c70}.bp-route-complete strong{font-size:16px;color:#102f45}.bp-route-complete small{font-size:12px;color:#617986}
.bp-create-ready-panel{position:relative;margin-top:8px!important;padding:24px!important;border:2px solid #18a9b8!important;background:linear-gradient(135deg,#edfafa 0%,#fff 72%)!important;box-shadow:0 18px 42px rgba(11,130,144,.16)!important;scroll-margin-top:24px}
.bp-create-ready-panel:before{display:none!important}
.bp-step-label{display:inline-flex;align-items:center;margin-bottom:7px;padding:6px 10px;border-radius:999px;background:#dff5f7;color:#087d8a;font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.bp-create-ready-panel h4{font-size:24px!important;margin:3px 0 6px!important}
.bp-ready-pill{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;flex:0 0 auto;padding:8px 13px;border-radius:999px;background:#fff0e7;color:#a94f1f;font-size:12px;font-weight:900}
.bp-created-panel{padding:22px!important;border:2px solid #93cbb0!important;box-shadow:0 14px 32px rgba(42,119,82,.1)!important}.bp-created-panel h4{font-size:23px!important}
.bp-creation-progress{position:absolute;inset:0;z-index:8;display:flex;flex-direction:column;justify-content:center;gap:18px;padding:28px;border-radius:14px;background:rgba(246,252,252,.97);backdrop-filter:blur(2px)}
.bp-progress-copy{display:grid;gap:5px;text-align:center}.bp-progress-copy strong{font-size:20px;color:#10364c}.bp-progress-copy span{font-size:13px;color:#5d7482}
.bp-progress-track{height:9px;overflow:hidden;border-radius:999px;background:#d7e8eb}.bp-progress-track span{display:block;width:36%;height:100%;border-radius:999px;background:linear-gradient(90deg,#0b5367,#14a8b5);animation:bpProgress 1.15s ease-in-out infinite}
@keyframes bpProgress{0%{transform:translateX(-110%)}100%{transform:translateX(310%)}}
.bp-is-creating .bp-create-form{pointer-events:none;opacity:.45}
@media(max-width:760px){.bp-create-ready-panel{padding:18px!important}.bp-ready-pill{align-self:flex-start}.bp-route-complete{align-items:flex-start}}


/* V1.10.58 Better Proposals content handoff preview */
.bp-created-panel>.btn{display:flex;width:max-content;margin-left:auto!important;margin-right:0!important}
.bp-payload-preview{margin:14px 0;border:1px solid #b9dce1;border-radius:14px;background:#fff;overflow:hidden}
.bp-payload-preview>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 16px;cursor:pointer;list-style:none;background:#f3fafb;color:#12364c}
.bp-payload-preview>summary::-webkit-details-marker{display:none}.bp-payload-preview>summary span:first-child{display:grid;gap:3px}.bp-payload-preview>summary b{font-size:15px}.bp-payload-preview>summary small{font-size:12px;color:#617987;font-weight:600}.bp-preview-open{padding:6px 10px;border-radius:999px;background:#e1f5f6;color:#087c89;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.bp-payload-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:16px}.bp-payload-grid section{padding:16px;border:1px solid #d5e5e8;border-radius:12px;background:#fbfdfd;min-width:0}.bp-preview-kicker{margin-bottom:12px;color:#0b98a7;font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.bp-payload-grid h6{margin:14px 0 7px;font-size:14px;color:#12364c}.bp-payload-grid h6:first-of-type{margin-top:0}.bp-payload-grid ul{margin:0 0 10px;padding-left:20px}.bp-payload-grid li{margin:0 0 7px;color:#496473;font-size:13px;line-height:1.45}.bp-preview-note{margin:0 16px 16px;padding:11px 13px;border-radius:10px;background:#f5f8f9;color:#5c7482;font-size:12px;line-height:1.45}.bp-preview-note strong{color:#284f64}
@media(max-width:900px){.bp-payload-grid{grid-template-columns:1fr}.bp-created-panel>.btn{width:100%;justify-content:center}}

/* V1.10.59 Better Proposals preview + reconciliation */
.bp-created-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px}.bp-created-actions form{margin:0}.bp-created-actions .btn{width:auto!important;margin:0!important}.bp-missing-panel{padding:22px!important;border:2px solid #e5b86a!important;background:linear-gradient(135deg,#fffaf0,#fffdf8)!important;box-shadow:0 14px 30px rgba(160,112,29,.08)!important}.bp-missing-panel h4{font-size:23px!important}.bp-missing-panel .bp-payload-preview{margin-top:16px}.bp-missing-panel .bp-create-actions{margin-top:16px}@media(max-width:760px){.bp-created-actions{align-items:stretch;flex-direction:column}.bp-created-actions form,.bp-created-actions .btn{width:100%!important}.bp-created-actions .btn{justify-content:center}}

/* V1.10.61 Better Proposals content preview + reconciliation polish */
.bp-reconcile-alert{display:flex;align-items:flex-start;gap:12px;margin:14px 18px;padding:13px 15px;border:1px solid #e7c681;border-radius:12px;background:#fff9ed;color:#674a14}.bp-reconcile-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#fff0cb;color:#a96c05}.bp-reconcile-icon svg{width:18px;height:18px}.bp-reconcile-alert div{display:grid;gap:2px}.bp-reconcile-alert strong{font-size:14px;color:#69490e}.bp-reconcile-alert span:not(.bp-reconcile-icon){font-size:13px;line-height:1.4;color:#806126}
.bp-preview-intro{margin:0 0 14px;color:#526d7b;font-size:13px;line-height:1.55}.bp-scope-item{display:grid;gap:3px;padding:9px 0;border-bottom:1px solid #edf2f3}.bp-scope-item:last-child{border-bottom:0}.bp-scope-item strong{font-size:13px;color:#173c50}.bp-scope-item span{font-size:12.5px;line-height:1.48;color:#5b7380}.bp-cost-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 18px}.bp-cost-metrics>div{display:grid;gap:3px;padding:10px 11px;border:1px solid #d9e7e9;border-radius:10px;background:#f5fafb}.bp-cost-metrics span{font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#68818d}.bp-cost-metrics strong{font-size:15px;color:#12364c}.bp-cost-group{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:14px;padding:8px 10px;border-radius:8px;background:#eef6f7;color:#173c50}.bp-cost-group strong{font-size:13px}.bp-cost-group span{font-size:11px;font-weight:800;color:#5e7884;white-space:nowrap}.bp-cost-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:baseline;padding:8px 5px;border-bottom:1px solid #edf2f3}.bp-cost-item>span{font-size:12.5px;color:#334f5e}.bp-cost-item small{font-size:11px;color:#718793;white-space:nowrap}.bp-cost-item>strong{font-size:12.5px;color:#173c50;white-space:nowrap}@media(max-width:700px){.bp-cost-metrics{grid-template-columns:1fr}.bp-cost-item{grid-template-columns:1fr auto}.bp-cost-item small{grid-row:2;grid-column:1/-1}.bp-reconcile-alert{margin:12px}}

/* V1.10.62 proposal-ready composition + internal cost separation */
.bp-proposal-section{margin:16px 0 4px;padding-top:14px;border-top:1px solid #e5eef0}.bp-proposal-section:first-of-type{border-top:0;padding-top:0}.bp-proposal-section h6{margin:0 0 6px}.bp-proposal-summary{margin:0 0 8px;color:#526d7b;font-size:13px;line-height:1.55}.bp-deliverables{display:grid;gap:0}.bp-deliverable{display:grid;gap:2px;padding:7px 0;border-bottom:1px solid #edf2f3}.bp-deliverable:last-child{border-bottom:0}.bp-deliverable strong{font-size:12.5px;color:#173c50}.bp-deliverable span{font-size:12px;line-height:1.45;color:#637b87}.bp-customer-cost-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 4px;border-bottom:1px solid #e7eef0}.bp-customer-cost-row>span{display:grid;gap:2px}.bp-customer-cost-row span strong{font-size:13px;color:#173c50}.bp-customer-cost-row small{font-size:11px;color:#718793}.bp-customer-cost-row>strong{font-size:13px;color:#173c50;white-space:nowrap}.bp-internal-cost{margin:0 16px 16px;border:1px solid #d6e3e6;border-radius:11px;background:#fafcfc;overflow:hidden}.bp-internal-cost>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;cursor:pointer;list-style:none}.bp-internal-cost>summary::-webkit-details-marker{display:none}.bp-internal-cost>summary span:first-child{display:grid;gap:2px}.bp-internal-cost>summary b{font-size:13px;color:#284f64}.bp-internal-cost>summary small{font-size:11px;color:#718793}.bp-internal-cost>summary span:last-child{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#087c89}.bp-internal-cost-body{padding:0 14px 14px}.bp-internal-cost-body h6{margin:14px 0 5px;font-size:12px;color:#173c50}

/* V1.10.65: replacement action stays on one line */
.bp-missing-panel .bp-create-actions .btn{white-space:nowrap;flex:0 0 auto;min-width:max-content;padding-inline:18px}
@media(max-width:900px){.bp-missing-panel .bp-create-actions .btn{width:100%;min-width:0}}

/* V1.10.66 - ECHO value lock + Better Proposals deal accountability */
.bp-create-actions .btn{white-space:nowrap}
.bp-value-accountability{margin:16px 0;padding:18px;border:1px solid #b9d8df;border-radius:14px;background:#fff}
.bp-value-accountability-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.bp-value-accountability-head>div{display:grid;gap:3px}.bp-value-accountability-head strong{font-size:18px;color:#12364b}.bp-value-accountability-head small{color:#647c89;line-height:1.4}
.bp-value-accountability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bp-value-accountability-grid>div{padding:13px 14px;border:1px solid #d6e5e8;border-radius:12px;background:#f8fbfc;min-width:0}
.bp-value-accountability-grid span{display:block;margin-bottom:4px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#657b86}.bp-value-accountability-grid strong{display:block;font-size:17px;color:#14384e}.bp-value-accountability-grid small{display:block;margin-top:4px;color:#71858f;font-size:12px;line-height:1.35}
.bp-value-variance.discount{background:#fff7ef;border-color:#efcfad}.bp-value-variance.discount strong{color:#a4511f}.bp-value-variance.above{background:#f0faf5;border-color:#b8d8c7}.bp-value-variance.above strong{color:#2e7654}.bp-value-variance.match{background:#f1faf5;border-color:#b8d8c7}.bp-value-variance.match strong{color:#2e7654}.bp-value-variance.pending strong{color:#6b7d85}
.bp-recurring-summary{margin-top:10px;padding:10px 12px;border-radius:10px;background:#f6fafb;color:#526d79;font-size:12px}.bp-value-synced{margin-top:8px;text-align:right;color:#7b8d95;font-size:11px;font-weight:700}
.bp-contract-readonly{display:grid;gap:6px;padding:12px 14px;border:1px solid #cfe2e6;border-radius:10px;background:#f7fbfc}.bp-contract-readonly strong{font-size:18px;color:#12364b}.bp-contract-readonly .field-help{margin:0}
@media(max-width:900px){.bp-value-accountability-grid{grid-template-columns:1fr}.bp-value-accountability-head{flex-direction:column}.bp-create-actions .btn{white-space:normal}}

.bp-pricing-rule{display:flex;gap:12px;align-items:flex-start;margin:14px 0;padding:13px 14px;border:1px solid #c8dce2;border-radius:12px;background:#f6fafb}.bp-pricing-rule-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#e5f2f5;color:#0b5367}.bp-pricing-rule-icon .app-icon{width:18px;height:18px}.bp-pricing-rule>div{display:grid;gap:3px}.bp-pricing-rule strong{color:#12364b;font-size:14px}.bp-pricing-rule span{color:#617986;font-size:12px;line-height:1.4}

/* V1.10.67 - Deal Accountability presentation + creation action clarity */
.bp-value-accountability{position:relative;overflow:hidden;border:1px solid #9fcbd4;background:linear-gradient(135deg,#f4fbfc 0%,#fff 62%);box-shadow:0 10px 24px rgba(16,74,91,.06)}
.bp-value-accountability:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#0aa7b8,#0c5c72)}
.bp-value-accountability-head{padding-left:4px}.bp-value-accountability-head .eyebrow{color:#0a93a2}.bp-value-accountability-head strong{font-size:19px}.bp-value-accountability-grid>div:first-child{background:#eef9fa;border-color:#b9dce2}.bp-value-accountability-grid>div:first-child strong{font-size:22px;color:#0c4d62}
.bp-create-history-note{margin:10px 0 14px;border:1px solid #e1e8ea;border-radius:10px;background:#fafcfc;color:#607986}.bp-create-history-note>summary{cursor:pointer;padding:10px 12px;font-size:12px;font-weight:800;color:#6b7f89;list-style:none}.bp-create-history-note>summary::-webkit-details-marker{display:none}.bp-create-history-note>summary:after{content:"Show";float:right;color:#188b99;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.bp-create-history-note[open]>summary:after{content:"Hide"}.bp-create-history-note>div{display:grid;gap:3px;padding:0 12px 12px;font-size:12px}.bp-create-history-note>div strong{color:#5a6f79}.bp-create-history-note>div span{color:#7a8c94;line-height:1.4}
.bp-create-primary-action{flex:0 0 auto!important;min-width:max-content!important;width:auto!important;white-space:nowrap!important;padding-left:20px!important;padding-right:20px!important}
@media(max-width:900px){.bp-create-primary-action{width:100%!important;min-width:0!important;white-space:nowrap!important}.bp-create-actions .btn{white-space:nowrap!important}}

/* V1.10.68 - stylesheet source-of-truth cleanup */
.bp-create-primary-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex-wrap:nowrap!important;max-width:none!important;line-height:1.2!important}
.bp-create-primary-action .app-icon{flex:0 0 auto!important}
@media(min-width:901px){.bp-create-primary-action{min-width:230px!important}}

/* V1.10.69 - Better Proposals accountability typography + discount traceability */
.bp-value-accountability-head small{font-size:15px!important;line-height:1.5!important;color:#526f7d!important}
.bp-value-accountability-grid span{font-size:12px!important}
.bp-value-accountability-grid small{font-size:14px!important;line-height:1.5!important;color:#5d7784!important}
.bp-value-accountability-grid strong{font-size:18px!important}
.bp-value-accountability-grid>div:first-child strong{font-size:24px!important}
.bp-pricing-rule{margin-top:14px}
.bp-pricing-rule strong{font-size:15px!important}
.bp-pricing-rule span:not(.bp-pricing-rule-icon){font-size:14px!important;line-height:1.5!important;color:#526f7d!important}
.bp-value-variance.untracked{background:#fff3f0;border-color:#e7b9ad}.bp-value-variance.untracked strong{color:#a43f2d}.bp-value-variance.untracked span{color:#8f3a2c}
.bp-discount-evidence{margin-top:10px;padding:11px 12px;border:1px solid #c8dfd2;border-radius:10px;background:#f2faf5;color:#436b58;font-size:14px;line-height:1.45}
.bp-discount-evidence strong{color:#2e694e}
.bp-recurring-summary{font-size:14px!important;line-height:1.45!important}
.bp-value-synced{font-size:13px!important}
.bp-create-actions>span{font-size:14px!important;line-height:1.5!important}
.bp-create-panel p{font-size:16px!important;line-height:1.55!important}
.bp-create-history-note>summary,.bp-create-history-note>div{font-size:13px!important}
.bp-payload-preview>summary b{font-size:16px!important}.bp-payload-preview>summary small{font-size:14px!important;line-height:1.45!important}
.bp-preview-open{font-size:12px!important}
.bp-preview-note{font-size:13px!important;line-height:1.5!important}
.bp-preview-intro,.bp-proposal-summary{font-size:14px!important;line-height:1.55!important}
.bp-deliverable strong{font-size:14px!important}.bp-deliverable span{font-size:13px!important;line-height:1.5!important}
.bp-customer-cost-row span strong,.bp-customer-cost-row>strong{font-size:14px!important}.bp-customer-cost-row small{font-size:13px!important}
.bp-internal-cost>summary b{font-size:14px!important}.bp-internal-cost>summary small{font-size:13px!important}.bp-internal-cost>summary span:last-child{font-size:12px!important}
@media(max-width:900px){.bp-value-accountability-head small,.bp-value-accountability-grid small,.bp-pricing-rule span:not(.bp-pricing-rule-icon){font-size:14px!important}}

/* ECHO V1.10.73 proposal content composer */
.bp-composed-inner{padding:24px;max-width:1080px;margin:auto;color:#163247;font-size:16px;line-height:1.65}
.bp-composed-inner h3{font-size:27px;line-height:1.25;margin:4px 0 24px;color:#092b42}
.bp-composed-eyebrow{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#138a9c;margin:28px 0 5px}
.bp-composed-section{padding:22px 0;border-top:1px solid #d8e7ed}
.bp-composed-section h4,.bp-composed-cost h4{font-size:20px;line-height:1.3;margin:0 0 9px;color:#0b3048}
.bp-composed-section p,.bp-composed-cost p{font-size:16px;line-height:1.65;margin:0 0 15px;color:#38566a}
.bp-composed-deliverables{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}
.bp-composed-deliverables>div{padding:14px 16px;background:#f3f8fa;border:1px solid #deebef;border-radius:10px}
.bp-composed-deliverables strong{display:block;font-size:15px;color:#12374b}
.bp-composed-deliverables span{display:block;margin-top:6px;font-size:14px;line-height:1.55;color:#456175}
.bp-composed-cost{padding:19px 0;border-top:1px solid #d8e7ed}
.bp-composed-cost-top{display:flex;justify-content:space-between;gap:18px;align-items:baseline;margin-bottom:8px}
.bp-composed-cost-top strong{font-size:23px;color:#0a596b;white-space:nowrap}
.bp-composed-total{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:25px;background:#0b3048;color:white;border-radius:14px;margin-top:22px;font-size:19px;font-weight:700}
.bp-composed-total strong{font-size:31px;color:white}
.bp-composed-warning{padding:16px 18px;border:1px solid #f0d29a;background:#fff8e9;border-radius:10px;font-size:15px;line-height:1.55;color:#725017;margin-bottom:26px}
@media(max-width:650px){.bp-composed-inner{padding:16px}.bp-composed-cost-top,.bp-composed-total{align-items:flex-start;flex-direction:column}.bp-composed-deliverables{grid-template-columns:1fr}}

/* V1.10.76 Better Proposals native pricing accountability prototype */
.bp-pricing-handoff{margin-top:18px;padding-top:18px;border-top:1px solid #cfe0e4}
.bp-pricing-handoff-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}
.bp-pricing-handoff-head>div{display:grid;gap:4px}
.bp-pricing-handoff-head .eyebrow{font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:#0a91a1}
.bp-pricing-handoff-head strong{font-size:18px;color:#12384e}
.bp-pricing-handoff-head small{font-size:14px;line-height:1.5;color:#587482;max-width:900px}
.bp-pricing-handoff-grid{display:grid;gap:10px}
.bp-pricing-row{padding:14px 15px;border:1px solid #d5e4e8;border-radius:12px;background:#fff}
.bp-pricing-row-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}
.bp-pricing-row-title>strong{font-size:16px;color:#12384e}
.bp-pricing-row-title>span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;padding:5px 9px;border-radius:999px;background:#edf4f6;color:#516f7d;white-space:nowrap}
.bp-pricing-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.bp-pricing-values>div{padding:9px 10px;border-radius:9px;background:#f6fafb}
.bp-pricing-values span{display:block;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:#6a808b;margin-bottom:3px}
.bp-pricing-values strong{display:block;font-size:16px;color:#153b50}
.bp-pricing-row>small{display:block;margin-top:10px;font-size:14px;line-height:1.45;color:#5b7481}
.bp-pricing-row.match{border-color:#afd8c6;background:#fbfffd}.bp-pricing-row.match .bp-pricing-row-title>span{background:#e7f6ee;color:#2b6a4f}
.bp-pricing-row.discount{border-color:#a8d6df;background:#fbfeff}.bp-pricing-row.discount .bp-pricing-row-title>span{background:#e5f4f7;color:#0d6675}
.bp-pricing-row.warning{border-color:#ebc785;background:#fffaf1}.bp-pricing-row.warning .bp-pricing-row-title>span{background:#fff0cf;color:#8d5b00}
.bp-pricing-row.missing{border-style:dashed}.bp-pricing-row.missing .bp-pricing-row-title>span{background:#f1f4f5;color:#657882}
.bp-pricing-handoff-note{margin-top:12px;padding:12px 14px;border-radius:10px;background:#f2f6f7;color:#526f7c;font-size:14px;line-height:1.5}
.bp-pricing-handoff-note strong{color:#14384d}
@media(max-width:900px){.bp-pricing-handoff-head{flex-direction:column}.bp-pricing-values{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V1.10.77 - Sales Proposal Pricing */
.proposal-pricing{margin:18px 0;padding:22px;border:1px solid #b9d8df;border-radius:16px;background:linear-gradient(135deg,#f3fbfc,#fff 65%);box-shadow:0 10px 26px rgba(16,74,91,.06)}
.proposal-pricing-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:18px}.proposal-pricing-head h4{margin:4px 0 6px;font-size:22px;color:#12364b}.proposal-pricing-head p{margin:0;max-width:820px;font-size:16px;line-height:1.55;color:#58717e}
.proposal-pricing-overall{display:grid;grid-template-columns:minmax(220px,.7fr) 2fr;gap:18px;align-items:stretch;margin-bottom:16px}.proposal-pricing-overall>label{padding:16px;border:1px solid #cfe2e6;border-radius:13px;background:#fff}.proposal-pricing-overall label>span{display:block;font-size:14px;font-weight:900;color:#173d52;margin-bottom:8px}.proposal-pricing-overall label>div{display:flex;align-items:center;gap:8px}.proposal-pricing-overall input{width:110px;font-size:22px;font-weight:800}.proposal-pricing-overall label small{display:block;margin-top:8px;font-size:13px;line-height:1.4;color:#6a808b}
.proposal-pricing-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.proposal-pricing-totals>div{padding:15px;border:1px solid #d6e5e8;border-radius:13px;background:#fff}.proposal-pricing-totals span,.proposal-price-values span{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#667d88}.proposal-pricing-totals strong{display:block;margin-top:5px;font-size:20px;color:#153b50}.proposal-pricing-totals .proposal-total{background:#123f55;border-color:#123f55}.proposal-pricing-totals .proposal-total span,.proposal-pricing-totals .proposal-total strong{color:#fff}.proposal-pricing-totals .proposal-total strong{font-size:25px}
.proposal-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.proposal-price-card{padding:15px 16px;border:1px solid #d6e5e8;border-radius:13px;background:#fff}.proposal-price-card-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.proposal-price-card-head>strong{font-size:16px;color:#153b50}.proposal-price-card-head label{font-size:12px;font-weight:800;color:#607985}.proposal-price-card-head label span{display:inline-flex;align-items:center;gap:4px;margin-left:6px}.proposal-price-card-head input{width:82px;min-height:36px}.proposal-price-values{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:13px;padding-top:12px;border-top:1px solid #e1ebed}.proposal-price-values strong{display:block;margin-top:3px;font-size:16px;color:#173d52}.proposal-price-values>div:last-child strong{color:#087f8d;font-size:18px}
.proposal-pricing-actions,.proposal-pricing-confirmed{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding-top:15px;border-top:1px solid #d7e6e9}.proposal-pricing-actions span,.proposal-pricing-confirmed span{font-size:14px;line-height:1.45;color:#607985}.proposal-pricing-confirmed>div{display:grid;gap:3px}.proposal-pricing-confirmed>div strong{font-size:16px;color:#166246}.pricing-warning{display:grid;gap:4px}.pricing-warning span{font-size:14px;color:#6a808b}
@media(max-width:900px){.proposal-pricing-head,.proposal-pricing-actions,.proposal-pricing-confirmed{flex-direction:column}.proposal-pricing-overall,.proposal-pricing-grid{grid-template-columns:1fr}.proposal-pricing-totals{grid-template-columns:1fr}.proposal-price-values{grid-template-columns:1fr 1fr 1fr}}

/* V1.10.78 - Sales Proposal Pricing visual polish */
.proposal-pricing{padding:24px;background:linear-gradient(145deg,#f4fbfc 0%,#fff 54%,#f7fbfc 100%);border-color:#afd7df;box-shadow:0 12px 30px rgba(13,58,76,.08)}
.proposal-pricing-head{align-items:center;margin-bottom:20px}.proposal-pricing-head h4{font-size:24px}.proposal-pricing-head p{max-width:760px}
.proposal-pricing-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.pricing-kpi{min-height:142px;padding:18px 16px;border:1px solid #d5e5e9;border-radius:14px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 5px 14px rgba(16,74,91,.045)}
.pricing-kpi>span{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:#5f7782;margin-bottom:8px}.pricing-kpi>strong{display:block;font-size:24px;line-height:1.1;color:#153b50}.pricing-kpi>small{display:block;margin-top:8px;font-size:12px;line-height:1.35;color:#748993}
.pricing-kpi-discount{border-top:4px solid #1cb7c6}.pricing-kpi-discount>div{display:flex;align-items:center;justify-content:center;gap:7px}.pricing-kpi-discount input{width:105px;min-height:44px;text-align:center;font-size:24px;font-weight:900;color:#123f55}.pricing-kpi-discount b{font-size:20px;color:#168b98}
.pricing-kpi-original{border-top:4px solid #25b8c8}.pricing-kpi-original strong{color:#25b8c8}.pricing-kpi-savings{border-top:4px solid #d8a729}.pricing-kpi-savings strong{color:#b8860b}.pricing-kpi-proposal{border-top:4px solid #55ad72;background:linear-gradient(180deg,#fff,#f4fbf6)}.pricing-kpi-proposal strong{color:#278151;font-size:27px}
.proposal-pricing-grid{gap:12px}.proposal-price-card{padding:17px 18px;border-color:#d8e6e9;box-shadow:0 3px 10px rgba(16,74,91,.035);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.proposal-price-card-head>strong{font-size:17px}.proposal-price-card-head label{display:flex;align-items:center}.proposal-price-card-head input{text-align:center;font-weight:800}.proposal-price-values{margin-top:14px;padding-top:13px}.proposal-price-values>div:nth-child(2) strong{color:#b8860b}.proposal-price-values>div:last-child strong{color:#168b75}.proposal-price-card.is-discounted{border-color:#e0c46d;box-shadow:0 5px 16px rgba(184,134,11,.11)}.proposal-price-card.is-discounted .proposal-price-values>div:last-child strong{color:#278151}
.proposal-investment-summary{margin-top:18px;padding:19px 20px;border-radius:15px;background:#103e55;display:grid;grid-template-columns:minmax(230px,1.25fr) repeat(4,minmax(120px,1fr));gap:16px;align-items:center;box-shadow:0 10px 22px rgba(10,47,66,.16)}
.proposal-investment-title span{display:block;font-size:16px;font-weight:900;color:#fff}.proposal-investment-title small{display:block;margin-top:5px;font-size:12px;line-height:1.4;color:#c8d9df}.proposal-investment-metric{text-align:center;border-left:1px solid rgba(255,255,255,.16);padding-left:14px}.proposal-investment-metric span{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:#d7e4e8}.proposal-investment-metric strong{display:block;margin-top:5px;font-size:20px;line-height:1.1}.metric-original strong{color:#36c7d3}.metric-savings strong,.metric-discount strong{color:#f1c64c}.metric-proposal strong{color:#71d391;font-size:25px}
.proposal-pricing-actions,.proposal-pricing-confirmed{margin-top:14px;padding:15px 0 0}.proposal-pricing-confirm{min-height:44px;padding-left:22px;padding-right:22px;font-size:15px;font-weight:900;box-shadow:0 6px 14px rgba(16,74,91,.12)}
@media(max-width:1100px){.proposal-pricing-kpis{grid-template-columns:repeat(2,1fr)}.proposal-investment-summary{grid-template-columns:1fr 1fr}.proposal-investment-title{grid-column:1/-1}.proposal-investment-metric{border-left:0;border-top:1px solid rgba(255,255,255,.13);padding:12px 0 0}}
@media(max-width:700px){.proposal-pricing-kpis{grid-template-columns:1fr}.pricing-kpi{min-height:122px}.proposal-investment-summary{grid-template-columns:1fr}.proposal-investment-title{grid-column:auto}.proposal-investment-metric{padding-top:11px}}

/* V1.10.79 - Sales Proposal Pricing final visual refinement */
.proposal-price-card{background:linear-gradient(180deg,#f8fcfd 0%,#f3f9fa 100%);border-color:#cfe2e7;box-shadow:0 4px 12px rgba(16,74,91,.045)}
.proposal-price-card.is-discounted{background:linear-gradient(180deg,#fffdf7 0%,#fff8e9 100%);border-color:#e2bd54;box-shadow:0 6px 18px rgba(184,134,11,.12)}
.metric-discount strong{color:#f6dfa0}
.metric-discount span{color:#f3e7bd}

/* V1.10.86 - Sales proposal workflow stability + live pricing guidance */
.proposal-pricing-live-note{display:flex;align-items:flex-start;gap:10px;margin:-2px 0 18px;padding:13px 15px;border:1px solid #b9dfc6;border-radius:13px;background:#eef9f1;color:#315f3e;font-size:14px;line-height:1.45}.proposal-pricing-live-note strong{color:#215832}.proposal-pricing-live-note span{color:#4e6f59}.proposal-pricing-confirmed.proposal-pricing-live{border-color:#b9dfc6;background:linear-gradient(135deg,#f4fbf6,#edf8f0)}.proposal-pricing-confirmed.proposal-pricing-live strong{color:#21633b}.proposal-pricing-actions.is-live-update{background:linear-gradient(135deg,#f2fbf4,#f8fcf9);border-top-color:#cbe5d2}.proposal-pricing-actions.is-live-update>span{color:#47695a}

/* V1.10.87 - Live pricing guidance polish */
.proposal-pricing-confirmed.proposal-pricing-live{margin-top:18px;padding:18px 20px;border:1px solid #c9dfe6;border-radius:16px;background:linear-gradient(135deg,#f7fbfc 0%,#eef8f8 100%);box-shadow:0 8px 20px rgba(8,47,68,.05)}
.proposal-pricing-live-copy{display:grid;gap:5px;min-width:0}
.proposal-pricing-live-kicker{font-size:12px!important;line-height:1.3!important;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#0e9fb2!important}
.proposal-pricing-confirmed.proposal-pricing-live strong{font-size:18px;line-height:1.25;color:#12384c}
.proposal-pricing-confirmed.proposal-pricing-live .proposal-pricing-live-copy>span:last-child{font-size:16px;line-height:1.5;color:#4d6878;max-width:780px}
.btn.proposal-pricing-adjust{flex:0 0 auto;min-height:46px;padding:0 20px;border:1px solid #c79310;background:linear-gradient(180deg,#f2c94c 0%,#d9a91a 100%);color:#183446;font-size:15px;font-weight:900;box-shadow:0 7px 16px rgba(184,137,16,.18)}
.btn.proposal-pricing-adjust:hover{background:linear-gradient(180deg,#f6d461 0%,#e2b426 100%);color:#102f40}
@media(max-width:900px){.proposal-pricing-confirmed.proposal-pricing-live{align-items:stretch}.btn.proposal-pricing-adjust{width:100%;justify-content:center}}


/* V1.10.88 - Intentional return targets for Final Estimate actions */
#proposal-pricing,
#better-proposals-handoff,
#proposal-contract {
  scroll-margin-top: 96px;
}

/* V1.10.94: unobtrusive Web Review autosave feedback */
.web-review-autosave-state{position:fixed;right:24px;bottom:24px;z-index:1000;background:#e7f8f4;border:1px solid #9ad8cc;color:#075a55;padding:12px 18px;border-radius:12px;font-size:15px;font-weight:700;box-shadow:0 6px 22px #092c3d22}.web-review-autosave-state.is-error{background:#fff3ed;border-color:#d8805b;color:#87351a}.web-review-pending-verified{outline:2px solid #1aa89f;outline-offset:2px}

/* V1.10.97 manual review attention instructions */
.manual-review-steps{margin-top:14px;padding:14px 16px;background:white;border:1px solid #e6c986;border-radius:10px;color:#243e52;font-size:16px;line-height:1.55}.manual-review-steps strong{display:block;font-size:16px;margin-bottom:6px}.manual-review-steps ol{margin:0;padding-left:22px}.manual-review-steps li+li{margin-top:5px}.manual-review-side-note{display:block;font-size:12px;line-height:1.4;margin-top:3px}.manual-website-verification label{font-size:16px}.manual-website-verification{scroll-margin-top:100px}
/* V1.10.98 assignment management */
.assignment-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.assignment-form label{display:flex;flex-direction:column;gap:8px;font-weight:700;color:#123149}.assignment-form select,.assignment-form input,.assignment-form textarea,.assignment-row select{width:100%;padding:12px;border:1px solid #c6dbe4;border-radius:9px;font:inherit;background:#fff;color:#123149}.assignment-form label:has(textarea){grid-column:1/-1}.assignment-form button{justify-self:start}.assignment-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid #d8e6ea}.assignment-row p{margin:6px 0;color:#516a7a}.assignment-row form{display:flex;gap:10px;align-items:center}.assignment-table-wrap{overflow-x:auto}.assignment-table{width:100%;border-collapse:collapse}.assignment-table th,.assignment-table td{text-align:left;padding:13px;border-bottom:1px solid #d8e6ea}.assignment-count{font-size:14px;color:#138f9b}@media(max-width:720px){.assignment-form{grid-template-columns:1fr}.assignment-row{align-items:stretch;flex-direction:column}}

/* ECHO V1.11.09: notification admin actions and history layout */
.echo-notification-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:16px}
.echo-notification-table-wrap{width:100%;overflow-x:auto;margin-top:18px}
.echo-notification-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:14px}
.echo-notification-table th,.echo-notification-table td{padding:13px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #d8e6ea;white-space:normal;overflow-wrap:anywhere}
.echo-notification-table th{font-size:13px;font-weight:750;color:#123149;background:#f0f7f9;white-space:nowrap}
.echo-notification-table th:nth-child(2),.echo-notification-table td:nth-child(2){text-align:center;width:100px}
.echo-notification-table th:nth-child(5),.echo-notification-table td:nth-child(5){min-width:155px}
.echo-notification-table td:nth-child(3){min-width:190px}
.echo-notification-table tbody tr:last-child td{border-bottom:0}
@media(max-width:600px){.echo-notification-table{min-width:640px}.echo-notification-form-actions .btn{max-width:100%}}

/* ECHO V1.11.10: coordinator selector and save action share a responsive row */
.echo-notification-coordinator-card{width:100%;max-width:none;box-sizing:border-box}
.echo-notification-coordinator-form{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-top:18px}
.echo-notification-coordinator-form>label{flex:1 1 360px;min-width:0;margin:0}
.echo-notification-coordinator-form>label select{display:block;width:100%;box-sizing:border-box}
.echo-notification-coordinator-form .echo-notification-form-actions{flex:0 0 auto;margin:0;display:flex;justify-content:flex-end;align-items:flex-end}
.echo-notification-coordinator-form .echo-notification-form-actions .btn{white-space:nowrap}
@media(max-width:640px){.echo-notification-coordinator-form>label{flex-basis:100%}.echo-notification-coordinator-form .echo-notification-form-actions{width:100%;justify-content:flex-end}}

/* V1.11.11: Coordinator field and action share a consistent two-column row. */
.echo-notification-coordinator-form{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:end;margin-top:24px}
.echo-notification-coordinator-form>label{display:flex;flex-direction:column;gap:16px;min-width:0;margin:0}
.echo-notification-coordinator-form>label select{width:100%;min-width:0;box-sizing:border-box}
.echo-notification-coordinator-form .echo-notification-form-actions{width:100%;min-width:0;margin:0;display:block}
.echo-notification-coordinator-form .echo-notification-form-actions .btn{display:block;width:100%;box-sizing:border-box;min-height:46px;white-space:nowrap}
@media(max-width:700px){.echo-notification-coordinator-form{grid-template-columns:minmax(0,1fr)}.echo-notification-coordinator-form .echo-notification-form-actions{display:flex;justify-content:flex-end}.echo-notification-coordinator-form .echo-notification-form-actions .btn{width:auto;min-width:190px}}

/* ECHO 1.11.13: Assignment UI and accessible feedback edge */
.echo-feedback-edge{position:fixed;right:0;top:52%;z-index:900;display:flex;align-items:center;gap:7px;padding:13px 12px;border:0;border-radius:12px 0 0 12px;background:#087f96;color:#fff;box-shadow:0 7px 22px #062f4240;font:700 13px inherit;cursor:pointer;writing-mode:vertical-rl;transform:translateY(-50%)}
.echo-feedback-edge svg{width:19px;height:19px;flex:none}.echo-feedback-edge:hover,.echo-feedback-edge:focus-visible{background:#065f77;outline-offset:3px}
.echo-assignment-card{padding:0!important;overflow:hidden}.echo-assignment-heading{padding:24px 28px;background:linear-gradient(110deg,#082d45,#075d70);color:white}.echo-assignment-heading h2{color:#fff;margin:6px 0}.echo-assignment-heading p{margin:6px 0 0;color:#d3eff4}.echo-assignment-heading .eyebrow{color:#7fe0ed}
.echo-assignment-card .assignment-form{padding:24px 28px;margin:0;gap:20px}.echo-assignment-card .assignment-form label{font-size:15px}.echo-assignment-card .assignment-form textarea{min-height:105px}.echo-assignment-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid #d7e6ea}.echo-assignment-actions span{color:#516a7a;font-size:14px;max-width:540px}.echo-assignment-actions button{margin-left:auto;white-space:nowrap}.echo-assignment-list-card{border-top:4px solid #13a6ba}.echo-assignment-list-card h2{margin-bottom:18px}
@media(max-width:900px){.echo-feedback-edge{top:auto;bottom:20px;transform:none;writing-mode:horizontal-tb;border-radius:12px 0 0 12px}.echo-assignment-actions{flex-direction:column;align-items:stretch}.echo-assignment-actions button{margin-left:0;align-self:flex-end}}
@media(max-width:600px){.echo-assignment-heading,.echo-assignment-card .assignment-form{padding:20px}.echo-assignment-actions button{width:100%;justify-content:center}}

/* ECHO V1.11.14: Admin organization and user-management clarity */
.admin-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px;padding:10px;background:#edf7f8;border:1px solid #cfe4e8;border-radius:17px}
.admin-tab{border:1px solid transparent;border-radius:11px;padding:13px 18px;background:transparent;color:#31566a;font-size:15px;font-weight:800;cursor:pointer;min-height:46px}
.admin-tab:hover{background:#fff;border-color:#cfe4e8}
.admin-tab[aria-selected="true"]{background:linear-gradient(110deg,#08344b,#0b8798);color:white;box-shadow:0 6px 14px rgba(7,58,75,.16)}
.admin-tab:focus-visible{outline:3px solid #0ba9ba;outline-offset:2px}
.admin-tab-pane[hidden]{display:none!important}
.admin-tab-pane{min-width:0;animation:adminPaneIn .16s ease-out}
@keyframes adminPaneIn{from{opacity:.75;transform:translateY(3px)}to{opacity:1;transform:none}}
.admin-tab-pane>.card,.admin-tab-pane>.security-grid,.admin-tab-pane>.grid{margin-bottom:24px}
.admin-user-detail{display:flex;flex-direction:column;gap:18px;padding:22px!important;background:#f6fbfc;border-top:2px solid #a8dce2}
.admin-user-detail-head{padding-bottom:14px;border-bottom:1px solid #d6e7ea}
.admin-user-profile-editor{padding:20px!important;background:#fff;border:1px solid #d4e5e8;border-left:4px solid #14a6b5;border-radius:13px;min-width:0}
.admin-user-controls{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:stretch}
.admin-control-block{padding:20px!important;background:#fff!important;border:1px solid #d4e5e8!important;border-radius:13px!important;min-width:0}
.admin-password-reset-block{grid-column:1/-1;border-left:4px solid #e3a64a!important}
.admin-password-reset-block form{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.admin-password-reset-block .password-tool-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.admin-password-reset-block .password-tool-row input{flex:1 1 280px;min-width:180px}
.admin-password-reset-block form>.btn{align-self:flex-end;margin-top:4px}
.admin-user-profile-form .admin-profile-actions{justify-content:flex-end;gap:12px;flex-wrap:wrap}
.admin-user-controls .admin-control-block form>.btn{margin-top:10px}
.admin-tab-pane .pilot-feedback-card{margin-top:0}
.admin-tab-pane .pilot-feedback-list{display:grid;gap:12px}
.admin-tab-pane .pilot-feedback-row{min-width:0;overflow-wrap:anywhere}
.admin-tab-pane .security-grid{align-items:start}
.admin-tab-pane .security-card,.admin-tab-pane .admin-email-card,.admin-tab-pane .estimate-cleanup-card{border-radius:17px}
@media(max-width:760px){.admin-tabs{gap:5px}.admin-tab{flex:1 1 145px;padding:11px 8px;font-size:14px}.admin-user-controls{grid-template-columns:1fr!important}.admin-password-reset-block{grid-column:auto}.admin-user-detail{padding:12px!important}.admin-user-profile-editor,.admin-control-block{padding:14px!important}}


/* ECHO V1.11.15: user row readability and compact password actions */
.admin-user-table tbody tr.admin-user-main-row:nth-of-type(4n + 3){background:#f0f7f9}
.admin-user-table tbody tr.admin-user-main-row:hover{background:#e7f5f7}
.admin-user-table tbody tr.admin-user-main-row:has(+ .admin-user-detail-row:not([hidden])){background:#e1f3f5}
.admin-user-name-cell{display:flex;align-items:center;gap:11px;min-width:0}
.admin-user-avatar{display:inline-flex;align-items:center;justify-content:center;flex:none;width:33px;height:33px;border-radius:10px;background:#def3f5;color:#078da0}
.admin-user-avatar svg{width:18px;height:18px}
.admin-tab-pane .admin-users-card .btn.secondary,
.admin-tab-pane .admin-users-card .admin-profile-actions .btn,
.admin-tab-pane .admin-users-card .admin-control-block .btn:not(.admin-reset-submit),
.admin-tab-pane .admin-users-card .add-user-actions .btn.secondary{background:#0da6b8!important;border-color:#0da6b8!important;color:#fff!important}
.admin-tab-pane .admin-users-card .btn.secondary:hover,
.admin-tab-pane .admin-users-card .admin-profile-actions .btn:hover,
.admin-tab-pane .admin-users-card .admin-control-block .btn:not(.admin-reset-submit):hover{background:#087f92!important;border-color:#087f92!important;color:#fff!important}
.admin-tab-pane .admin-users-card .admin-control-block .admin-reset-submit{background:#092d42!important;border-color:#092d42!important;color:#fff!important}
.admin-password-reset-block .password-tool-row.admin-reset-password-grid{display:grid!important;grid-template-columns:minmax(0,3fr) minmax(125px,1fr);gap:10px;align-items:stretch}
.admin-password-reset-block .admin-reset-password-grid input[type=password]{width:100%;min-width:0;flex:none;margin:0;min-height:44px}
.admin-password-reset-block .admin-reset-password-grid .btn{width:100%;margin:0!important;min-height:44px;white-space:nowrap;justify-content:center}
.admin-password-reset-block .admin-reset-password-grid .password-copy-btn{grid-column:1}
.admin-password-reset-block .admin-reset-password-grid .admin-reset-submit{grid-column:2}
@media(max-width:540px){.admin-password-reset-block .password-tool-row.admin-reset-password-grid{grid-template-columns:minmax(0,1fr) minmax(105px,.7fr)}.admin-user-avatar{width:28px;height:28px}}

/* V1.11.16 - Admin discovery metrics and user avatars */
.admin-user-detail-meta{display:flex;flex-wrap:wrap;gap:12px;white-space:normal}
.admin-user-detail-meta span+span{padding-left:12px;border-left:1px solid #dfe8eb}
.admin-user-avatar .app-icon{display:block;width:20px;height:20px;stroke:currentColor}


/* ECHO V1.11.17: Admin user table numeric column alignment only. */
.admin-user-table th:nth-child(1){width:18%}
.admin-user-table th:nth-child(2){width:30%}
.admin-user-table th:nth-child(3){width:16%}
.admin-user-table th:nth-child(4){width:12%}
.admin-user-table th:nth-child(5),
.admin-user-table th:nth-child(6){width:10%}
.admin-user-table th:nth-child(7){width:4%;min-width:42px}
.admin-user-table th:nth-child(5),
.admin-user-table th:nth-child(6),
.admin-user-table td:nth-child(5),
.admin-user-table td:nth-child(6){text-align:center}
.admin-user-table-wrap{overflow-x:auto}
.admin-user-table{min-width:850px}
