html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

h1:focus {
    outline: none;
}

a, .btn-link {
    color: #0071c1;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.content {
    padding-top: 1.1rem;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

#blazor-error-ui {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.loading-progress {
    position: absolute;
    display: block;
    width: 8rem;
    height: 8rem;
    inset: 20vh 0 auto 0;
    margin: 0 auto 0 auto;
}

    .loading-progress circle {
        fill: none;
        stroke: #e0e0e0;
        stroke-width: 0.6rem;
        transform-origin: 50% 50%;
        transform: rotate(-90deg);
    }

        .loading-progress circle:last-child {
            stroke: #1b6ec2;
            stroke-dasharray: calc(3.141 * var(--blazor-load-percentage, 0%) * 0.8), 500%;
            transition: stroke-dasharray 0.05s ease-in-out;
        }

.loading-progress-text {
    position: absolute;
    text-align: center;
    font-weight: bold;
    inset: calc(20vh + 3.25rem) 0 auto 0.2rem;
}

    .loading-progress-text:after {
        content: var(--blazor-load-percentage-text, "Loading");
    }

code {
    color: #c02d76;
}

/* Lite memory browser: dark, local-first knowledge console. */
:root { color-scheme: dark; font-family: Manrope, Inter, ui-sans-serif, system-ui, sans-serif; background: #081015; color: #ecf3f0; }
body { background:#081015; color:#ecf3f0; }
* { box-sizing: border-box; } html, body, #app { min-height: 100%; margin: 0; } body { min-width: 320px; background: #081015; } button, input, select, textarea { margin:0; font: inherit; } button { cursor: pointer; } fieldset { min-width:0; } button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #f0b254; outline-offset: 3px; }
.knowledge-console { min-height: 100vh; background-color: #081015; background-image: linear-gradient(rgba(126,173,191,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(126,173,191,.035) 1px,transparent 1px),radial-gradient(circle at 69% 8%,rgba(23,78,92,.24),transparent 26rem); background-size: 32px 32px,32px 32px,auto; }.skip-link { position: fixed; z-index: 10; left: 1rem; top: -4rem; padding: .6rem .9rem; background: #f0b254; color: #12191a; border-radius: .35rem; font-weight: 700; }.skip-link:focus { top: 1rem; }
.console-header { min-height:76px; display:grid; grid-template-columns:280px minmax(230px,1fr) auto; align-items:center; gap:24px; padding:0 28px; border-bottom:1px solid #1d3138; background:rgba(8,16,21,.84); backdrop-filter:blur(16px); }.wordmark { color:#eff7f4; text-decoration:none; font-size:.79rem; letter-spacing:.14em; font-weight:700; display:flex; align-items:center; gap:10px; white-space:nowrap; }.wordmark em { color:#87a5ac; font-style:normal; font-weight:500; }.wordmark-mark { display:grid; place-items:center; width:30px; height:30px; border:1px solid #d69b46; color:#e9af56; font: .68rem ui-monospace,monospace; letter-spacing:0; border-radius:50%; }.project-context { border-left:1px solid #254049; padding-left:17px; display:grid; gap:2px; }.eyebrow { display:block; color:#7b989d; font:500 .65rem/1.2 ui-monospace,monospace; letter-spacing:.11em; text-transform:uppercase; }.project-context strong { font-size:.82rem; font-weight:500; }.header-actions { display:flex; align-items:center; gap:10px; }.quiet-button,.primary-button,.icon-button { border-radius:.38rem; border:1px solid #29434b; min-height:36px; padding:0 .76rem; color:#c9dbd9; background:#102027; font-size:.76rem; font-weight:600; }.quiet-button span { margin-left:12px; color:#6d898f; font:.66rem ui-monospace,monospace; }.primary-button { color:#171b1a !important; background:#e9af56 !important; border-color:#f3c478 !important; text-decoration:none !important; }.primary-button:hover { background:#f2bd69 !important; }.search-bar,.capture-notice { display:flex; align-items:center; gap:12px; padding:12px 28px; border-bottom:1px solid #254049; background:#0d191e; }.search-bar label { color:#93acae; font-size:.77rem; white-space:nowrap; }.search-bar input { min-width:12rem; flex:1; padding:.52rem .72rem; color:#eaf5f0; background:#081015; border:1px solid #385660; border-radius:.3rem; }.capture-notice { align-items:flex-start; justify-content:space-between; color:#c2d4d2; }.capture-form { display:grid; grid-template-columns:minmax(12rem, .55fr) minmax(16rem, 1.45fr); align-items:center; gap:9px 14px; width:min(780px, 100%); }.capture-form > div,.capture-form > textarea,.capture-form > fieldset,.capture-actions { grid-column:1 / -1; }.capture-form h2 { margin:.25rem 0 0; color:#edf5f1; font-size:1rem; }.capture-form label,.trust-inputs legend { color:#9eb7b7; font-size:.72rem; }.capture-form label span,.trust-inputs legend span { color:#6f8c91; }.capture-form input,.capture-form select,.capture-form textarea { width:100%; padding:.54rem .68rem; color:#eaf5f0; background:#081015; border:1px solid #385660; border-radius:.3rem; }.capture-form textarea { min-height:92px; resize:vertical; line-height:1.45; }.trust-inputs { display:grid; grid-template-columns:minmax(12rem, .55fr) minmax(16rem, 1.45fr); gap:9px 14px; margin:6px 0 0; padding:13px; border:1px solid #29464e; border-radius:.4rem; }.trust-inputs legend { padding:0 5px; }.trust-inputs .confirmation-input { grid-column:1 / -1; display:flex; align-items:flex-start; gap:9px; padding-top:5px; }.confirmation-input input { width:auto; margin:3px 0 0; accent-color:#e9af56; }.confirmation-input strong,.confirmation-input small { display:block; }.confirmation-input strong { color:#d8e7e3; font-size:.73rem; }.confirmation-input small { margin-top:3px; color:#718f93; font-size:.66rem; line-height:1.4; }.capture-actions { display:flex; align-items:center; gap:12px; padding-top:3px; }.capture-actions p { margin:0; color:#e9b46a; font-size:.7rem; }.dismiss-button { flex:0 0 auto; padding:3px; color:#8eaaa9 !important; background:transparent; border:0; font-size:.7rem; text-decoration:underline; }
.memory-browser { display:grid; grid-template-columns:minmax(225px,.8fr) minmax(410px,1.35fr) minmax(290px,.94fr); min-height:calc(100vh - 76px); }.project-map,.claim-list,.source-detail { min-width:0; padding:29px 24px; }.project-map,.claim-list { border-right:1px solid #1d3138; }.panel-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }.panel-heading h1,.panel-heading h2 { margin:.32rem 0 0; color:#edf5f1; font-size:1rem; font-weight:600; letter-spacing:-.02em; }.panel-heading h2 span { color:#779499; font:.68rem ui-monospace,monospace; vertical-align:2px; margin-left:5px; }.icon-button { display:grid; place-items:center; min-width:30px; min-height:30px; padding:0; font-size:1.1rem; }.project-roots { display:grid; gap:5px; margin-top:22px; padding:13px 0; border-top:1px solid #1c3037; border-bottom:1px solid #1c3037; }.project-root { display:grid; grid-template-columns:16px 1fr; gap:7px; align-items:center; width:100%; padding:7px 8px; border:0; border-radius:.3rem; color:#a9c0bf; background:transparent; text-align:left; font-size:.73rem; }.project-root:hover,.project-root.selected { color:#f2d08f; background:rgba(203,145,59,.11); }.project-state { margin:3px 0; color:#789398; font-size:.68rem; line-height:1.5; }.project-state p { margin:0 0 8px; }.retry-button { padding:0; color:#e1b56f; border:0; background:transparent; font-size:.68rem; text-decoration:underline; }.folder-tree { display:grid; gap:4px; margin-top:30px; }.folder-tree button { width:100%; display:grid; grid-template-columns:18px 1fr auto; align-items:center; gap:7px; border:0; border-radius:.3rem; padding:10px 9px; color:#b3c7c7; background:transparent; text-align:left; font-size:.78rem; }.folder-tree button:hover { background:#112128; }.folder-tree .selected,.folder-root[aria-current="page"] { color:#f2d08f; background:rgba(203,145,59,.11); }.folder-tree b { color:#668287; font:.64rem ui-monospace,monospace; }.map-footer { position:sticky; top:calc(100vh - 115px); display:flex; gap:10px; align-items:flex-start; margin-top:48px; padding:15px 0 0; border-top:1px solid #1c3037; color:#b9cbca; font-size:.7rem; }.map-footer strong,.map-footer small { display:block; }.map-footer small { color:#6f898d; margin-top:3px; line-height:1.4; }.storage-dot,.status-indicator { width:7px; height:7px; border-radius:50%; background:#76b5a7; box-shadow:0 0 0 3px rgba(118,181,167,.08); margin-top:3px; flex:0 0 auto; }
.claims-heading { align-items:center; }.view-switch { display:flex; padding:3px; border:1px solid #233b43; border-radius:.35rem; }.view-switch button { padding:4px 8px; border:0; border-radius:.2rem; color:#789397; background:transparent; font-size:.66rem; }.view-switch .active { color:#dbeae4; background:#20363d; }.filter-row { display:flex; gap:7px; margin:24px 0 15px; overflow-x:auto; }.filter { flex:0 0 auto; padding:5px 8px; color:#8fa7aa; border:1px solid #29434a; border-radius:100px; background:transparent; font-size:.66rem; }.filter.active,.filter:hover { border-color:#a7783d; color:#e5b66a; }.timeline { position:relative; }.timeline::before { position:absolute; top:10px; bottom:10px; left:5px; width:1px; background:#29424a; content:''; }.claim-row { position:relative; z-index:1; display:grid; grid-template-columns:14px 1fr auto; gap:9px; width:100%; padding:12px 8px 13px 0; color:#d9e8e4; border:0; border-bottom:1px solid #193038; background:transparent; text-align:left; }.claim-row:hover,.claim-row.selected { background:linear-gradient(90deg,rgba(45,90,96,.2),transparent); }.timeline-dot { width:11px; height:11px; margin-top:4px; border:2px solid #78a3a7; border-radius:50%; background:#0b151a; }.claim-row.selected .timeline-dot { border-color:#e6aa50; background:#e6aa50; box-shadow:0 0 0 4px rgba(230,170,80,.1); }.claim-copy { min-width:0; display:grid; gap:4px; }.claim-topline { display:flex; gap:10px; color:#799499; font:.62rem ui-monospace,monospace; }.claim-topline span { color:#b28b55; }.claim-copy strong { font-size:.79rem; font-weight:600; line-height:1.4; }.claim-summary { overflow:hidden; color:#8fa9aa; font-size:.7rem; line-height:1.48; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }.source-count { align-self:start; min-width:25px; padding-top:2px; color:#739397; font:.65rem ui-monospace,monospace; text-align:right; }
.source-detail { background:rgba(10,22,27,.5); }.detail-label { display:flex; gap:8px; align-items:center; color:#8aa5a7; font:.65rem ui-monospace,monospace; letter-spacing:.04em; text-transform:uppercase; }.detail-label .status-indicator { background:#e9af56; box-shadow:none; margin:0; }.source-detail h2 { margin:19px 0 13px; max-width:22rem; font-size:1.15rem; line-height:1.35; letter-spacing:-.025em; }.detail-assertion { margin:0; color:#a8c0bf; font-size:.76rem; line-height:1.7; }.claim-facts { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:25px 0; padding:15px 0; border-top:1px solid #20363e; border-bottom:1px solid #20363e; }.claim-facts dt { color:#6f8c91; font:.6rem ui-monospace,monospace; text-transform:uppercase; }.claim-facts dd { margin:5px 0 0; color:#c1d2d0; font-size:.68rem; line-height:1.4; }.section-title { display:flex; align-items:baseline; justify-content:space-between; gap:9px; margin-bottom:10px; }.section-title h3 { margin:0; font-size:.79rem; }.section-title span { color:#6f898e; font:.62rem ui-monospace,monospace; }.evidence-section { display:grid; gap:8px; }.source-card { position:relative; display:grid; gap:4px; padding:11px 30px 11px 12px; border:1px solid #264048; border-radius:.38rem; color:#98b2b1; text-decoration:none; background:rgba(20,43,50,.38); font-size:.67rem; line-height:1.45; }.source-card:hover { border-color:#598087; background:#142d35; }.source-card strong { color:#e0ece7; font-size:.73rem; font-weight:600; }.source-type { color:#dfad5e; font:.58rem ui-monospace,monospace; letter-spacing:.07em; }.external { position:absolute; right:10px; top:12px; color:#84a7aa; }.lineage { margin-top:28px; padding:15px 0 0; border-top:1px solid #20363e; }.lineage p { display:flex; gap:8px; margin:8px 0 0; color:#8fa8a8; font-size:.67rem; line-height:1.5; }.lineage p span { color:#72b19f; font-size:.55rem; padding-top:3px; }
@media (max-width:1020px) { .memory-browser { grid-template-columns:215px minmax(370px,1fr); }.source-detail { grid-column:2; border-top:1px solid #1d3138; }.project-map { grid-row:span 2; }.console-header { grid-template-columns:230px 1fr auto; padding:0 20px; }.project-context { display:none; } } @media (max-width:720px) { .console-header { grid-template-columns:minmax(0,1fr); min-height:64px; padding:12px 14px; }.header-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:6px; }.header-actions .quiet-button { display:block; }.header-actions .primary-button { max-width:none; overflow:visible; text-overflow:clip; white-space:normal; }.primary-button { min-height:34px; padding:0 .55rem; }.memory-browser { display:block; }.project-map,.claim-list,.source-detail { border-right:0; padding:22px 16px; }.project-map { border-bottom:1px solid #1d3138; }.folder-tree { display:flex; gap:6px; margin-top:16px; overflow-x:auto; }.folder-tree button { flex:0 0 auto; grid-template-columns:16px auto auto; padding:8px; }.folder-root { display:none !important; }.map-footer { display:none; }.source-detail { border-top:1px solid #1d3138; }.search-bar,.capture-notice { padding:10px 14px; }.search-bar label { display:none; }.capture-notice { display:block; }.capture-form,.trust-inputs { grid-template-columns:1fr; }.capture-form > label,.trust-inputs > label { grid-column:auto; }.trust-inputs { gap:8px; }.dismiss-button { margin-top:14px; } } @media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; } }

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
 .model-catalog { margin: 0 24px 18px; padding: 20px; border: 1px solid #385660; border-radius: .45rem; background: #0d191e; }
 .model-catalog h2 { margin: 4px 0; color: #eff7f4; font-size: 1.25rem; }
 .model-catalog p { color: #b9cdca; }
 .model-options { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; margin-top: 16px; }
 .model-option { display: grid; gap: 7px; padding: 14px; border: 1px solid #385660; border-radius: .38rem; color: #c6dad7; background: #102027; }
 .model-option strong { color: #eff7f4; font-size: .86rem; line-height: 1.35; }
 .model-option > span:not(.source-type) { color: #a8c2c0; font: .72rem ui-monospace,monospace; }
 .model-option p { margin: 0; color: #b9cdca; font-size: .76rem; line-height: 1.5; }
 .model-option .quiet-button { min-height: 44px; }
 .model-option .quiet-button:disabled { color: #8da7a5; border-color: #41616a; background: #172b32; opacity: 1; cursor: not-allowed; }
 .capture-form p { margin: .35rem 0 0; color: #b9cdca; font-size: .73rem; line-height: 1.5; }
 .remote-import .capture-form { grid-template-columns: minmax(0, 560px); }
 .remote-import .capture-form > * { grid-column: 1; }
 .remote-import .capture-form h2 { margin-top: 0; }
 .remote-import .capture-form p { max-width: 68ch; }
 .remote-import .capture-actions .quiet-button { min-height: 44px; }
 .dismiss-button { min-width: 44px; min-height: 44px; padding: .5rem; }
 .remote-items { display: grid; gap: 8px; margin-top: 6px; padding-top: 12px; border-top: 1px solid #29464e; }
 .remote-items > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; align-items: center; padding: 10px; border: 1px solid #385660; border-radius: .35rem; background: #102027; }
 .remote-items > div .source-type,.remote-items > div small { color: #8eaaa9; font-size: .65rem; }
 .remote-items > div strong { min-width: 0; color: #eaf5f0; font-size: .78rem; overflow-wrap: anywhere; }
 .remote-items > div .quiet-button { grid-column: 2; grid-row: 1 / span 3; min-height: 40px; }
 .remote-items .load-more { justify-self: start; }
 .remote-import .remote-error { color: #efb27b; }
 .remote-import .remote-empty { color: #8eaaa9; }
 .capture-actions .import-success { color: #9ed4c0; }
 .file-picker { width: 100%; color: #c9dbd9; font-size: .73rem; }
 .local-file-queue { display: grid; gap: 8px; padding: 13px; border: 1px solid #385660; border-radius: .38rem; background: #102027; }
 .local-file-queue > div:not(.capture-actions) { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 36px; padding: 7px 9px; border-bottom: 1px solid #29464e; }
 .local-file-queue strong { min-width: 0; color: #eaf5f0; font-size: .76rem; overflow-wrap: anywhere; }
 .local-file-queue small { flex: 0 0 auto; color: #8eaaa9; font-size: .67rem; }
 .local-file-queue .quiet-button { min-height: 44px; }
 .imported-sources,.candidate-review { grid-column: 1 / -1; display: grid; gap: 8px; margin-top: 10px; padding-top: 12px; border-top: 1px solid #29464e; }
 .imported-sources > div,.candidate-review article { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 4px 12px; align-items: center; padding: 10px; border: 1px solid #385660; border-radius: .35rem; background: #102027; }
 .imported-sources strong,.candidate-review strong { color: #eaf5f0; font-size: .78rem; }.imported-sources span,.candidate-review span { color: #9eb7b7; font-size: .67rem; overflow-wrap: anywhere; }.source-actions,.candidate-actions { display: flex; flex-wrap: wrap; gap: 8px; }.source-actions > button,.candidate-actions > button { min-height: 44px; }.candidate-review article > p,.candidate-actions { grid-column: 1 / -1; margin: 2px 0; }.candidate-actions { justify-self: start; }
 @media (max-width:720px) {
     .model-catalog { margin: 0 14px 14px; padding: 16px; }
     .remote-import input,.remote-import select,.remote-import button { min-height: 44px; }
     .local-file-queue .capture-actions { align-items: stretch; flex-direction: column; }
     .local-file-queue .capture-actions button { width: 100%; min-height: 44px; }
     .remote-items > div { grid-template-columns: minmax(0, 1fr); }
     .remote-items > div .quiet-button { grid-column: 1; grid-row: auto; width: 100%; min-height: 44px; }
 }

/* Content-pressure and narrow-screen containment verified against the published host. */
.wordmark { min-width: 0; }
.wordmark > span:last-child { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.wordmark em { overflow-wrap: anywhere; }
.wordmark-mark { flex: 0 0 auto; }
.header-actions { min-width: 0; }
.quiet-button span { color: #88a6aa; }
.claim-topline { min-width: 0; flex-wrap: wrap; gap: 4px 10px; }
.claim-topline span,.claim-copy strong,.source-card > * { min-width: 0; overflow-wrap: anywhere; }
.source-card { min-width: 0; }
.claims-heading > *,.view-switch,.view-switch button,.claim-facts > div,.claim-facts dt,.claim-facts dd { min-width: 0; max-width: 100%; }
.panel-heading h1,.panel-heading h2 { min-width: 0; overflow-wrap: anywhere; }
.panel-heading h2 span { display: inline-block; max-width: 100%; }
.view-switch button,.claim-facts dt,.claim-facts dd { overflow-wrap: anywhere; }
.filter-row { min-width: 0; max-width: 100%; }
.model-catalog,.model-catalog * { min-width: 0; overflow-wrap: anywhere; }
.model-options { grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr)); }

@media (max-width:1020px) {
    .console-header { grid-template-columns: 230px minmax(0,1fr); }
    .header-actions { justify-content: flex-end; max-width: 100%; overflow-x: auto; }
}

@media (max-width:720px) {
    .console-header { grid-template-columns: minmax(0,1fr); }
    .header-actions { overflow: visible; }
    .header-actions .primary-button { max-width: none; overflow: visible; text-overflow: clip; white-space: normal; }
    .project-state input { width: 100%; min-width: 0; }
    .project-state .primary-button,.model-option .quiet-button { max-width: 100%; height: auto; padding-top: .35rem; padding-bottom: .35rem; white-space: normal; overflow-wrap: anywhere; }
}

@media (max-width:380px) {
    .console-header { gap: 8px; padding: 0 10px; }
    .wordmark { gap: 7px; font-size: .72rem; letter-spacing: .09em; }
}

.not-found { display:grid; align-content:center; justify-items:start; min-height:100vh; width:min(38rem,100%); margin:0 auto; padding:2rem; }
.not-found h1 { margin:.7rem 0 .5rem; color:#edf5f1; font-size:clamp(1.8rem,5vw,3rem); letter-spacing:-.04em; }
.not-found p { max-width:52ch; margin:0 0 1.4rem; color:#a8c0bf; line-height:1.65; }
.not-found .primary-button { display:inline-grid; place-items:center; min-height:40px; padding:0 .9rem; }

.system-settings { margin:0; padding:22px 28px 26px; border-bottom:1px solid #385660; background:#0b171c; }
.settings-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.settings-heading h2 { margin:.3rem 0 .35rem; color:#eff7f4; font-size:1.25rem; }
.settings-heading p,.settings-login p { max-width:72ch; margin:0; color:#a9c1bf; font-size:.75rem; line-height:1.55; }
.settings-heading code { color:#efbd70; }
.settings-login { display:grid; grid-template-columns:minmax(13rem,.6fr) minmax(15rem,1fr); align-items:center; gap:10px 16px; width:min(760px,100%); margin-top:20px; padding:18px; border:1px solid #29464e; border-radius:.45rem; background:#102027; }
.settings-login > div,.settings-login > button { grid-column:1 / -1; justify-self:start; }
.settings-login strong,.settings-grid h3 { color:#eaf5f0; }
.settings-login label,.database-settings > label { color:#9eb7b7; font-size:.72rem; }
.settings-login input,.database-settings > input { width:100%; min-width:0; padding:.54rem .68rem; color:#eaf5f0; background:#081015; border:1px solid #385660; border-radius:.3rem; }
.settings-mode { display:grid; gap:4px; margin:18px 0; padding:12px 14px; border-left:3px solid #71b8a3; color:#bcd1cd; background:rgba(35,81,77,.22); font-size:.74rem; }
.settings-mode.forced { border-left-color:#e9af56; background:rgba(122,82,26,.18); }
.settings-mode strong { color:#eff7f4; }
.settings-grid { display:grid; grid-template-columns:minmax(240px,.72fr) minmax(340px,1.28fr); gap:18px; }
.settings-grid > section { min-width:0; padding:18px; border:1px solid #29464e; border-radius:.45rem; background:#102027; }
.settings-grid h3 { margin:.35rem 0 1rem; font-size:.95rem; }
.settings-grid dl { display:grid; gap:10px; margin:0; }
.settings-grid dl div { display:grid; grid-template-columns:6.5rem minmax(0,1fr); gap:10px; padding-bottom:8px; border-bottom:1px solid #294049; }
.settings-grid dt { color:#78979a; font:.64rem ui-monospace,monospace; text-transform:uppercase; }
.settings-grid dd { min-width:0; margin:0; color:#c4d8d4; font-size:.73rem; overflow-wrap:anywhere; }
.database-settings { display:grid; grid-template-columns:minmax(11rem,.55fr) minmax(15rem,1fr); align-items:center; gap:9px 14px; }
.database-settings > .eyebrow,.database-settings > h3,.database-settings > .confirmation-input,.settings-actions { grid-column:1 / -1; }
.database-settings .confirmation-input { display:flex; gap:9px; align-items:flex-start; }
.database-settings .confirmation-input input { width:auto; margin-top:3px; accent-color:#e9af56; }
.settings-actions { display:flex; gap:10px; padding-top:8px; }
.settings-message { margin:14px 0 0; color:#9ed4c0; font-size:.74rem; }
.settings-message.error { color:#e9b46a; }

@media (max-width:720px) {
    .system-settings { padding:18px 14px 22px; }
    .settings-heading,.settings-actions { align-items:stretch; flex-direction:column; }
    .settings-grid,.settings-login,.database-settings { grid-template-columns:1fr; }
    .settings-login > label,.settings-login > input,.database-settings > label,.database-settings > input { grid-column:1; }
    .settings-grid dl div { grid-template-columns:1fr; gap:4px; }
}
