@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Manrope:wght@400;500;600;700&display=swap');
        :root {
            --bg: #d7dedf;
            --surface: #fdfefe;
            --surface-strong: #ffffff;
            --line: #c9d7dd;
            --line-strong: #9fbac4;
            --ink: #161d1c;
            --ink-muted: #425654;
            --accent: #0b547e;
            --accent-strong: #073c5b;
            --accent-link-hover: #0a4c73;
            --accent-link-active: #083b5a;
            --accent-soft: #d9e3ee;
            --white: #ffffff;
            --neutral-050: #fafafa;
            --neutral-200: #d8d8d8;
            --blue-050: #f2f7fc;
            --blue-100: #e6eff8;
            --blue-150: #d9e7f4;
            --blue-200: #c8dbed;
            --blue-300: #9fbfdf;
            --blue-500: #4f88be;
            --blue-700: #2f679b;
            --blue-800: #214e78;
            --blue-border-soft: #dce5f0;
            --blue-border-muted: #d5e0ef;
            --blue-surface-alt: #fbfdff;
            --blue-surface-soft: #f8fbff;
            --blue-surface-code: #f3f6fb;
            --blue-dash-border: #bfd0e6;
            --green-success-border: #a6e2a6;
            --green-success-bg: #d8fed8;
            --status-success-bg: #ebf4ff;
            --status-success-border: #b7d2ee;
            --status-success-ink: #1c4f79;
            --status-error-bg: #fff1f4;
            --status-error-border: #f0c5cf;
            --status-error-ink: #f06262;
            --danger-bg: #8a1f2d;
            --danger-border: #8a1f2d;
            --danger-strong: #a24350;
            --danger-soft: #bd4e5d;
            --fit-score-high: #073c5b;
            --fit-score-good: #4f88be;
            --fit-score-warning: #d97706;
            --fit-score-low: var(--danger-soft);
            --focus: #7397b8;
            --shadow-soft: 0 8px 22px rgba(22, 29, 28, 0.08);
            --shadow-strong: 0 14px 32px rgba(22, 29, 28, 0.14);
            --button-press-shadow: inset 0 3px 5px rgba(7, 60, 91, 0.24);
            --shadow-card-hover: 0 6px 14px rgba(20, 33, 61, 0.08);
            --shadow-accent-soft: 0 8px 16px rgba(47, 103, 155, 0.25);
            --shadow-accent-strong: 0 10px 18px rgba(47, 103, 155, 0.3);
            --shadow-danger-soft: 0 8px 16px rgba(162, 67, 80, 0.25);
            --shadow-danger-strong: 0 10px 18px rgba(162, 67, 80, 0.3);
            --focus-ring: 0 0 0 4px rgba(159, 191, 223, 0.26);
            --spinner-ring: rgba(255, 255, 255, 0.65);
            --modal-backdrop: rgba(17, 29, 41, 0.48);
            --skeleton-gradient: linear-gradient(90deg, #ebf1f9 25%, #dde8f5 50%, #ebf1f9 75%);
            --app-content-max: 1440px;
            --app-page-gutter: clamp(1rem, 2.5vw, 2.5rem);
        }
        *,
        *::before,
        *::after {
            box-sizing: border-box;
        }
        body {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            font-family: "Segoe UI VSS (Regular)","Segoe UI","-apple-system",BlinkMacSystemFont,Roboto,"Helvetica Neue",Helvetica,Ubuntu,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
            margin: 0;
            background:
                radial-gradient(circle at 8% -12%, var(--neutral-200) 0, transparent 40%),
                radial-gradient(circle at 100% 2%, var(--neutral-050) 0, transparent 35%),
                var(--bg);
            color: var(--ink);
            line-height: 1.5;
        }
        h1 {
            font-size: 1.4rem;
        }
        h2 {
            font-size: 1.2rem;
        }
        h3 {
            font-size: 1.1rem;
        }
        h4 {
            font-size: 1rem;
        }
        a,
        button {
            cursor: pointer;
        }
        a:not([class]) {
            color: var(--accent);
            text-decoration: none;
            transition: color 140ms ease, text-decoration-color 140ms ease;
        }
        a:not([class]):hover {
            color: var(--accent-link-hover);
            text-decoration: underline;
            text-decoration-thickness: 1px;
            text-underline-offset: 0.12em;
        }
        a:not([class]):active {
            color: var(--accent-link-active);
        }
        button:disabled {
            cursor: not-allowed;
        }
        button:not(:disabled):active,
        .auth-button:not(:disabled):active,
        .nav-button:not(:disabled):active,
        .nav-main-link:not(:disabled):active {
            transform: translateY(1px);
            box-shadow: var(--button-press-shadow);
        }
        body.modal-open,
        body.doc-guide-modal-open {
            overflow: hidden;
        }
        .app-toast {
            position: fixed;
            right: 1rem;
            top: 1rem;
            z-index: 80;
            max-width: min(24rem, calc(100vw - 2rem));
            padding: 0.75rem 0.95rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 8px;
            background: var(--surface);
            box-shadow: var(--shadow-strong);
            color: var(--ink);
        }
        .app-toast.is-success {
            border-color: #badbcc;
            background: #d1e7dd;
            color: #146c43;
        }
        .app-toast.is-error {
            border-color: #f5c2c7;
            background: #f8d7da;
            color: #b02a37;
        }
        .app-modal[hidden] {
            display: none;
        }
        .app-modal {
            position: fixed;
            inset: 0;
            z-index: 70;
            display: grid;
            place-items: center;
            padding: 1rem;
        }
        .app-modal[data-match-feedback-modal="1"] {
            z-index: 80;
        }
        .app-modal-backdrop {
            position: absolute;
            inset: 0;
            background: var(--modal-backdrop);
        }
        .app-modal-panel {
            position: relative;
            z-index: 1;
            width: min(30rem, 100%);
            padding: 1.1rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 8px;
            background: var(--surface);
            box-shadow: var(--shadow-strong);
        }
        .matches-detail-loading-panel {
            display: flex;
            width: auto;
            min-width: 5rem;
            min-height: 5rem;
            align-items: center;
            justify-content: center;
        }
        .matches-detail-loading-panel .button-loading-spinner {
            width: 1.5rem;
            height: 1.5rem;
            margin-right: 0;
            border-top-color: var(--accent-strong);
        }
        .matches-next-steps-modal-panel {
            display: flex;
            width: min(56rem, 100%);
            max-height: 80vh;
            flex-direction: column;
        }
        .matches-next-steps-list {
            display: grid;
            max-height: 60vh;
            gap: 0.65rem;
            margin: 0;
            overflow-y: auto;
            padding: 0.15rem;
        }
        .matches-next-steps-item {
            display: flex;
            position: relative;
            gap: 0.65rem;
            align-items: flex-start;
            padding: 0.7rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 0.65rem;
            background: var(--blue-surface-soft);
        }
        .matches-next-steps-item input {
            flex: 0 0 auto;
            margin-top: 0.2rem;
        }
        .matches-next-steps-item strong,
        .matches-next-steps-item-copy {
            display: block;
        }
        .matches-next-steps-item-copy {
            flex: 1 1 auto;
            margin-top: 0.2rem;
            color: var(--ink-muted);
            line-height: 1.4;
        }
        .matches-next-steps-item-copy strong {
            color: var(--ink);
        }
        .matches-next-steps-subtitle {
            color: var(--ink-muted);
            line-height: 1.4;
        }
        .matches-next-steps-edit-button {
            display: inline-flex;
            flex: 0 0 auto;
            align-items: center;
            justify-content: center;
            width: 2rem;
            height: 2rem;
            padding: 0;
            border: 1px solid var(--blue-border-soft);
            border-radius: 999px;
            background: var(--surface);
            color: var(--accent);
            cursor: pointer;
        }
        .matches-next-steps-edit-button:hover,
        .matches-next-steps-edit-button:focus-visible {
            border-color: var(--accent);
            background: var(--blue-surface-soft);
        }
        .matches-next-steps-edit-button:focus-visible {
            outline: 2px solid var(--accent);
            outline-offset: 2px;
        }
        .matches-next-steps-edit-button svg,
        .matches-next-steps-add-icon {
            width: 1rem;
            height: 1rem;
        }
        .matches-next-steps-editor {
            display: grid;
            flex: 1 1 auto;
            gap: 0.45rem;
        }
        .matches-next-steps-editor .auth-input {
            width: 100%;
        }
        .matches-next-steps-item-actions {
            display: flex;
            justify-content: flex-end;
            gap: 0.45rem;
            grid-column: 1 / -1;
        }
        .matches-next-steps-delete-button {
            color: var(--danger, #b42318);
        }
        .matches-next-steps-delete-confirmation {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            gap: 0.45rem;
            color: var(--ink-muted);
        }
        .matches-next-steps-actions {
            display: flex;
            justify-content: flex-end;
            gap: 0.6rem;
            margin-top: 0.9rem;
        }
        .matches-next-steps-actions [data-matches-next-steps-add="1"] {
            margin-right: auto;
        }
        .app-modal-panel h2 {
            margin: 0 2rem 0.5rem 0;
        }
        .app-modal-panel p {
            margin: 0 0 1rem;
        }
        .app-modal-close {
            position: absolute;
            top: 0.6rem;
            right: 0.6rem;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 2rem;
            height: 2rem;
            border: 0;
            border-radius: 999px;
            background: transparent;
            color: var(--muted);
            font-size: 1.4rem;
            line-height: 1;
        }
        .app-modal-close:hover {
            background: var(--neutral-050);
            color: var(--ink);
        }
        .app-modal-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 1rem;
        }
        .secondary-button {
            background: var(--neutral-050);
            color: var(--ink);
            box-shadow: none;
        }
        .matches-detail-back-icon {
            display: inline-flex;
            width: 1rem;
            height: 1rem;
            align-items: center;
            justify-content: center;
        }
        .matches-detail-back-icon svg {
            display: block;
            width: 100%;
            height: 100%;
        }
        .danger-button {
            background: var(--danger);
            box-shadow: var(--shadow-danger-soft);
        }
        .danger-button:hover {
            box-shadow: var(--shadow-danger-strong);
        }
        .center-content {
            width: fit-content;
            margin: 0 auto;
        }
        .text-center {
            text-align: center;
        }
        .shell {
            width: min(calc(100% - (2 * var(--app-page-gutter))), var(--app-content-max));
            margin: 1.5rem auto;
            padding: 0 0 1rem;
        }
        .topbar {
            position: relative;
            z-index: 20;
            background: var(--surface);
            border-top: 0;
            border-right: 0;
            border-bottom: 1px solid var(--line);
            border-left: 0;
            border-radius: 0;
            box-shadow: var(--shadow-soft);
            backdrop-filter: blur(4px);
        }
        .topbar-inner {
            box-sizing: border-box;
            width: min(calc(100% - (2 * var(--app-page-gutter))), var(--app-content-max));
            margin: 0 auto;
            padding: 1rem 0;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: 1rem;
            align-items: center;
        }
        .brand {
            margin: 0;
            font-size: 1rem;
            font-family: "Fraunces", "Georgia", serif;
            font-weight: 700;
            letter-spacing: 0.015em;
        }
        .brand-block {
            display: grid;
            gap: 0.35rem;
            align-items: start;
        }
        .brand-tagline {
            font-size: 0.76rem;
            line-height: 1.2;
            color: var(--ink-muted);
            font-weight: 600;
        }
        .brand-logo-link {
            display: inline-flex;
            width: fit-content;
            line-height: 0;
        }
        .brand-logo {
            display: block;
            width: auto;
            max-width: 100%;
            height: 1.9rem;
        }
        .brand-logo-queravo {
            height: 1.45rem;
        }
        .brand-wordmark {
            display: inline-block;
            font-family: "Fraunces", "Georgia", serif;
            font-size: 1.45rem;
            line-height: 1;
            font-weight: 700;
            letter-spacing: 0.01em;
            color: var(--accent-text);
            text-transform: none;
        }
        .env-chip {
            display: inline-block;
            margin-top: 0.35rem;
            padding: 0.15rem 0.55rem;
            border-radius: 999px;
            background: var(--blue-050);
            color: var(--ink-muted);
            font-size: 0.76rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.04em;
            border: 1px solid var(--blue-200);
        }
        .nav {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            align-items: center;
        }
        .topbar-menu-toggle {
            display: none;
        }
        .nav form {
            margin: 0;
        }
        .nav-item {
            position: relative;
        }
        .nav a,
        .nav-main-link,
        .nav-button {
            text-decoration: none;
            color: var(--ink);
            background: var(--blue-050);
            border: 1px solid var(--blue-200);
            border-radius: 999px;
            padding: 0.45rem 0.9rem;
            font-size: 0.9rem;
            font-weight: 600;
            transition: border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
            font-family: inherit;
            cursor: pointer;
        }
        .nav a:hover,
        .nav-main-link:hover,
        .nav-button:hover {
            background: var(--blue-100);
            border-color: var(--line-strong);
            color: var(--accent-link-hover);
            text-decoration: underline;
            text-decoration-thickness: 1px;
            text-underline-offset: 0.12em;
            transform: translateY(-1px);
        }
        .nav a:active,
        .nav-main-link:active,
        .nav-button:active {
            color: var(--accent-link-active);
        }
        .nav a.active,
        .nav-item.active > .nav-main-link {
            background: var(--accent-soft);
            border-color: var(--blue-300);
            color: var(--accent-text);
        }
        .nav-submenu {
            position: absolute;
            min-width: 8rem;
            padding: 0.35rem;
            border: 1px solid var(--line);
            border-radius: 10px;
            background: var(--surface-strong);
            box-shadow: var(--shadow-soft);
            display: none;
            z-index: 120;
        }
        .nav-item-has-submenu:hover .nav-submenu,
        .nav-item-has-submenu:focus-within .nav-submenu {
            display: grid;
            gap: 0.25rem;
        }
        .nav-submenu a,
        .nav-submenu-button {
            display: block;
            width: 100%;
            box-sizing: border-box;
            text-align: left;
            border: 1px solid var(--blue-200);
            border-radius: 8px;
            background: var(--blue-050);
            color: var(--ink);
            font: inherit;
            font-size: 0.88rem;
            font-weight: 600;
            padding: 0.45rem 0.6rem;
            text-decoration: none;
            cursor: pointer;
        }
        .nav-submenu a:hover,
        .nav-submenu-button:hover {
            background: var(--blue-100);
            border-color: var(--line-strong);
            color: var(--accent-link-hover);
            text-decoration: underline;
            text-decoration-thickness: 1px;
            text-underline-offset: 0.12em;
        }
        .nav-submenu a:active,
        .nav-submenu-button:active {
            color: var(--accent-link-active);
        }
        .panel {
            margin-top: 1rem;
            border: 1px solid var(--line);
            border-radius: 14px;
            padding: 1.25rem;
            animation: panel-fade-in 220ms ease-out;
            box-shadow: var(--shadow-soft);
            min-height: 70vh;
            margin: 0 auto;
            margin-top: 1rem;
        }
        .shell {
            flex: 1 0 auto;
        }
        .nav-auth-hidden {
            visibility: hidden;
        }
        .page-heading-row {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
            flex-wrap: wrap;
        }
        .page-heading-row h1 {
            margin: 0;
            text-align: left;
        }
        .page-heading-row .doc-guide {
            margin: 0;
        }
        .intake-intro {
            margin: 0 auto;
        }
        .footer {
            margin-top: 0.75rem;
            border-top: 1px solid var(--line);
            background: var(--surface);
        }
        .footer-inner {
            box-sizing: border-box;
            width: min(calc(100% - (2 * var(--app-page-gutter))), var(--app-content-max));
            min-height: 3.75rem;
            padding: 0.75rem 0;
            margin: 0 auto;
            color: var(--ink-muted);
            font-size: 0.86rem;
            text-align: center;
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 0.45rem;
            flex-wrap: wrap;
        }
        .footer-logo {
            display: inline-block;
            height: 1.1rem;
            width: auto;
        }
        .footer-logo-queravo {
            height: 1.5rem;
        }
        .footer-wordmark {
            display: inline-block;
            font-family: "Fraunces", "Georgia", serif;
            font-size: 1rem;
            line-height: 1;
            font-weight: 700;
            letter-spacing: 0.01em;
            color: var(--accent-text);
            text-transform: none;
        }
        .footer-tagline {
            font-size: 0.8rem;
            line-height: 1.2;
            color: var(--ink-muted);
            font-weight: 600;
        }
        .dashboard-grid {
            display: grid;
            gap: 0.8rem;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
            margin-top: 1rem;
        }
        .dashboard-card {
            display: block;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
            transition: transform 180ms ease, box-shadow 180ms ease;
        }
        .dashboard-card-link {
            color: inherit;
            cursor: pointer;
            text-decoration: none;
        }
        .dashboard-card-link:focus-visible {
            outline: 3px solid var(--accent-soft);
            outline-offset: 3px;
        }
        .dashboard-card:hover {
            transform: translateY(-2px);
            box-shadow: var(--shadow-card-hover);
        }
        .dashboard-label {
            margin: 0;
            color: var(--ink-muted);
            font-size: 0.8rem;
            text-transform: uppercase;
            letter-spacing: 0.04em;
        }
        .dashboard-value {
            margin: 0.25rem 0 0.4rem;
            font-size: 1.35rem;
            font-weight: 700;
        }
        .dashboard-detail {
            margin: 0;
            color: var(--ink-muted);
            font-size: 0.9rem;
            overflow-wrap: anywhere;
        }
        .dashboard-progress {
            margin-top: 1rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
        }
        .progress-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.8rem;
            margin-bottom: 0.7rem;
        }
        .progress-header h2 {
            margin: 0;
            font-size: 1rem;
        }
        .progress-track {
            border-radius: 999px;
            background: var(--blue-100);
            height: 0.75rem;
            overflow: hidden;
        }
        .progress-fill {
            display: block;
            height: 100%;
            background: linear-gradient(90deg, var(--blue-500), var(--accent));
        }
        .dashboard-split {
            display: grid;
            gap: 0.8rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            margin-top: 1rem;
        }
        .dashboard-steps {
            margin-top: 1rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
        }
        .dashboard-charts {
            margin-top: 1rem;
        }
        .dashboard-chart-grid {
            display: grid;
            gap: 0.8rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        .dashboard-chart-card {
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
        }
        .dashboard-chart-list {
            list-style: none;
            margin: 0;
            padding: 0;
            display: grid;
            gap: 0.6rem;
        }
        .dashboard-chart-item {
            display: grid;
            gap: 0.35rem;
        }
        .dashboard-chart-meta {
            display: flex;
            justify-content: space-between;
            gap: 0.8rem;
            font-size: 0.9rem;
        }
        .dashboard-chart-track {
            border-radius: 999px;
            background: var(--blue-100);
            height: 0.65rem;
            overflow: hidden;
        }
        .dashboard-chart-fill {
            display: block;
            height: 100%;
            background: linear-gradient(90deg, var(--blue-500), var(--accent));
        }
        .dashboard-pie-layout {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
            gap: 1rem;
            align-items: center;
        }
        .dashboard-pie-footer {
            grid-column: 1 / -1;
            width: 100%;
            margin: 0;
            text-align: center;
        }
        .dashboard-pie-visual {
            position: relative;
            width: min(100%, 13rem);
            aspect-ratio: 1;
            margin: 0 auto;
            border-radius: 50%;
            background: conic-gradient(var(--blue-300) 0 100%);
        }
        .dashboard-pie-center {
            position: absolute;
            inset: 50%;
            transform: translate(-50%, -50%);
            width: 64%;
            height: 64%;
            border-radius: 50%;
            background: var(--surface-strong);
            display: grid;
            place-items: center;
            text-align: center;
            padding: 0.85rem;
        }
        .dashboard-pie-center strong {
            display: block;
            font-size: 1.5rem;
            line-height: 1.1;
        }
        .dashboard-pie-center span {
            color: var(--ink-muted);
            font-size: 0.84rem;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 0.04em;
        }
        .dashboard-pie-legend {
            list-style: none;
            margin: 0;
            padding: 0;
            display: grid;
            gap: 0.65rem;
        }
        .dashboard-pie-legend-item {
            display: grid;
            grid-template-columns: auto 1fr auto;
            gap: 0.65rem;
            align-items: center;
        }
        .dashboard-pie-legend-meta {
            display: grid;
            gap: 0.15rem;
        }
        .dashboard-pie-legend-meta span {
            font-size: 0.92rem;
            font-weight: 600;
        }
        .dashboard-pie-legend-meta strong,
        .dashboard-pie-legend-item small {
            font-size: 0.84rem;
            color: var(--ink-muted);
        }
        .dashboard-pie-swatch {
            width: 0.9rem;
            height: 0.9rem;
            border-radius: 999px;
            background: var(--blue-300);
            box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.45);
        }
        .dashboard-pie-swatch-positive {
            background: var(--accent);
        }
        .dashboard-pie-swatch-high {
            background: var(--fit-score-high);
        }
        .dashboard-pie-swatch-good {
            background: var(--fit-score-good);
        }
        .dashboard-pie-swatch-warning {
            background: var(--fit-score-warning);
        }
        .dashboard-pie-swatch-low {
            background: var(--fit-score-low);
        }
        .dashboard-pie-swatch-negative {
            background: var(--danger-soft);
        }
        .dashboard-pie-swatch-neutral {
            background: var(--blue-300);
        }
        .step-list {
            list-style: none;
            margin: 0;
            padding: 0;
            display: grid;
            gap: 0.55rem;
        }
        .wizard-steps .step-list {
            display: flex;
            flex-wrap: wrap;
            align-items: stretch;
            justify-content: center;
        }
        .wizard-steps .step-list > .step-item {
            flex: 1 1 350px;
            width: 100%;
            max-width: 350px;
        }
        .step-item {
            display: grid;
            grid-template-columns: auto 1fr auto;
            align-items: center;
            gap: 0.65rem;
            padding: 0.55rem 0.65rem;
            border: 1px solid var(--blue-150);
            border-radius: 10px;
            background: var(--surface-strong);
        }
        .step-dot {
            width: 0.7rem;
            height: 0.7rem;
            border-radius: 999px;
            background: var(--blue-300);
        }
        .step-label {
            font-weight: 400;
            font-size: 0.92rem;
            overflow-wrap: anywhere;
            color: var(--ink);
            text-decoration: none;
        }
        a.step-label:visited {
            color: var(--ink);
        }
        a.step-label:hover {
            font-weight: 600;
            color: var(--accent-link-hover);
        }
        a.step-label:active {
            color: var(--accent-link-active);
        }
        .step-status {
            font-size: 0.78rem;
            text-transform: uppercase;
            letter-spacing: 0.04em;
            color: var(--ink-muted);
        }
        .step-complete .step-dot {
            background: var(--accent);
        }
        .step-current {
            border-color: var(--blue-300);
            background: var(--blue-100);
        }
        .step-current .step-dot {
            background: var(--accent-strong);
        }
        .dashboard-card h2 {
            margin-top: 0;
            font-size: 1rem;
        }
        .supporting-tools-guidance-text {
            color: var(--ink-muted);
            font-size: 0.86rem;
            font-style: italic;
            font-weight: normal;
        }
        .action-list,
        .activity-list {
            margin: 0;
            padding-left: 1.2rem;
            overflow-wrap: anywhere;
        }
        .action-list li,
        .activity-list li {
            margin-bottom: 0.6rem;
        }
        .activity-list strong,
        .activity-list span,
        .activity-list small {
            display: block;
        }
        .activity-list time,
        .activity-list small,
        .dashboard-empty-state {
            color: var(--ink-muted);
            font-size: 0.86rem;
            font-style: italic;
        }
        .activity-list .activity-inline-label,
        .activity-list .activity-inline-value {
            display: inline;
        }
        .matches-detail-panel .activity-list {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 14rem));
            justify-content: center;
            gap: 0.6rem 0.75rem;
            padding-left: 0;
        }
        .matches-detail-panel .activity-list > li {
            min-width: 0;
            margin-bottom: 0;
        }
        .matches-detail-panel .matches-opportunity-fact-pills {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: 0.5rem;
            list-style: none;
            padding-left: 0;
        }
        .matches-detail-panel .matches-opportunity-fact-pill {
            display: inline-flex;
            width: auto;
            align-items: center;
            margin: 0;
            padding: 0.35rem 0.65rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 999px;
            background: var(--blue-surface-soft);
            color: var(--ink);
            font-size: 0.9rem;
            line-height: 1.25;
        }
        .matches-detail-panel .matches-next-steps-count-button {
            margin: -0.35rem -0.65rem;
            padding: 0.35rem 0.65rem;
            border: 0;
            border-radius: inherit;
            background: transparent;
            color: inherit;
            cursor: pointer;
            font: inherit;
            line-height: inherit;
            transition: background-color 140ms ease, box-shadow 140ms ease, color 140ms ease;
        }
        .matches-detail-panel .matches-next-steps-count-button:hover,
        .matches-detail-panel .matches-next-steps-count-button.is-active {
            background: var(--blue-border-soft);
            color: #fff;
        }
        .matches-detail-panel .matches-next-steps-count-button:active {
            background: var(--accent);
            color: #fff;
        }
        .matches-detail-panel .matches-next-steps-count-button:focus-visible {
            outline: 2px solid var(--accent);
            outline-offset: 2px;
            box-shadow: 0 0 0 3px var(--blue-surface-soft);
        }
        .matches-detail-panel .matches-opportunity-effort-pill.is-low {
            border-color: var(--green-success-border);
            background: var(--green-success-bg);
        }
        .matches-detail-panel .matches-opportunity-effort-pill.is-medium {
            border-color: #d6a813;
            background: #fff3c4;
            color: #5b4300;
        }
        .matches-detail-panel .matches-opportunity-effort-pill.is-high {
            border-color: #dc2626;
            background: #fee2e2;
            color: #7f1d1d;
        }
        .dashboard-charts > .dashboard-empty-state {
            margin: 0 0 0.8rem;
            text-align: center;
        }
        .dashboard-chart-actions {
            display: flex;
            justify-content: flex-end;
            margin: 0.7rem 0 1rem;
        }
        .inline-cta {
            color: var(--accent);
            font-weight: 600;
            text-decoration: none;
            transition: color 140ms ease, text-decoration-color 140ms ease;
        }
        .inline-cta:hover {
            color: var(--accent-link-hover);
            text-decoration: underline;
            text-decoration-thickness: 1px;
            text-underline-offset: 0.12em;
        }
        .inline-cta:active {
            color: var(--accent-link-active);
        }
        .inline-cta.is-loading {
            cursor: wait;
            opacity: 0.72;
        }
        button.inline-cta.integration-status-toggle {
            appearance: none;
            background: none;
            border: 0;
            cursor: pointer;
            display: inline;
            font: inherit;
            padding: 0;
            text-align: left;
        }
        button.inline-cta.integration-status-toggle:hover,
        button.inline-cta.integration-status-toggle:focus-visible {
            color: var(--accent-link-hover);
            text-decoration: underline;
            text-decoration-thickness: 1px;
            text-underline-offset: 0.12em;
        }
        .status-message {
            margin-top: 0.75rem;
            border: 1px solid var(--status-success-border);
            border-radius: 10px;
            background: var(--status-success-bg);
            color: var(--status-success-ink);
            padding: 0.7rem 0.9rem;
        }
        .auth-column form {
            margin-top: 0.65rem;
        }
        .button {
            border: 1px solid var(--accent-strong);
            border-radius: 8px;
            background: var(--accent-strong);
            color: var(--white);
            cursor: pointer;
            font: inherit;
            padding: 0.45rem 0.75rem;
        }
        .button-secondary {
            background: var(--surface-strong);
            color: var(--accent-text);
        }
        .button-danger {
            border-color: var(--danger-border);
            background: var(--danger-bg);
            color: var(--white);
        }
        .matches-toolbar {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.8rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.8rem 0.9rem;
            background: var(--surface);
            margin-top: 1rem;
        }
        .matches-toolbar p {
            margin: 0;
        }
        .matches-toolbar-links {
            display: flex;
            justify-content: flex-start;
            align-items: center;
            gap: 1.25rem;
            flex: 0 0 auto;
        }
        .matches-toolbar-link-icon {
            width: 1rem;
            height: 1rem;
            color: var(--matches-toolbar-icon);
            flex: 0 0 auto;
        }
        .matches-toolbar-links .inline-cta {
            display: inline-flex;
            align-items: center;
            gap: 0.35rem;
        }
        .matches-toolbar-links .inline-cta.is-active,
        .sources-controls .inline-cta.is-active {
            background: var(--accent-soft);
            border-radius: 0.45rem;
            padding: 0.25rem 0.5rem;
        }
        .toolbar-shell {
            color: var(--ink-muted);
            font-size: 0.9rem;
            display: flex;
            gap: 0.8rem;
            flex-wrap: wrap;
        }
        .matches-toolbar .toolbar-shell {
            margin-left: auto;
        }
        .matches-controls {
            display: grid;
            grid-template-columns: repeat(3, minmax(10rem, 1fr));
            gap: 0.45rem 0.75rem;
            align-items: end;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.85rem;
            background: var(--surface);
            margin-top: 1rem;
        }
        .matches-controls-modal .app-modal-actions {
            margin-top: 1rem;
        }
        .matches-controls-modal .auth-label {
            margin-right: 0;
        }
        .matches-controls-modal .auth-input {
            width: min(25rem, 100%);
        }
        .matches-controls-modal .matches-control-select {
            width: min(14rem, 100%);
            cursor: pointer;
            margin: 0.5rem 0rem 1rem 0rem;
        }
        .matches-controls-modal [data-matches-controls-modal-form="1"],
        [data-match-tags-form="1"] {
            display: grid;
            justify-items: center;
        }
        .matches-controls-modal [data-matches-controls-modal-form="1"] .auth-label,
        [data-match-tags-form="1"] .auth-label {
            text-align: center;
        }
        .matches-tag-filter-choices {
            display: flex;
            gap: 0.45rem 0.7rem;
            justify-items: center;
            margin: 0.25rem 0 0.8rem;
            flex-wrap: wrap;
            justify-content: center;
        }
        .matches-tag-filter-choices > .auth-note { grid-column: 1 / -1; margin: 0; }
        .matches-tag-filter-loading {
            grid-column: 1 / -1;
            display: flex;
            min-height: 7rem;
            align-items: center;
            justify-content: center;
            gap: 0.6rem;
            color: var(--ink-muted);
            font-weight: 700;
        }
        .matches-tag-filter-loading .button-loading-spinner { margin-right: 0; border-top-color: var(--accent-strong); }
        .matches-tag-filter-choice {
            display: inline-flex;
            align-items: center;
            gap: 0.45rem;
            cursor: pointer;
        }
        .matches-tag-filter-choice input { width: 1rem; height: 1rem; accent-color: var(--accent-strong); }
        [data-match-tags-form="1"] .auth-input {
            width: min(25rem, 100%);
        }
        [data-match-tags-content="1"] {
            display: grid;
            justify-items: center;
            width: min(25rem, 100%);
        }
        .match-tags-loading {
            display: flex;
            min-height: 11rem;
            align-items: center;
            justify-content: center;
            gap: 0.6rem;
            color: var(--ink-muted);
            font-weight: 700;
        }
        .match-tags-loading .button-loading-spinner {
            margin-right: 0;
            border-top-color: var(--accent-strong);
        }
        .matches-controls .auth-label {
            margin: 0;
        }
        .matches-filter-field {
            display: grid;
            gap: 0.35rem;
        }
        .matches-filter-summary {
            grid-column: 1 / -1;
            margin: 0.2rem 0 0;
            color: var(--ink-muted);
            font-size: 0.88rem;
        }
        .matches-list {
            margin-top: 1rem;
            display: grid;
            gap: 0.8rem;
        }
        .sources-page-header {
            display: block;
            align-items: flex-start;
            gap: 1rem;
            margin-bottom: 1rem;
        }
        .sources-page-header > div:first-child,
        .sources-page-header > .auth-note-row {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 1rem;
        }
        header[data-prompt-cycle-status-shell="1"] > .sources-page-header {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 1rem;
            margin-bottom: 1rem;
        }
        header[data-prompt-cycle-status-shell="1"] > .sources-page-header > div:first-child {
            display: block;
        }
        .matches-status-toggle-link {
            white-space: nowrap;
        }
        .sources-page-header h1 {
            margin-top: 0;
        }
        .sources-page-header p {
            margin-bottom: 0;
        }
        .sources-controls {
            display: flex;
            justify-content: space-between;
            gap: 0.45rem 0.75rem;
            align-items: center;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.85rem;
            background: var(--surface);
            margin-top: 1rem;
        }
        .sources-controls .inline-cta {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 0.35rem;
        }
        .sources-controls .auth-label {
            margin: 0;
        }
        .source-filter-field {
            display: grid;
            gap: 0.35rem;
        }
        .sources-toolbar-links {
            display: flex;
            flex: 0 0 auto;
            align-items: center;
            gap: 1.25rem;
        }
        .source-filter-summary {
            grid-column: auto;
            margin: 0.2rem 0 0 auto;
            color: var(--ink-muted);
            font-size: 0.88rem;
            text-align: right;
        }
        .source-lazy-status,
        .matches-lazy-status {
            margin-top: 1rem;
        }
        .source-lazy-sentinel,
        .matches-lazy-sentinel {
            width: 100%;
            min-height: 1px;
        }
        .match-card {
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
            transition: background-color 180ms ease, border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
        }
        .match-card-collapsible.is-collapsed {
            cursor: pointer;
        }
        .match-card-collapsible.is-collapsed:hover {
            border-color: var(--blue-200);
            background: var(--blue-050);
            box-shadow: 0 8px 22px rgba(26, 54, 93, 0.1);
            transform: translateY(-1px);
        }
        .match-card-collapsible.is-collapsed:focus-within {
            border-color: var(--blue-300);
            box-shadow: 0 0 0 3px rgba(42, 91, 154, 0.14);
        }
        .match-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.8rem;
        }
        .match-title-group {
            display: flex;
            align-items: center;
            gap: 0.7rem;
            min-width: 0;
            flex: 1 1 auto;
        }
        .sources-controls-modal .auth-input {
            width: min(14rem, 100%);
        }
        .sources-controls-modal [data-source-controls-modal-form="1"] {
            display: grid;
            justify-items: center;
        }
        .sources-controls-modal [data-source-controls-modal-form="1"] .auth-label {
            margin-right: 0;
            text-align: center;
        }
        .match-title-indicators {
            display: flex;
            flex: 0 0 auto;
            flex-direction: column;
            align-items: center;
            gap: 0.25rem;
        }
        .match-title-text {
            min-width: 0;
        }
        .match-title-link,
        .match-title-link:hover,
        .match-title-link:focus {
            color: var(--ink);
            text-decoration: none;
        }
        .match-title-heading-row {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            min-width: 0;
            flex-wrap: wrap;
        }
        .match-title-heading-row h2 {
            margin-bottom: 0;
        }
        .match-tag-list { display: flex; flex-wrap: wrap; gap: 0.3rem; margin: 0 0 0.35rem; }
        .match-tag-bubble { display: inline-flex; align-items: center; border-radius: 999px; padding: 0.16rem 0.55rem; font-size: 0.72rem; font-weight: 700; line-height: 1.25; background: #475569; color: #fff; }
        .match-tag-selector { width: 100%; }
        .match-tag-option-list { display: grid; gap: 0.35rem; max-height: 18rem; margin-top: 0.55rem; overflow-y: auto; }
        .match-tag-option { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 2.5rem; padding: 0.5rem 0.7rem; border: 1px solid var(--line-soft); border-radius: 0.45rem; background: var(--surface); color: var(--ink-strong); cursor: pointer; font: inherit; text-align: left; transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease; }
        .match-tag-option:hover, .match-tag-option:focus-visible { border-color: var(--accent-strong); background: color-mix(in srgb, var(--line-strong) 86%, var(--blue-100)); box-shadow: 0 0 0.7rem color-mix(in srgb, var(--accent) 28%, transparent); outline: 0; }
        @media (prefers-color-scheme: light) {
            .match-tag-option:hover, .match-tag-option:focus-visible { background: color-mix(in srgb, var(--line-strong) 88%, var(--accent-strong)); box-shadow: 0 0 0.7rem color-mix(in srgb, var(--accent-strong) 20%, transparent); }
        }
        .match-tag-option-check { color: var(--accent-strong); font-weight: 800; }
        .match-tag-option-create { font-weight: 700; }
        .match-tag-edit-button, .matches-control-link { border: 0; background: transparent; color: var(--blue-strong); cursor: pointer; font: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 0.16rem; }
        .match-tag-edit-button { font-size: 0.78rem; padding: 0.25rem; }
        .matches-controls { display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; text-align: center; }
        .match-rating-indicator,
        .match-feedback-icon-shell {
            width: 2rem;
            height: 2rem;
            border: 1px solid var(--blue-200);
            border-radius: 999px;
            background: var(--blue-050);
            color: var(--ink-muted);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 auto;
            font-size: 1rem;
            font-weight: 800;
            line-height: 1;
        }
        .match-rating-indicator.is-positive,
        .match-feedback-icon-shell.is-positive {
            border-color: var(--green-success-border);
            background: var(--green-success-bg);
        }
        .match-rating-indicator.is-negative,
        .match-feedback-icon-shell.is-negative {
            border-color: var(--status-error-border);
            background: var(--status-error-bg);
        }
        .match-rating-indicator img,
        .match-feedback-icon-shell .match-feedback-icon {
            display: block;
            width: 1.15rem;
            height: 1.15rem;
            object-fit: contain;
        }
        .match-rating-indicator picture {
            display: contents;
        }
        .match-rating-indicator.is-unrated {
            border: 1px solid var(--unrated-border);
            cursor: pointer;
            padding: 0;
            transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
        }
        .match-rating-indicator.is-unrated:hover,
        .match-rating-indicator.is-unrated:focus-visible {
            border-color: var(--accent-strong);
            background: var(--blue-100);
            box-shadow: 0 0 0 3px rgba(42, 91, 154, 0.14);
            outline: none;
        }
        .match-rating-indicator.is-unrated:active {
            transform: scale(0.94);
        }
        .match-header-actions {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.45rem;
        }
        .match-header-badges {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            gap: 0.45rem;
        }
        .match-header-badge-row {
            display: inline-flex;
            align-items: center;
            justify-content: flex-end;
            gap: 0.35rem;
            flex-wrap: wrap;
        }
        .match-header-feedback-indicator {
            align-self: center;
        }
        .match-new-tag {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 1.65rem;
            padding: 0.25rem 0.6rem;
            border: 1px solid var(--green-success-border);
            border-radius: 999px;
            background: var(--green-success-bg);
            color: var(--accent-text);
            font-size: 0.78rem;
            font-weight: 800;
            line-height: 1;
            white-space: nowrap;
        }
        .match-fully-researched-tag {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 1.65rem;
            gap: 0.3rem;
            padding: 0.25rem 0.6rem;
            border: 1px solid var(--blue-border);
            border-radius: 999px;
            background: var(--blue-050);
            color: var(--accent-text);
            font-size: 0.78rem;
            font-weight: 800;
            line-height: 1;
            white-space: nowrap;
        }
        .match-archive-icon-button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            height: 1.9rem;
            gap: 0.35rem;
            padding: 0 0.62rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 999px;
            background: var(--surface);
            color: var(--ink);
            cursor: pointer;
            transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
        }
        .match-archive-icon-button:hover {
            border-color: var(--blue-border);
            background: var(--blue-050);
            color: var(--blue-strong);
            transform: translateY(-1px);
        }
        .match-archive-icon-button:focus-visible {
            outline: 2px solid var(--blue-strong);
            outline-offset: 2px;
        }
        .match-archive-icon-button img {
            display: block;
            width: 1rem;
            height: 1rem;
            object-fit: contain;
        }
        .match-archive-icon-button span {
            font-size: 0.78rem;
            font-weight: 700;
            line-height: 1;
        }
        .match-header h2 {
            margin: 0;
            font-size: 1.05rem;
        }
        .match-card-body {
            margin-top: 0.8rem;
            overflow: hidden;
        }
        .prompt-cycle-status-card {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(10.5rem, 13.5rem);
            gap: 0.9rem 1.1rem;
            align-items: start;
        }
        .prompt-cycle-card-content {
            display: grid;
            min-width: 0;
        }
        .prompt-cycle-status-card .prompt-cycle-card-grid {
            display: grid;
            gap: 0.55rem;
            margin-top: 0;
        }
        .prompt-cycle-status-card .prompt-cycle-card-main {
            display: grid;
            min-width: 0;
        }
        .prompt-cycle-status-card .prompt-cycle-card-status-panel {
            align-content: start;
            justify-self: end;
            display: grid;
            gap: 0.45rem;
            margin-top: 0.05rem;
            text-align: right;
            width: min(100%, 13.5rem);
        }
        .prompt-cycle-card-status-summary {
            display: grid;
            gap: 0.45rem;
            justify-items: end;
        }
        .prompt-cycle-status-chip {
            --prompt-cycle-chip-base: #7f8d97;
            --prompt-cycle-chip-top: #eef3f7;
            --prompt-cycle-chip-mid: #b8c4cd;
            --prompt-cycle-chip-bottom: #65727b;
            align-items: center;
            border-radius: 999px;
            overflow: hidden;
            box-shadow:
                inset 0 1px 0 rgba(255, 255, 255, 0.45),
                inset 0 -1px 0 rgba(0, 0, 0, 0.18),
                0 6px 12px rgba(17, 27, 36, 0.18);
            color: #f8fbff;
            display: inline-flex;
            font-size: 0.77rem;
            font-weight: 700;
            letter-spacing: 0.02em;
            justify-content: center;
            line-height: 1.2;
            min-width: 6.4rem;
            background: linear-gradient(180deg, var(--prompt-cycle-chip-top) 0%, var(--prompt-cycle-chip-mid) 46%, var(--prompt-cycle-chip-bottom) 100%);
            padding: 0.55rem 1rem;
            text-align: center;
            text-transform: capitalize;
            text-shadow: 0 1px 1px rgba(12, 18, 24, 0.42);
            position: relative;
        }
        .prompt-cycle-status-chip::before {
            border-radius: inherit;
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.45);
            content: '';
            inset: 0;
            pointer-events: none;
            position: absolute;
        }
        .prompt-cycle-status-chip.bg-warning {
            --prompt-cycle-chip-top: #fff5cc;
            --prompt-cycle-chip-mid: #f2ca54;
            --prompt-cycle-chip-bottom: #b78416;
            color: #2e2410;
            text-shadow: 0 1px 0 rgba(255, 248, 217, 0.55);
        }
        .prompt-cycle-status-chip.bg-success {
            --prompt-cycle-chip-top: #e6faef;
            --prompt-cycle-chip-mid: #77cfa0;
            --prompt-cycle-chip-bottom: #2b8d62;
        }
        .prompt-cycle-status-chip.bg-danger {
            --prompt-cycle-chip-top: #ffeef0;
            --prompt-cycle-chip-mid: #e98592;
            --prompt-cycle-chip-bottom: #b04857;
        }
        .prompt-cycle-status-chip.bg-primary {
            --prompt-cycle-chip-top: #eef5ff;
            --prompt-cycle-chip-mid: #86adeb;
            --prompt-cycle-chip-bottom: #3367ac;
        }
        .prompt-cycle-status-chip.bg-secondary {
            --prompt-cycle-chip-top: #f2f4f6;
            --prompt-cycle-chip-mid: #b0bac2;
            --prompt-cycle-chip-bottom: #6f7a84;
        }
        .prompt-cycle-status-chip.bg-info {
            --prompt-cycle-chip-top: #edf9ff;
            --prompt-cycle-chip-mid: #84d9f4;
            --prompt-cycle-chip-bottom: #2d84a3;
            color: #11313d;
            text-shadow: 0 1px 0 rgba(243, 251, 255, 0.72);
        }
        .prompt-cycle-status-chip.bg-dark {
            --prompt-cycle-chip-top: #e8edf3;
            --prompt-cycle-chip-mid: #8391a1;
            --prompt-cycle-chip-bottom: #364150;
        }
        .prompt-cycle-status-chip::after {
            background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.32) 18%, rgba(255, 255, 255, 0.12) 38%, transparent 58%);
            content: '';
            inset: 0;
            pointer-events: none;
            position: absolute;
        }
        .prompt-cycle-status-chip.bg-dark {
            color: #f2f6fb;
        }
        .prompt-cycle-status-percentage {
            align-items: center;
            color: var(--ink);
            display: inline-flex;
            font-size: 0.76rem;
            font-weight: 700;
            justify-content: center;
            letter-spacing: 0.01em;
            min-width: 6.4rem;
            padding: 0.4rem 0.85rem;
            text-align: center;
            text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
        }
        .prompt-cycle-status-card .match-header {
            margin: 0;
        }
        .match-card-section {
            margin-top: 0.75rem;
            border-top: 1px solid var(--blue-border-soft);
            padding: 0.75rem;
        }
        .match-card-section h3 {
            margin: 0 0 0.35rem;
            font-size: 0.94rem;
        }
        .match-card-section p {
            margin: 0;
            margin-bottom: 1em;
            color: var(--ink);
            line-height: 1.45;
            overflow-wrap: anywhere;
        }
        .match-scope-snapshot {
            white-space: pre-line;
        }
        .matches-supporting-tools-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 18rem));
            justify-content: center;
            gap: 0.6rem 0.75rem;
            padding-left: 0;
            list-style: none;
        }
        .matches-supporting-tools-grid > li {
            margin-bottom: 0;
            overflow-wrap: anywhere;
        }
        .matches-artifact-link {
            appearance: none;
            background: transparent;
            color: var(--accent);
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.4rem;
            font: inherit;
            font-weight: 600;
            margin: 0 auto;
            padding: 0.7rem 0.8rem;
            text-align: center;
            text-decoration: none;
            width: 100%;
            border: 1px solid var(--blue-border-soft);
            border-radius: 10px;
            background: var(--blue-surface-alt);
        }
        .matches-artifact-link:hover,
        .matches-artifact-link:focus-visible {
            color: var(--accent-link-hover);
            text-decoration: underline;
            text-decoration-thickness: 1px;
            text-underline-offset: 0.12em;
        }
        .matches-artifact-preview-shell {
            margin-top: 0.85rem;
            display: grid;
            gap: 0.8rem;
        }
        [data-matches-artifact-heading="1"] {
            border-top: 1px solid rgba(255, 255, 255, 0.6);
            margin: 1rem 0 0.9rem;
            padding-top: 0.65rem;
        }
        @media (prefers-color-scheme: light) {
            [data-matches-artifact-heading="1"] {
                border-bottom-color: rgba(15, 23, 42, 0.32);
            }
        }
        .matches-opportunity-summary-heading {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 0;
            margin-top: 1rem;
        }
        .matches-opportunity-summary-heading h3 {
            margin: 0;
        }
        .matches-opportunity-posting-link {
            white-space: normal;
        }
        .matches-artifact-preview-panel {
            position: relative;
        }
        .matches-artifact-download-button {
            align-items: center;
            background: var(--blue-surface-alt);
            border: 1px solid var(--blue-border-soft);
            border-radius: 999px;
            color: var(--accent);
            display: inline-flex;
            height: 2rem;
            justify-content: center;
            position: absolute;
            right: 0.75rem;
            text-decoration: none;
            top: 0.75rem;
            width: 2rem;
        }
        .matches-artifact-download-button:hover,
        .matches-artifact-download-button:focus-visible {
            background: var(--blue-surface);
            color: var(--accent-link-hover);
        }
        .matches-artifact-download-button svg {
            display: block;
            fill: currentColor;
            height: 1.05rem;
            width: 1.05rem;
        }
        .match-card-detail-actions {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 0.6rem;
            margin-top: 0.9rem;
        }
        .match-card-detail-action {
            display: flex;
        }
        .collapsible-trigger {
            display: inline-flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.45rem;
        }
        .collapsible-trigger-label {
            display: inline-block;
        }
        .collapsible-trigger-icon {
            width: 0.5rem;
            height: 0.5rem;
            border-right: 2px solid currentColor;
            border-bottom: 2px solid currentColor;
            transform: rotate(45deg);
            transition: transform 160ms ease;
            flex-shrink: 0;
            margin-top: -0.1rem;
        }
        .collapsible-trigger[aria-expanded="true"] .collapsible-trigger-icon {
            transform: rotate(-135deg);
            margin-top: 0.08rem;
        }
        .matches-detail-collapsible {
            margin-top: 1rem;
        }
        .matches-detail-collapsible > h3,
        .matches-detail-collapsible-heading > h3 {
            margin: 0;
            text-align: center;
        }
        .matches-detail-collapsible-heading {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
        }
        .matches-detail-collapsible-heading > h3 {
            flex: 1 1 auto;
            min-width: 0;
        }
        .matches-detail-collapsible-trigger {
            display: inline-flex;
            align-items: center;
            justify-content: flex-start;
            gap: 0.45rem;
            padding: 0.7rem 0.8rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 999px;
            background: var(--blue-surface-alt);
            color: var(--accent-link-hover);
            font: inherit;
            font-weight: 600;
            text-align: left;
            text-decoration: none;
            cursor: pointer;
        }
        .matches-detail-collapsible-trigger:hover,
        .matches-detail-collapsible-trigger:focus-visible {
            background: var(--blue-surface);
            color: var(--accent-link-hover);
            text-decoration: underline;
            text-decoration-thickness: 1px;
            text-underline-offset: 0.12em;
        }
        .matches-detail-collapsible-trigger[aria-expanded="true"] .collapsible-trigger-icon {
            transform: rotate(-135deg);
            margin-top: 0.08rem;
        }
        .matches-detail-collapsible-title-icon {
            display: inline-flex;
            width: 1rem;
            height: 1rem;
            flex: 0 0 auto;
            align-items: center;
            justify-content: center;
        }
        .matches-detail-collapsible-title-icon svg,
        .matches-artifact-link-icon {
            display: block;
            width: 1rem;
            height: 1rem;
            flex: 0 0 auto;
        }
        .matches-detail-collapsible-pair {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 1rem;
        }
        .matches-detail-collapsible-pair--questions-absent {
            grid-template-columns: minmax(0, 1fr);
        }
        .matches-detail-collapsible-pair--questions-absent .matches-detail-collapsible-body .activity-list {
            padding-left: 0;
            list-style-position: inside;
            text-align: center;
        }
        .matches-detail-collapsible-pair .matches-detail-collapsible {
            min-width: 0;
        }
        .matches-detail-collapsible-pair .activity-list {
            display: block;
            padding-left: 1.2rem;
        }
        .matches-detail-collapsible-pair .activity-list > li {
            margin-bottom: 0.6rem;
        }
        .matches-ask-ai-button {
            flex: 0 0 auto;
            white-space: nowrap;
        }
        .matches-ask-ai-action {
            margin: 1rem 0 0;
            text-align: center;
        }
        .matches-detail-collapsible-body {
            background: rgba(15, 23, 42, 0.5);
            border-radius: 0.7rem;
            overflow: hidden;
            padding: 0.85rem 1rem;
        }
        .matches-artifact-preview-shell {
            background: rgba(15, 23, 42, 0.5);
            border-radius: 0.7rem;
            padding: 0.85rem;
        }
        @media (prefers-color-scheme: light) {
            .matches-detail-collapsible-body,
            .matches-artifact-preview-shell {
                background: rgba(255, 255, 255, 0.78);
            }
        }
        .match-toggle-button {
            border: 1px solid var(--blue-200);
            border-radius: 8px;
            background: var(--blue-050);
            color: var(--ink);
            font: inherit;
            font-size: 0.82rem;
            font-weight: 700;
            line-height: 1;
            padding: 0.42rem 0.58rem;
        }
        .match-toggle-button:hover {
            background: var(--blue-100);
            border-color: var(--line-strong);
        }
        .source-delete-icon {
            display: none;
        }
        .match-meta {
            margin: 0.2rem 0 0;
            color: var(--ink-muted);
            font-size: 0.9rem;
            overflow-wrap: anywhere;
        }
        .source-api-shell {
            margin-top: 0.75rem;
            border-top: 1px solid var(--blue-border-soft);
            padding-top: 0.75rem;
        }
        .source-api-status {
            margin: 0;
            color: var(--status-success-ink);
            font-size: 0.88rem;
            font-weight: 700;
        }
        .source-api-status.is-error {
            color: var(--ink-muted);
            font-weight: 600;
        }
        .source-api-group-note {
            margin: 0.35rem 0 0;
            color: var(--ink-muted);
            font-size: 0.82rem;
        }
        .source-api-form-help {
            margin: 0;
            color: var(--ink-muted);
            font-size: 0.86rem;
            line-height: 1.45;
        }
        .source-api-form {
            display: grid;
            gap: 0.55rem;
            max-width: 32rem;
            margin-top: 0.65rem;
        }
        .source-api-form [data-source-api-fields] {
            display: grid;
            gap: 0.55rem;
        }
        .source-api-form [data-source-api-fields][hidden] {
            display: none;
        }
        .source-api-form-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
        }
        .feedback-section-separator {
            border-top: 1px solid var(--blue-border-soft);
            margin: 1rem 0 0.85rem;
        }
        .match-feedback-inline {
            margin-top: 0.75rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 10px;
            padding: 0.75rem;
            background: var(--blue-surface-alt);
        }
        .feedback-summary {
            display: grid;
            gap: 0.4rem;
        }
        .feedback-summary p {
            margin: 0;
            line-height: 1.45;
            overflow-wrap: anywhere;
        }
        .match-feedback-question {
            margin: 0;
        }
        .match-feedback-actions {
            margin-top: 0.45rem;
            display: flex;
            gap: 0.5rem;
        }
        .match-feedback-button {
            border: 1px solid var(--blue-200);
            border-radius: 8px;
            background: var(--blue-050);
            color: var(--ink);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 2.45rem;
            min-height: 2.25rem;
            padding: 0.35rem 0.5rem;
            cursor: pointer;
        }
        .match-feedback-button:not(:disabled):hover,
        .match-feedback-button:not(:disabled):focus-visible {
            background: var(--blue-100);
            border-color: var(--line-strong);
            box-shadow: 0 0 0 3px rgba(42, 91, 154, 0.14);
            outline: none;
        }
        .match-feedback-button:not(:disabled):active {
            transform: scale(0.94);
        }
        .match-feedback-button:disabled {
            cursor: not-allowed;
            opacity: 0.58;
        }
        .match-feedback-button.is-positive {
            border-color: var(--green-success-border);
            background: var(--green-success-bg);
        }
        .match-feedback-button.is-negative {
            border-color: var(--status-error-border);
            background: var(--status-error-bg);
        }
        .match-feedback-icon {
            width: 1.35rem;
            height: 1.35rem;
            object-fit: contain;
        }
        .match-feedback-rating-row {
            display: flex;
            align-items: center;
            gap: 0.45rem;
            flex-wrap: wrap;
        }
        .match-feedback-form {
            margin-top: 0.6rem;
            display: grid;
            gap: 0.45rem;
        }
        .match-feedback-form textarea {
            border: 1px solid var(--line-strong);
            border-radius: 8px;
            padding: 0.55rem 0.65rem;
            font: inherit;
            background: var(--blue-surface-alt);
            resize: vertical;
        }
        .match-feedback-form button[type="submit"] {
            width: fit-content;
            border: 1px solid var(--accent-strong);
            border-radius: 8px;
            background: var(--accent-strong);
            color: var(--white);
            font: inherit;
            cursor: pointer;
            padding: 0.45rem 0.75rem;
        }
        .match-feedback-modal-panel {
            max-width: 34rem;
        }
        .match-feedback-modal-content .match-feedback-inline {
            margin-top: 0;
            padding: 0;
            border: 0;
            background: transparent;
        }
        .score-pill {
            margin: 0;
            border-radius: 999px;
            background: var(--blue-100);
            border: 1px solid var(--blue-300);
            color: var(--accent-text);
            padding: 0.25rem 0.6rem;
            font-size: 0.85rem;
            font-weight: 700;
            white-space: nowrap;
        }
        .matches-empty {
            margin-top: 1rem;
            border: 1px dashed var(--blue-dash-border);
            border-radius: 12px;
            padding: 1rem;
            background: var(--blue-surface-soft);
        }
        .matches-empty p {
            font-style: italic;
        }
        .matches-detail-panel {
            padding: 1rem 1rem 1rem 1rem;
            border-radius: 1rem;
        }
        .matches-detail-panel:focus-visible {
            outline: none;
        }
        .match-opportunity-description {
            margin: 1rem 0;
        }
        .match-opportunity-description p {
            overflow-wrap: anywhere;
        }
        .matches-detail-heading {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-start;
            justify-content: space-between;
            gap: 1rem;
            margin: 0 0 0.75rem;
        }
        .matches-detail-heading h2 {
            flex: 1 1 18rem;
            margin: 0;
            min-width: 0;
        }
        .matches-detail-title {
            min-width: 0;
            flex: 1 1 18rem;
        }
        .matches-detail-heading .auth-button {
            flex: 0 0 auto;
            margin-left: auto;
        }
        .matches-detail-actions {
            display: inline-flex;
            align-items: center;
            gap: 0.45rem;
            margin-left: 0;
            order: 2;
        }
        .matches-detail-heading .matches-detail-back-link {
            margin-left: 0;
            order: 3;
        }
        .matches-detail-actions .auth-button {
            margin-left: 0;
        }
        .match-detail-chat {
            position: relative;
            z-index: 20;
        }
        .match-detail-chat-launcher {
            position: fixed;
            top: var(--match-detail-chat-top, 5rem);
            right: 0;
            display: grid;
            width: clamp(3.5rem, 10vh, 4.25rem);
            aspect-ratio: 1;
            place-items: center;
            padding: 0.7rem;
            border: 1px solid var(--line-strong);
            border-radius: 50%;
            background: var(--white);
            box-shadow: 0 0.5rem 1.5rem rgba(16, 41, 73, 0.22);
            cursor: pointer;
            transform: translateX(calc(100% + 1px));
            transition: transform 300ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 180ms ease, border-color 180ms ease, background-color 180ms ease;
        }
        .match-detail-chat:not(.is-viewport-mounted) .match-detail-chat-launcher {
            visibility: hidden;
        }
        .match-detail-chat-launcher.is-visible {
            transform: translateX(0);
        }
        .match-detail-chat-launcher:hover {
            border-color: var(--accent-strong);
            background: #f8fbff;
            box-shadow: 0 0.75rem 1.75rem rgba(16, 41, 73, 0.32);
            transform: translateX(0) scale(1.06);
        }
        .match-detail-chat-launcher:active {
            transform: translateX(0) scale(0.95)!important;
        }
        .match-detail-chat-launcher img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: contain;
            transition: transform 180ms ease;
        }
        .match-detail-chat-launcher:hover img {
            transform: scale(1.04);
        }
        .match-detail-chat-launcher:focus-visible,
        .match-detail-chat-close:focus-visible,
        .match-detail-chat-submit:focus-visible,
        .match-detail-chat-input:focus-visible,
        .match-detail-chat-recommended-question:focus-visible,
        .match-detail-chat-recommended-questions-toggle:focus-visible {
            outline: 3px solid var(--accent-soft);
            outline-offset: 3px;
        }
        .match-detail-chat-panel {
            position: fixed;
            top: var(--match-detail-chat-top, 5rem);
            right: 0;
            z-index: 30;
            display: flex;
            width: min(26rem, calc(100vw - 2rem));
            height: min(90dvh, calc(100dvh - var(--match-detail-chat-top, 5rem)));
            max-height: min(90dvh, calc(100dvh - var(--match-detail-chat-top, 5rem)));
            flex-direction: column;
            overflow: visible;
            isolation: isolate;
            border: 1px solid var(--line-strong);
            border-radius: 1rem;
            background: var(--white);
            box-shadow: 0 1rem 3rem rgba(16, 41, 73, 0.28);
            transform: translateX(100%);
            transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
        }
        .match-detail-chat-panel.is-open {
            transform: translateX(0);
        }
        .match-detail-chat-panel[hidden] {
            display: none;
        }
        .match-detail-chat-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
            padding: 0.9rem 1rem;
            border-bottom: 1px solid var(--line);
            border-radius: 1rem 1rem 0 0;
            background: var(--blue-surface-soft);
        }
        .match-detail-chat-brand {
            display: flex;
            min-width: 0;
            align-items: center;
            gap: 0.6rem;
        }
        .match-detail-chat-brand img {
            width: 2rem;
            height: 2rem;
            flex: 0 0 auto;
        }
        .match-detail-chat-brand h2 {
            margin: 0;
            overflow: hidden;
            font-size: 1rem;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .match-detail-chat-close {
            flex: 0 0 auto;
            width: 2.25rem;
            height: 2.25rem;
            border: 1px solid var(--line-strong);
            border-radius: 50%;
            background: transparent;
            color: var(--ink);
            cursor: pointer;
            font-size: 1.5rem;
            line-height: 1;
        }
        .match-detail-chat-input-heading {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 0.75rem;
        }
        .match-detail-chat-input-heading label {
            min-width: 0;
        }
        .match-detail-chat-saved-threads-link {
            flex: 0 0 auto;
            border: 0;
            background: transparent;
            color: var(--accent);
            cursor: pointer;
            font: inherit;
            font-size: 0.82rem;
            font-weight: 700;
            text-decoration: underline;
            text-underline-offset: 0.12em;
        }
        .match-detail-chat-saved-threads-link:hover,
        .match-detail-chat-saved-threads-link:focus-visible {
            color: var(--accent-link-hover);
        }
        .match-detail-chat-saved-threads-panel {
            display: flex;
            width: min(32rem, 100%);
            max-height: min(38rem, calc(100dvh - 2rem));
            flex-direction: column;
        }
        .match-detail-chat-saved-threads-loading {
            display: grid;
            min-height: 12rem;
            place-items: center;
        }
        .match-detail-chat-saved-threads-loading-gif {
            width: 3rem;
            height: 3rem;
            border: 0.3rem solid var(--blue-border-soft);
            border-top-color: var(--accent);
            border-radius: 50%;
            animation: match-detail-chat-saved-threads-spin 0.8s linear infinite;
        }
        @keyframes match-detail-chat-saved-threads-spin {
            to {
                transform: rotate(360deg);
            }
        }
        @media (prefers-reduced-motion: reduce) {
            .match-detail-chat-saved-threads-loading-gif {
                animation: none;
            }
        }
        .match-detail-chat-saved-threads-list {
            display: flex;
            flex-direction: column;
            gap: 0.6rem;
            overflow-y: auto;
            padding: 0.15rem;
        }
        .match-detail-chat-saved-thread {
            width: 100%;
            padding: 0.7rem 0.85rem;
            border: 1px solid var(--line-strong);
            border-radius: 1rem;
            background: var(--blue-surface-soft);
            color: var(--ink);
            cursor: pointer;
            font: inherit;
            line-height: 1.4;
            text-align: left;
            overflow-wrap: anywhere;
        }
        .match-detail-chat-saved-thread:hover,
        .match-detail-chat-saved-thread:focus-visible {
            border-color: var(--accent);
            background: var(--blue-100);
        }
        .match-detail-chat-saved-threads-empty {
            color: var(--ink-muted);
        }
        .match-detail-chat-saved-threads-actions {
            margin-top: 1rem;
        }
        .matches-targeted-prep {
            display: flex;
            justify-content: center;
            margin: 1.25rem 0;
        }
        .matches-targeted-prep-status {
            text-align: center;
        }
        .match-detail-chat-transcript {
            min-height: 0;
            flex: 1 1 auto;
            overflow-y: auto;
            padding: 1rem;
        }
        .match-detail-chat-message {
            max-width: 88%;
            margin: 0 0 0.75rem;
            padding: 0.65rem 0.8rem;
            border-radius: 0.85rem;
            overflow-wrap: anywhere;
        }
        .match-detail-chat-message-content {
            font-size: 0.8rem;
            line-height: 1.45;
            white-space: pre-wrap;
        }
        .match-detail-chat-message-content p {
            margin: 0;
        }
        .match-detail-chat-message-content p + p,
        .match-detail-chat-message-content h3,
        .match-detail-chat-message-content h4,
        .match-detail-chat-message-content ul,
        .match-detail-chat-message-content ol,
        .match-detail-chat-message-content blockquote,
        .match-detail-chat-message-content pre {
            margin: 0.55rem 0 0;
        }
        .match-detail-chat-message-content h3,
        .match-detail-chat-message-content h4 {
            font-size: 0.9rem;
        }
        .match-detail-chat-message-content ul,
        .match-detail-chat-message-content ol {
            padding-left: 1.2rem;
        }
        .match-detail-chat-message-content blockquote {
            padding-left: 0.65rem;
            border-left: 3px solid var(--line-strong);
        }
        .match-detail-chat-message-content code {
            padding: 0.08rem 0.24rem;
            border-radius: 0.2rem;
            background: rgba(16, 41, 73, 0.1);
            font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
        }
        .match-detail-chat-message-content pre {
            overflow-x: auto;
            padding: 0.55rem;
            border-radius: 0.35rem;
            background: rgba(16, 41, 73, 0.1);
            white-space: pre;
        }
        .match-detail-chat-message-content pre code {
            padding: 0;
            background: transparent;
        }
        .match-detail-chat-message-content a {
            color: var(--accent-link);
            text-decoration: underline;
            text-underline-offset: 0.12em;
        }
        .match-detail-chat-message-user .match-detail-chat-message-content a {
            color: inherit;
        }
        .match-detail-chat-message-time {
            display: block;
            margin-top: 0.35rem;
            font-size: 0.7rem;
            opacity: 0.78;
        }
        .match-detail-chat-message-assistant {
            margin-right: auto;
            background: var(--blue-surface-soft);
            color: var(--ink);
        }
        .match-detail-chat-message-user {
            margin-left: auto;
            background: var(--accent-strong);
            color: var(--white);
        }
        .match-detail-chat-message-refused {
            border-left: 3px solid #b7791f;
        }
        .match-detail-chat-message-unavailable {
            border-left: 3px solid #a23b3b;
        }
        .match-detail-chat-status,
        .match-detail-chat-thinking {
            margin: 0;
            padding: 0 1rem 0.6rem;
            color: var(--ink-muted);
            font-size: 0.86rem;
        }
        .match-detail-chat-thinking {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            width: fit-content;
        }
        .match-detail-chat-thinking-text {
            display: inline-block;
            background: linear-gradient(105deg, var(--ink-muted) 15%, var(--accent-strong) 50%, var(--ink-muted) 85%);
            background-clip: text;
            background-size: 220% 100%;
            color: transparent;
            animation: match-detail-chat-thinking-shimmer 1s ease-in-out infinite;
        }
        .match-detail-chat-thinking-loader {
            box-sizing: border-box;
            width: 1rem;
            height: 1rem;
            flex: 0 0 auto;
            border: 2px solid var(--line-strong);
            border-top-color: var(--accent-strong);
            border-radius: 50%;
            animation: match-detail-chat-thinking-loader-spin 750ms linear infinite;
        }
        .match-detail-chat-recommended-panel {
            position: absolute;
            z-index: 1;
            top: 40%;
            right: calc(100%);
            width: min(22rem, calc(100vw - 28rem));
            max-height: 80dvh;
            padding: 1rem;
            overflow-y: auto;
            border: 1px solid var(--line-strong);
            border-radius: 1rem;
            background: var(--white);
            transform: translateX(100%) translateY(-50%);
            transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
        }
        .match-detail-chat-panel::before {
            position: absolute;
            z-index: 2;
            inset: 0;
            pointer-events: none;
            border-radius: inherit;
            background: var(--white);
            content: "";
        }
        .match-detail-chat-panel > :not(.match-detail-chat-recommended-panel) {
            position: relative;
            z-index: 3;
        }
        .match-detail-chat-panel.is-open .match-detail-chat-recommended-panel {
            transform: translateX(0) translateY(-50%);
            transition-delay: 320ms;
        }
        .match-detail-chat-panel.is-closing .match-detail-chat-recommended-panel {
            transition-delay: 0ms;
            transform: translateX(100%) translateY(-50%);
        }
        .match-detail-chat-recommended-heading {
            margin: 0 0 0.75rem;
            color: #101b17;
            font-size: 0.82rem;
            font-weight: 800;
        }
        .match-detail-chat-recommended-questions {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }
        .match-detail-chat-recommended-question {
            max-width: 100%;
            padding: 0.5rem 0.7rem;
            border: 1px solid var(--line-strong);
            border-radius: 1rem;
            background: var(--green-success-bg);
            color: var(--ink);
            cursor: pointer;
            font: inherit;
            font-size: 0.78rem;
            line-height: 1.35;
            text-align: left;
            overflow-wrap: anywhere;
        }
        .match-detail-chat-recommended-question:hover,
        .match-detail-chat-recommended-question:focus-visible {
            border-color: var(--accent-strong);
            background: color-mix(in srgb, var(--green-success-bg) 84%, var(--white));
            color: var(--ink);
        }
        .match-detail-chat-recommended-question:active {
            background: color-mix(in srgb, var(--green-success-bg) 84%, var(--white));
            color: var(--ink);
        }
        .match-detail-chat-recommended-questions-toggle {
            width: fit-content;
            padding: 0.45rem 0.65rem;
            border: 1px solid var(--line-strong);
            border-radius: 1rem;
            background: var(--accent-strong);
            color: var(--white);
            cursor: pointer;
            font: inherit;
            font-size: 0.7rem;
            line-height: 1.35;
        }
        .match-detail-chat-recommended-questions-toggle:hover,
        .match-detail-chat-recommended-questions-toggle:focus-visible {
            border-color: var(--accent-strong);
            background: var(--accent);
            color: var(--white);
        }
        @media (min-width: 641px) {
            .match-detail-chat-recommended-panel {
                margin-top: 0;
            }
            .match-detail-chat-recommended-panel > h3 {
                margin: 0 0 0.75rem;
                text-align: left;
            }
            .match-detail-chat-recommended-panel .matches-detail-collapsible-trigger {
                display: block;
                color: #101b17;
                cursor: default;
                text-decoration: none;
                pointer-events: none;
            }
            .match-detail-chat-recommended-panel .collapsible-trigger-icon {
                display: none;
            }
            .match-detail-chat-recommended-panel .matches-detail-collapsible-body[hidden] {
                display: flex !important;
            }
        }
        @keyframes match-detail-chat-thinking-shimmer {
            from { background-position: 200% 0; }
            to { background-position: -20% 0; }
        }
        @keyframes match-detail-chat-thinking-loader-spin {
            to { transform: rotate(360deg); }
        }
        .match-detail-chat-form {
            display: grid;
            gap: 0.55rem;
            padding: 0.85rem 1rem 1rem;
            border-top: 1px solid var(--line);
        }
        .match-detail-chat-form label {
            color: #101b17;
            font-size: 0.82rem;
            font-weight: 800;
        }
        .match-detail-chat-input {
            box-sizing: border-box;
            width: 100%;
            min-height: 6.25rem;
            resize: vertical;
            border-radius: 0.5rem;
            padding: 0.3rem;
            background: #fff !important;
            color: #101b17 !important;
            color-scheme: light;
            -webkit-text-fill-color: #101b17;
        }
        .match-detail-chat-input:hover,
        .match-detail-chat-input:focus {
            background: #fff !important;
            color: #101b17 !important;
            -webkit-text-fill-color: #101b17;
        }
        .match-detail-chat-input::placeholder {
            color: #6d7c78;
            opacity: 0.8;
            font-style: italic;
        }
        .match-detail-chat-submit {
            justify-self: end;
        }
        @media (prefers-color-scheme: light) {
            .match-detail-chat-recommended-question {
                background: var(--blue-surface-soft);
                color: var(--ink);
            }
            .match-detail-chat-recommended-question:hover,
            .match-detail-chat-recommended-question:focus-visible,
            .match-detail-chat-recommended-question:active {
                background: var(--blue-100);
                color: var(--ink);
            }
        }
        .opportunity-feedback-panel {
            overflow: hidden;
            padding: 0;
        }
        .opportunity-feedback-summary {
            cursor: pointer;
            list-style: none;
            font-weight: 700;
            padding: 0.8rem 1rem;
            color: var(--ink);
        }
        .opportunity-feedback-summary::-webkit-details-marker {
            display: none;
        }
        .opportunity-feedback-panel[open] .opportunity-feedback-summary .collapsible-trigger-icon {
            transform: rotate(-135deg);
            margin-top: 0.08rem;
        }
        .opportunity-feedback-body {
            padding: 0 1rem 1rem;
        }
        .opportunity-feedback-body .auth-input,
        .opportunity-feedback-body select,
        .opportunity-feedback-body textarea {
            box-sizing: border-box;
            max-width: 100%;
            width: 100%;
        }
        .integrations-setup-shell {
            display: grid;
            gap: 0.9rem;
        }
        .integrations-card-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.8rem;
        }
        .integrations-provider-card {
            border: 1px solid var(--blue-200);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
            display: grid;
            gap: 0.55rem;
            justify-items: start;
            text-align: left;
            transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
        }
        .integrations-provider-card:hover {
            border-color: var(--line-strong);
            transform: translateY(-1px);
            box-shadow: var(--shadow-soft);
        }
        .integrations-provider-headline {
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.65rem;
        }
        .integrations-provider-title {
            font-weight: 700;
            font-size: 1rem;
        }
        .integrations-provider-caption {
            color: var(--ink-muted);
            font-size: 0.88rem;
        }
        .integrations-provider-logo {
            display: inline-block;
            width: auto;
            max-width: 100%;
            height: auto;
            max-height: 2rem;
            object-fit: contain;
        }
        .integrations-provider-email-icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 2rem;
            height: 2rem;
            color: var(--accent-text);
        }
        .integrations-provider-email-icon svg {
            width: 100%;
            height: 100%;
            fill: currentColor;
        }
        .integrations-provider-config {
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            background: var(--surface-strong);
            padding: 0.9rem;
            display: grid;
            gap: 0.8rem;
        }
        .integrations-provider-config-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.8rem;
        }
        .integrations-provider-config-heading {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.5rem;
            min-height: 2rem;
            font-weight: 700;
            width: 100%;
        }
        .integrations-provider-config-logo {
            margin-left: auto;
            display: inline-flex;
            align-items: center;
        }
        .integrations-inline-field {
            display: grid;
            grid-template-columns: minmax(10rem, 13.5rem) minmax(0, 1fr);
            align-items: center;
            column-gap: 1rem;
            row-gap: 0.4rem;
        }
        .integrations-inline-field .auth-label {
            margin: 0;
        }
        .integrations-schedule-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 0.7rem;
            align-items: start;
        }
        .integrations-schedule-item {
            display: grid;
            gap: 0.45rem;
            align-content: start;
        }
        .flex-gap-1 {
            display: flex;
            gap: 1rem;
            flex-direction: column;
        }
        .vertical_10 {
            height: 10px;
        }
        .integrations-status-table {
            width: 100%;
            border-collapse: collapse;
            border: 1px solid var(--blue-border-muted);
            background: var(--surface-strong);
        }
        .integrations-status-table th,
        .integrations-status-table td {
            border: 1px solid var(--blue-border-muted);
            padding: 0.55rem 0.7rem;
            text-align: left;
            vertical-align: top;
        }
        .integrations-status-table thead th {
            background: var(--blue-100);
            color: var(--blue-800);
            font-weight: 700;
        }
        .integrations-status-table tbody tr:nth-child(even) {
            background: var(--blue-surface-soft);
        }
        .markdown-toolbar {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.8rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.8rem 0.9rem;
            background: var(--surface);
            margin-top: 1rem;
        }
        .markdown-grid {
            margin-top: 1rem;
            display: grid;
            gap: 0.8rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        .markdown-panel {
            /* background: var(--surface); */
            transition: transform 180ms ease, box-shadow 180ms ease;
        }
        .markdown-panel:hover {
            /* transform: translateY(-2px);
            box-shadow: var(--shadow-card-hover); */
        }
        .markdown-panel h2 {
            margin-top: 0;
            font-size: 1rem;
        }
        .markdown-source {
            margin: 0;
            background: var(--blue-surface-code);
            border: 1px solid var(--blue-200);
            border-radius: 10px;
            padding: 0.7rem;
            overflow-x: auto;
            font-size: 0.86rem;
            line-height: 1.4;
        }
        .markdown-preview h2,
        .markdown-preview h3 {
            margin-bottom: 0.5rem;
        }
        .markdown-preview {
            overflow-x: auto;
        }
        .markdown-preview p {
            margin: 0.4rem 0;
        }
        .markdown-preview ul {
            margin-top: 0.2rem;
            margin-bottom: 0.6rem;
        }
        .markdown-preview table {
            width: 100%;
            margin: 0.7rem 0;
            border-collapse: collapse;
            font-size: 0.9rem;
        }
        .match-detail-chat-daily-token-limit-message {
            margin: 0 1rem 0.75rem;
            color: #9c2e2e;
            font-size: 0.9rem;
            font-weight: 700;
            line-height: 1.45;
        }
        .markdown-preview th,
        .markdown-preview td {
            border: 1px solid var(--blue-border-soft);
            padding: 0.45rem 0.55rem;
            text-align: left;
            vertical-align: top;
        }
        .markdown-preview thead th {
            background: var(--blue-surface-soft);
            color: var(--blue-900);
            font-weight: 700;
        }
        .markdown-preview tbody tr:nth-child(even) {
            background: var(--blue-surface-soft);
        }
        .markdown-actions {
            margin-top: 1rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
        }
        .loading-card {
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            padding: 0.9rem;
            background: var(--surface);
            margin-top: 1rem;
        }
        .database-loading-indicator {
            display: grid;
            min-height: 3rem;
            place-items: center;
            margin-top: 5rem;
        }
        .database-loading-indicator.auth-status {
            border: 0;
            background: transparent;
            color: inherit;
            padding: 0;
        }
        .database-loading-indicator .button-loading-spinner {
            width: 1.5rem;
            height: 1.5rem;
            margin-right: 0;
            border-color: var(--blue-border-soft);
            border-top-color: var(--accent-strong);
        }
        .auth-shell {
            margin: 1rem 0;
            max-width: 560px;
            padding: 1rem;
        }
        .auth-shell-medium-width {
            width: min(100%, 76rem);
            max-width: 100%;
            margin: 0 auto;
        }
        .auth-shell-small-width {
            max-width: 500px;
            margin: 0 auto;
        }
        .auth-shell-wide {
            max-width: 100%;
        }
        .auth-columns {
            display: grid;
            gap: 0.9rem;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            align-items: start;
        }
        .auth-columns-single {
            grid-template-columns: minmax(0, 1fr);
            max-width: 560px;
        }
        .doc-heading-row {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 0.75rem;
        }
        .doc-edit-button {
            flex-shrink: 0;
            margin-left: auto;
        }
        .doc-heading-actions {
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: 0.5rem;
            margin-left: auto;
        }
        .doc-heading-actions .auth-button {
            white-space: nowrap;
        }
        .doc-editor-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            justify-content: flex-end;
        }
        .doc-guide {
            margin: 0.9rem 0;
        }
        .doc-guide .doc-guide-trigger {
            width: 2.25rem;
            height: 2.25rem;
            min-width: 0;
            border: 1px solid var(--blue-border-soft);
            border-radius: 50%;
            padding: 0;
            background: var(--blue-100);
            color: var(--accent-text);
            font: inherit;
            font-size: 0;
            font-weight: 700;
            line-height: 1;
        }
        .doc-guide .doc-guide-trigger::before {
            content: "?";
            font-size: 1rem;
            font-weight: 800;
        }
        .doc-guide-modal[hidden] {
            display: none;
        }
        .doc-guide-modal {
            position: fixed;
            inset: 0;
            z-index: 90;
            display: grid;
            place-items: center;
            padding: 1rem;
        }
        .doc-guide-modal-backdrop {
            position: absolute;
            inset: 0;
            background: var(--modal-backdrop);
            opacity: 0;
            transition: opacity 180ms ease;
        }
        .doc-guide-modal-panel {
            position: relative;
            z-index: 1;
            width: min(36rem, 100%);
            padding: 1.3rem;
            border: 1px solid var(--blue-border-soft);
            border-radius: 14px;
            background: var(--surface-strong);
            box-shadow: var(--shadow-strong);
            opacity: 0;
            transform: translateY(0.8rem) scale(0.985);
            transition: opacity 180ms ease, transform 180ms ease;
        }
        .doc-guide-modal.is-open .doc-guide-modal-backdrop,
        .doc-guide-modal.is-open .doc-guide-modal-panel {
            opacity: 1;
        }
        .doc-guide-modal.is-open .doc-guide-modal-panel {
            transform: translateY(0) scale(1);
        }
        .doc-guide-modal-eyebrow {
            margin: 0 2.2rem 0.35rem 0;
            color: var(--muted);
            font-size: 0.82rem;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }
        .doc-guide-modal-panel h2 {
            margin: 0 2.2rem 1rem 0;
        }
        .doc-guide-carousel article {
            min-height: 8.5rem;
        }
        .doc-guide-carousel h3 {
            margin: 0 0 0.55rem;
            color: var(--accent-text);
            font-size: 1.08rem;
        }
        .doc-guide-carousel p {
            margin: 0;
            line-height: 1.6;
        }
        .doc-guide-carousel-controls {
            display: grid;
            grid-template-columns: auto minmax(7rem, 1fr) auto;
            align-items: center;
            gap: 0.7rem;
            margin-top: 1.35rem;
        }
        .doc-guide-carousel-controls p {
            margin: 0;
            color: var(--muted);
            font-size: 0.9rem;
            text-align: center;
        }
        @media (prefers-reduced-motion: reduce) {
            .doc-guide-modal-backdrop,
            .doc-guide-modal-panel {
                transition: none;
            }
        }
        .auth-column {
            border: 1px solid var(--line);
            border-radius: 10px;
            padding: 0.85rem;
            /* background: var(--surface); */
        }
        .auth-column.tuning-doc-rendered-column {
            background: rgba(15, 23, 42, 0.5);
            border-radius: 0.7rem;
        }
        @media (prefers-color-scheme: light) {
            .auth-column.tuning-doc-rendered-column {
                background: rgba(255, 255, 255, 0.78);
            }
        }
        .auth-column h2 {
            margin-top: 0;
            margin-bottom: 0.7rem;
        }
        [hidden] {
            display: none !important;
        }
        .auth-form {
            display: grid;
            gap: 0.65rem;
        }
        .auth-password-control {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.55rem;
            align-items: center;
        }
        .auth-file-control {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto;
            gap: 0.55rem;
            align-items: center;
        }
        .auth-label {
            font-weight: 600;
            font-size: 0.9rem;
        }
        .auth-input {
            border: 1px solid var(--line-strong);
            border-radius: 8px;
            padding: 0.6rem 0.7rem;
            font: inherit;
            color: var(--ink);
            background: var(--blue-surface-alt);
            transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
        }
        select:not(:disabled) {
            cursor: pointer;
        }
        select:not(:disabled) option {
            cursor: pointer;
        }
        .auth-input:hover {
            background: var(--surface-strong);
            border-color: var(--blue-300);
        }
        .auth-check {
            display: flex;
            align-items: center;
            gap: 0.45rem;
            color: var(--ink-muted);
            font-size: 0.9rem;
        }
        .auth-button {
            border: 1px solid var(--accent-strong);
            border-radius: 8px;
            background: linear-gradient(180deg, var(--accent), var(--accent-strong));
            color: var(--white);
            font: inherit;
            font-weight: 700;
            padding: 0.4rem 0.7rem;
            box-shadow: var(--shadow-accent-soft);
            transition: transform 180ms ease, box-shadow 180ms ease;
            min-width: 6rem;
            text-align: center;
        }
        a.auth-button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
        }
        a.auth-button:hover {
            color: var(--white);
            text-decoration: none;
        }
        .auth-password-toggle {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 1px solid var(--line-strong);
            border-radius: 8px;
            background: var(--blue-surface-alt);
            color: var(--accent-text);
            font-weight: 700;
            padding: 0.42rem 0.58rem;
            height: fit-content;
            min-width: 2.5rem;
            white-space: nowrap;
            line-height: 1;
            box-shadow: none;
            transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 180ms ease, box-shadow 180ms ease;
        }
        .auth-password-toggle-icon {
            display: block;
            width: 1.1rem;
            height: 1.1rem;
        }
        .auth-password-toggle:hover {
            background: var(--blue-100);
            border-color: var(--blue-300);
            color: var(--accent-link-hover);
            transform: translateY(-1px);
        }
        .auth-password-toggle[aria-pressed="true"] {
            background: var(--blue-050);
            border-color: var(--blue-300);
            color: var(--accent-link-active);
        }
        .auth-file-clear {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 1px solid var(--line-strong);
            border-radius: 8px;
            background: var(--blue-surface-alt);
            color: var(--accent-text);
            padding: 0.42rem 0.58rem;
            min-width: 2.5rem;
            line-height: 1;
            box-shadow: none;
            transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 180ms ease, box-shadow 180ms ease;
        }
        .auth-file-clear:hover {
            background: var(--blue-100);
            border-color: var(--blue-300);
            color: var(--accent-link-hover);
            transform: translateY(-1px);
        }
        .auth-file-clear:disabled {
            opacity: 0.45;
            transform: none;
        }
        .auth-file-clear-icon {
            display: block;
            width: 1.05rem;
            height: 1.05rem;
        }
        .intake-upload-queue {
            margin-top: 0.65rem;
        }
        .intake-upload-queue li {
            display: flex;
            align-items: center;
            justify-content: flex-start;
        }
        .auth-file-queue-remove {
            flex: 0 0 auto;
            margin-left: 0.5rem;
            border: 0;
            background: transparent;
            color: var(--accent-text);
            font-size: 1.15rem;
            cursor: pointer;
        }
        .auth-button:hover {
            transform: translateY(-1px);
            box-shadow: var(--shadow-accent-strong);
        }
        .auth-button.is-loading,
        .nav-button.is-loading {
            opacity: 0.85;
            cursor: progress;
            transform: none;
            box-shadow: none;
        }
    .button-loading-spinner {
            display: inline-block;
            width: 0.9rem;
            height: 0.9rem;
            margin-right: 0.45rem;
            vertical-align: text-bottom;
            border-radius: 999px;
            border: 2px solid var(--spinner-ring);
            border-top-color: var(--white);
            animation: button-spinner-rotate 0.7s linear infinite;
        }
        .app-custom-tooltip {
            position: fixed;
            z-index: 1200;
            max-width: min(22rem, calc(100vw - 1rem));
            padding: 0.45rem 0.65rem;
            border-radius: 0.45rem;
            background: #172033;
            color: #fff;
            font-size: 0.82rem;
            line-height: 1.35;
            text-align: left;
            pointer-events: none;
            box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.22);
            --tooltip-arrow-left: 50%;
        }
        .app-custom-tooltip::after {
            position: absolute;
            bottom: -0.35rem;
            left: var(--tooltip-arrow-left);
            width: 0;
            height: 0;
            border-top: 0.4rem solid #172033;
            border-right: 0.35rem solid transparent;
            border-left: 0.35rem solid transparent;
            content: '';
            transform: translateX(-50%);
        }
        .app-custom-tooltip.is-below::after {
            top: -0.35rem;
            bottom: auto;
            border-top: 0;
            border-bottom: 0.4rem solid #172033;
        }
        @keyframes button-spinner-rotate {
            0% {
                transform: rotate(0deg);
            }
            100% {
                transform: rotate(360deg);
            }
        }
        .auth-input:focus,
        .nav a:focus,
        .nav-main-link:focus,
        .nav-submenu-button:focus,
        .nav-button:focus {
            outline: 2px solid var(--focus);
            outline-offset: 1px;
            box-shadow: var(--focus-ring);
        }
        .auth-note {
            margin-top: 0.9rem;
            color: var(--ink-muted);
            font-size: 0.9rem;
        }
        .impersonation-banner {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.75rem;
            padding: 0.55rem 1rem;
            background: var(--blue-150);
            border-bottom: 1px solid var(--blue-300);
            color: var(--blue-800);
            font-size: 0.9rem;
            font-weight: 600;
        }
        .impersonation-banner form {
            margin: 0;
        }
        .impersonation-banner .nav-button {
            min-height: 2rem;
            padding: 0.25rem 0.65rem;
        }
        .auth-note-row {
            display: flex;
            justify-content: space-between;
            gap: 1rem;
            align-items: baseline;
        }
        .auth-note-row .auth-note {
            margin-bottom: 0;
        }
        .startup-review-hero,
        .startup-review-section {
            border: 1px solid var(--blue-border-soft);
            border-radius: 12px;
            background: var(--surface);
            padding: 0.85rem;
            margin-bottom: 0.8rem;
        }
        .startup-review-hero h3,
        .startup-review-section h3 {
            margin-top: 0;
            margin-bottom: 0.45rem;
        }
        .startup-review-hero p {
            margin-top: 0;
        }
        .startup-review-visual {
            margin-top: 0.7rem;
            display: flex;
            align-items: center;
            gap: 0.45rem;
            flex-wrap: wrap;
        }
        .startup-review-node {
            border: 1px solid var(--blue-300);
            background: var(--blue-100);
            color: var(--accent-text);
            border-radius: 999px;
            padding: 0.2rem 0.65rem;
            font-size: 0.82rem;
            font-weight: 700;
            letter-spacing: 0.01em;
        }
        .startup-review-link {
            display: inline-block;
            width: 1.35rem;
            height: 2px;
            background: var(--blue-300);
            border-radius: 999px;
        }
        .auth-status {
            margin: 0.8rem 0;
            border: 1px solid var(--status-success-border);
            background: var(--status-success-bg);
            color: var(--status-success-ink);
            border-radius: 8px;
            padding: 0.55rem 0.65rem;
            font-size: 0.9rem;
        }
        .auth-status:empty,
        .auth-error:empty {
            display: none;
        }
        .auth-field-example {
            margin: 0;
            color: var(--ink-muted);
            font-size: 0.86rem;
            line-height: 1.45;
        }
        .auth-error,
        .auth-field-error {
            margin: 0;
            color: var(--status-error-ink);
            font-size: 0.86rem;
            font-weight: 700;
        }
        .auth-error {
            border: 1px solid var(--status-error-border);
            background: var(--status-error-bg);
            border-radius: 8px;
            padding: 0.55rem 0.65rem;
            margin-bottom: 0.2rem;
        }
        .auth-links {
            display: flex;
            flex-wrap: wrap;
            gap: 0.8rem;
            margin: 0 auto;
            margin-top: 0.9rem;
            max-width: 500px;
            justify-content: space-evenly;
        }
        .auth-password-control .auth-input,
        .auth-file-control .auth-input {
            min-width: 0;
        }
        .wizard-actions {
            display: flex;
            gap: 0.6rem;
            justify-content: space-between;
            flex-wrap: wrap;
        }
        .wizard-actions a {
            text-decoration: none;
        }
        .wizard-actions .auth-button[disabled] {
            opacity: 0.55;
            cursor: not-allowed;
        }
        .repeatable-fieldset {
            margin: 0;
            padding: 0;
            border: 0;
            display: grid;
            gap: 0.55rem;
        }
        .repeatable-fieldset legend {
            padding: 0;
        }
        .repeatable-list {
            display: grid;
            gap: 0.55rem;
        }
        .repeatable-row {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 0.55rem;
            align-items: center;
        }
        .repeatable-add,
        .repeatable-remove {
            width: fit-content;
        }
        .repeatable-remove {
            border-color: var(--danger-strong);
            background: linear-gradient(180deg, var(--danger-soft), var(--danger-strong));
            box-shadow: var(--shadow-danger-soft);
        }
        .repeatable-remove:hover {
            box-shadow: var(--shadow-danger-strong);
        }
        .skeleton-line {
            height: 0.75rem;
            border-radius: 999px;
            margin: 0.45rem 0;
            background: var(--skeleton-gradient);
            background-size: 220% 100%;
            animation: shimmer 1.15s linear infinite;
        }
        .skeleton-line.short {
            width: 35%;
        }
        .skeleton-line.medium {
            width: 65%;
        }
        .skeleton-line.long {
            width: 90%;
        }
        @keyframes shimmer {
            0% {
                background-position: 200% 0;
            }
            100% {
                background-position: -200% 0;
            }
        }
        @keyframes panel-fade-in {
            from {
                opacity: 0;
                transform: translateY(4px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        @media (prefers-reduced-motion: reduce) {
            .panel,
            .dashboard-card,
            .match-card,
            .markdown-panel {
                animation: none;
                transition: none;
            }
            .dashboard-card:hover,
            .markdown-panel:hover {
                transform: none;
                box-shadow: none;
            }
            .skeleton-line {
                animation: none;
            }
            .button-loading-spinner {
                animation: none;
            }
            .match-detail-chat-thinking-text,
            .match-detail-chat-thinking-loader {
                animation: none;
            }
            .match-detail-chat-thinking-text {
                background: none;
                color: var(--ink-muted);
            }
            .match-detail-chat-launcher {
                transition: none;
            }
        }
        @media (max-width: 900px) {
            .shell {
                margin: 1rem auto;
                padding: 0 0 0.8rem;
            }
            .topbar-inner {
                padding: 0.9rem 0;
            }
            .nav a,
            .nav-main-link,
            .nav-button {
                padding: 0.42rem 0.82rem;
            }
            .panel {
                padding: 1rem;
            }
            .dashboard-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
            .dashboard-split,
            .dashboard-chart-grid,
            .markdown-grid {
                grid-template-columns: 1fr;
            }
            .matches-controls {
                grid-template-columns: 1fr;
            }
            .dashboard-pie-visual {
                width: min(100%, 11rem);
            }
            .integrations-inline-field {
                grid-template-columns: minmax(0, 1fr);
            }
            .integrations-card-grid {
                grid-template-columns: 1fr;
            }
            .matches-toolbar,
            .markdown-toolbar {
                flex-wrap: wrap;
            }
            .progress-header {
                align-items: flex-start;
                flex-direction: column;
            }
            .match-detail-chat-panel {
                top: var(--match-detail-chat-top, 4.5rem);
                right: 0;
                width: min(26rem, calc(100vw - 1.5rem));
                height: min(90dvh, calc(100dvh - var(--match-detail-chat-top, 4.5rem)));
                max-height: min(90dvh, calc(100dvh - var(--match-detail-chat-top, 4.5rem)));
                transform: translateX(100%);
            }
            .match-detail-chat-panel.is-open {
                transform: translateX(0);
            }
            .match-detail-chat-recommended-panel {
                position: static;
                z-index: 3;
                top: auto;
                right: auto;
                width: auto;
                max-height: 80dvh;
                margin-bottom: 0.7rem;
                transform: translateX(100%);
            }
            .match-detail-chat-panel.is-open .match-detail-chat-recommended-panel {
                transform: translateX(0);
            }
        }
        @media (max-width: 640px) {
            .topbar-inner {
                align-items: stretch;
            }
            .brand-block,
            .brand-tagline {
                max-width: 100%;
                overflow-wrap: anywhere;
            }
            .brand-block {
                min-width: 0;
                flex: 1 1 auto;
            }
            .shell {
                margin: 0.75rem auto;
                padding: 0 0 0.7rem;
            }
            .topbar-inner {
                padding: 0.9rem 0;
            }
            .brand {
                font-size: 0.98rem;
            }
            .env-chip {
                font-size: 0.72rem;
            }
            .nav {
                display: none;
                width: 100%;
                flex-direction: column;
                align-items: stretch;
                gap: 0.4rem;
                padding-top: 0.35rem;
            }
            .nav.is-mobile-open {
                display: flex;
            }
            .topbar-menu-toggle {
                display: grid;
                width: 2.5rem;
                height: 2.5rem;
                flex: 0 0 auto;
                align-content: center;
                justify-content: center;
                gap: 0.25rem;
                margin-left: auto;
                align-self: flex-start;
                padding: 0;
                border: 1px solid var(--blue-300);
                border-radius: 50%;
                background: var(--blue-050);
                color: var(--ink);
                cursor: pointer;
            }
            .topbar-menu-toggle span {
                display: block;
                width: 1.1rem;
                height: 0.12rem;
                border-radius: 999px;
                background: currentColor;
                transition: transform 160ms ease, opacity 160ms ease;
            }
            .topbar-menu-toggle.is-open span:nth-child(1) {
                transform: translateY(0.37rem) rotate(45deg);
            }
            .topbar-menu-toggle.is-open span:nth-child(2) {
                opacity: 0;
            }
            .topbar-menu-toggle.is-open span:nth-child(3) {
                transform: translateY(-0.37rem) rotate(-45deg);
            }
            .topbar-menu-toggle:hover,
            .topbar-menu-toggle:focus-visible {
                background: var(--blue-100);
                border-color: var(--line-strong);
            }
            .nav-item-has-submenu .nav-submenu {
                position: static;
                display: grid;
                min-width: 0;
                margin-top: 0.1rem;
            }
            .nav a,
            .nav-main-link,
            .nav-button {
                width: 100%;
                white-space: nowrap;
                text-align: left;
            }
            .nav > a,
            .nav > form,
            .nav > .nav-item {
                width: 100%;
            }
            .panel {
                padding: 1rem;
            }
            .panel h1 {
                margin-top: 0;
                font-size: 1.35rem;
            }
            .panel h2 {
                font-size: 1.02rem;
            }
            .app-modal {
                padding: 0.75rem;
            }
            .app-modal-panel {
                max-height: calc(100dvh - 1.5rem);
                overflow-y: auto;
            }
            .app-modal-actions {
                align-items: stretch;
                flex-direction: column;
            }
            .app-modal-actions > * {
                width: 100%;
            }
            .doc-heading-row {
                align-items: stretch;
                flex-direction: column;
            }
            .doc-heading-actions {
                margin-left: 0;
                width: 100%;
            }
            .doc-heading-actions .auth-button {
                width: 100%;
            }
            .doc-edit-button {
                margin-left: 0;
                width: 100%;
            }
            .dashboard-grid,
            .dashboard-split {
                grid-template-columns: 1fr;
            }
            .dashboard-pie-layout {
                grid-template-columns: 1fr;
            }
            .dashboard-chart-meta,
            .auth-note-row {
                align-items: flex-start;
                flex-direction: column;
                gap: 0.25rem;
            }
            .dashboard-pie-legend-item {
                grid-template-columns: auto minmax(0, 1fr);
            }
            .dashboard-pie-legend-item small {
                grid-column: 2;
            }
            .matches-toolbar {
                flex-direction: row;
                align-items: center;
                flex-wrap: nowrap;
                overflow-x: auto;
            }
            .matches-toolbar p,
            .matches-toolbar-links,
            .matches-toolbar .toolbar-shell { white-space: nowrap; }
            .matches-toolbar-links { gap: 0.75rem; }
            .matches-toolbar,
            .matches-controls,
            .markdown-toolbar,
            .dashboard-progress,
            .dashboard-steps,
            .loading-card,
            .auth-shell {
                border-radius: 10px;
            }
            .toolbar-shell {
                flex-direction: column;
                gap: 0.25rem;
            }
            .match-header {
                flex-direction: column;
            }
            .match-header-actions {
                align-items: flex-start;
                width: 100%;
            }
            .match-header-badge-row {
                justify-content: flex-start;
            }
            .matches-detail-panel .matches-supporting-tools-grid {
                grid-template-columns: 1fr;
            }
            .matches-detail-panel .activity-list {
                grid-template-columns: minmax(0, 1fr);
            }
            .matches-opportunity-summary-heading {
                align-items: stretch;
                flex-direction: column;
            }
            .matches-opportunity-posting-link {
                align-self: flex-start;
                white-space: normal;
            }
            .matches-detail-collapsible-heading {
                align-items: stretch;
                flex-direction: column;
            }
            .matches-detail-collapsible-pair {
                grid-template-columns: minmax(0, 1fr);
            }
            .matches-ask-ai-button {
                align-self: flex-start;
                white-space: normal;
            }
            .matches-detail-heading h2 {
                flex-basis: auto;
                width: 100%;
            }
            .matches-detail-heading .auth-button,
            .matches-detail-actions {
                margin-left: 0;
                width: 100%;
            }
            .matches-detail-actions {
                align-items: stretch;
                flex-direction: column;
            }
            .prompt-cycle-status-card {
                grid-template-columns: 1fr;
            }
            .prompt-cycle-status-card .prompt-cycle-card-grid {
                grid-template-columns: 1fr;
            }
            .prompt-cycle-status-card .prompt-cycle-card-status-panel {
                width: 100%;
                justify-self: stretch;
                text-align: left;
            }
            .prompt-cycle-card-status-summary {
                justify-items: start;
            }
            .sources-page-header {
                display: block;
            }
            .sources-page-header > div:first-child,
            .sources-page-header > .auth-note-row {
                align-items: stretch;
            }
            header[data-prompt-cycle-status-shell="1"] > .sources-page-header {
                flex-direction: column;
                align-items: stretch;
            }
            .sources-controls {
                grid-template-columns: 1fr;
            }
            .source-api-form {
                max-width: none;
            }
            .source-api-form-actions {
                flex-direction: column;
            }
            .integrations-provider-config-header,
            .integrations-provider-config-heading {
                align-items: flex-start;
                flex-direction: column;
            }
            .integrations-provider-config-logo {
                margin-left: 0;
            }
            .integrations-schedule-grid {
                grid-template-columns: 1fr;
            }
            .integrations-status-table-scroll {
                max-width: 100%;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
            }
            .integrations-status-table th,
            .integrations-status-table td {
                white-space: nowrap;
            }
            .markdown-toolbar {
                flex-direction: column;
                align-items: flex-start;
            }
            .markdown-grid {
                grid-template-columns: 1fr;
            }
            .markdown-panel,
            .markdown-actions {
                padding: 0.75rem;
            }
            .markdown-preview {
                max-height: none;
            }
            .markdown-preview table {
                min-width: 100%;
                width: max-content;
            }
            .step-item {
                grid-template-columns: auto 1fr;
                grid-template-areas:
                    "dot label"
                    "dot status";
                align-items: start;
                row-gap: 0.2rem;
            }
            .step-dot {
                grid-area: dot;
                margin-top: 0.25rem;
            }
            .step-label {
                grid-area: label;
            }
            .step-status {
                grid-area: status;
            }
            .auth-shell {
                max-width: 100%;
                padding: 0.9rem;
            }
            .auth-columns {
                grid-template-columns: 1fr;
            }
            .auth-form > .auth-input {
                width: 100%;
            }
            .auth-password-control,
            .auth-file-control {
                grid-template-columns: minmax(0, 1fr) auto;
            }
            .auth-password-toggle,
            .auth-file-clear {
                width: auto;
            }
            .auth-file-control .auth-input {
                width: 100%;
            }
            .auth-button {
                width: 100%;
                justify-content: center;
            }

            .page-heading-row {
                flex-wrap: nowrap;
                align-items: flex-start;
                flex-direction: row;
            }
            .sources-page-header > .page-heading-row {
                flex-direction: row;
                align-items: center;
                justify-content: space-between;
            }
            .page-heading-row h1 {
                min-width: 0;
                flex: 1 1 auto;
                overflow-wrap: anywhere;
            }
            .page-heading-row .doc-guide {
                flex: 0 0 auto;
                margin-left: auto;
            }
            .page-heading-row .doc-guide-trigger {
                flex: 0 0 auto;
            }
            .doc-heading-row {
                flex-direction: row;
                align-items: center;
                justify-content: space-between;
            }
            .doc-heading-row > h1 {
                min-width: 0;
                flex: 1 1 auto;
                overflow-wrap: anywhere;
            }
            .doc-heading-row .doc-guide {
                flex: 0 0 auto;
                margin-left: auto;
            }
            .doc-heading-row .doc-guide-trigger {
                flex: 0 0 auto;
            }

            .auth-shell-medium-width {
                width: 100%;
            }
            .auth-shell-medium-width .integrations-status-table {
                width: 100%;
                table-layout: fixed;
                font-size: 0.64rem;
            }
            .auth-shell-medium-width .integrations-status-table th,
            .auth-shell-medium-width .integrations-status-table td {
                padding: 0.25rem 0.2rem;
                overflow-wrap: anywhere;
                white-space: normal;
            }
            .auth-shell-medium-width .integrations-status-table td:last-child form {
                margin: 0 0 0.2rem;
            }
            .auth-shell-medium-width .integrations-status-table td:last-child .inline-cta {
                min-width: 0;
                padding: 0.2rem 0.25rem;
                font-size: 0.58rem;
                line-height: 1.15;
            }

            .sources-page-header > .auth-note-row {
                flex-direction: column;
                align-items: stretch;
                gap: 0.5rem;
                margin-top: 0.5rem;
            }
            .sources-page-header > .auth-note-row p{
                margin-top: 0rem;
            }
            .sources-page-header > .auth-note-row > div {
                display: flex;
                flex: 0 0 auto;
                gap: 0.35rem;
                order: -1;
                align-self: center;
            }
            .sources-page-header > .auth-note-row > div .auth-button,
            .matches-page-header .auth-button {
                width: auto;
                min-width: 0;
                padding: 0.38rem 0.5rem;
                white-space: nowrap;
            }

            .matches-list .match-header {
                flex-direction: column;
                align-items: stretch;
            }
            .sources-list .match-header {
                flex-direction: row;
            }
            .matches-list .match-header-actions {
                width: auto;
                align-items: center;
                flex: 0 0 auto;
                width: 100%;
            }
            .sources-list .match-header-actions {
                width: auto;
            }
            .matches-list .match-header-badges {
                flex-direction: row;
                align-items: center;
                gap: 0.35rem;
            }
            .matches-list .match-header-badge-row {
                justify-content: flex-start;
                flex-wrap: nowrap;
            }

            .matches-detail-heading {
                display: grid;
                grid-template-columns: minmax(0, 1fr) auto;
                align-items: start;
                gap: 0.5rem;
            }
            .matches-detail-panel {
                padding: 0;
            }
            .matches-detail-title {
                min-width: 0;
                flex: 1 1 auto;
            }
            .matches-detail-title h2 {
                overflow-wrap: anywhere;
            }
            .matches-detail-heading .matches-detail-back-link {
                width: 2.25rem;
                min-width: 2.25rem;
                height: 2.25rem;
                margin: 0;
                padding: 0;
                border-radius: 50%;
                flex: 0 0 auto;
                order: 0;
            }
            .matches-detail-back-link > span:last-child {
                display: none;
            }
            .matches-detail-heading .matches-detail-actions {
                width: 100%;
                grid-column: 1 / -1;
                margin-left: 0;
                align-items: center;
                justify-content: center;
                flex-wrap: wrap;
                flex-direction: row;
                order: 3;
            }
            .matches-detail-actions .score-pill,
            .matches-detail-actions .match-toggle-button,
            .matches-detail-actions .match-archive-icon-button {
                width: auto;
                flex: 0 0 auto;
            }
            .matches-detail-actions .match-rating-indicator {
                flex: 0 0 auto;
            }

            .match-detail-chat-recommended-panel {
                position: static;
                width: auto;
                max-height: none;
                margin-bottom: 0.75rem;
                padding: 0;
                transform: none;
            }
            .match-detail-chat-recommended-panel > h3 {
                margin: 0;
                text-align: left;
            }
            .match-detail-chat-recommended-panel .matches-detail-collapsible-trigger {
                color: #101b17;
                font-size: 0.78rem;
                font-weight: 800;
                text-decoration: none;
                padding-left: 0.5rem;
            }
            .match-detail-chat-recommended-panel .collapsible-trigger-icon {
                margin-left: auto;
            }
            .match-detail-chat-recommended-panel .matches-detail-collapsible-body {
                margin-top: 0.65rem;
            }
            .source-delete-icon {
                display: block;
                width: 1.4rem;
                height: 1.4rem;
            }
            .source-delete-label {
                display: none;
            }
            .match-header-actions [data-source-delete-button="1"] {
                width: 1.5rem;
                min-width: 1.5rem;
                height: 1.5rem;
                padding: 0;
                border-radius: 50%;
            }
            .match-detail-chat-panel.is-open .match-detail-chat-recommended-panel,
            .match-detail-chat-panel.is-closing .match-detail-chat-recommended-panel {
                transform: none;
            }
            .auth-links {
                flex-direction: column;
                gap: 0.45rem;
            }
            .wizard-actions {
                flex-direction: column;
            }
            .repeatable-row {
                grid-template-columns: 1fr;
            }
            .repeatable-add,
            .repeatable-remove {
                width: 100%;
            }
        }
        @media (max-width: 440px) {
            .shell {
                padding: 0 0 0.6rem;
            }
            .topbar-inner {
                padding: 0.8rem 0;
                gap: 0.7rem;
            }
            .nav {
                gap: 0.4rem;
            }
            .nav a,
            .nav-main-link,
            .nav-button {
                font-size: 0.84rem;
                padding: 0.38rem 0.72rem;
            }
            .panel {
                padding: 0.85rem;
            }
            .footer {
                font-size: 0.8rem;
            }
        }
