/* One dark, dependency-free surface, shared with the proxy's standalone page. */
#fit4fun-interactive-content { display: contents; }
.fit4fun-deployment {
    --deployment-bg: var(--bs-body-bg, #15171c);
    --deployment-surface: var(--bs-modal-bg, #1e2027);
    --deployment-text: var(--bs-body-color, #f1f1f4);
    --deployment-border: var(--fit4fun-quiet-border, rgba(255, 255, 255, .07));
    --deployment-accent: var(--bs-primary, #d2fe13);
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow-y: auto;
    padding: 1.5rem;
    color: var(--deployment-text);
    background: var(--deployment-bg);
    font: 400 1rem/1.6 Inter, Arial, sans-serif;
    color-scheme: dark;
}
.fit4fun-deployment [hidden], .fit4fun-deployment[hidden] { display: none !important; }
.fit4fun-deployment-card {
    width: min(100%, 34rem);
    margin-block: auto;
    padding: 2.5rem;
    border: 1px solid var(--deployment-border);
    border-radius: .75rem;
    background: var(--deployment-surface);
}
.fit4fun-deployment-brand { font-size: 1.75rem; font-weight: 700; letter-spacing: -.04em; margin-bottom: 1.75rem; }
.fit4fun-deployment-brand span { color: var(--deployment-accent); }
.fit4fun-deployment h2 { margin: 0 0 .75rem; font-size: 1.5rem; line-height: 1.3; font-weight: 600; }
.fit4fun-deployment p { margin: 0 0 1.25rem; }
.fit4fun-deployment-estimate { font-weight: 500; }
.fit4fun-deployment progress { display: block; width: 100%; height: .4rem; margin: .5rem 0 1.75rem; border: 0; border-radius: .5rem; accent-color: var(--deployment-accent); overflow: hidden; }
.fit4fun-deployment details { margin: 1.5rem 0; padding-block: 1rem; border-block: 1px solid var(--deployment-border); }
.fit4fun-deployment summary { cursor: pointer; min-height: 44px; align-content: center; font-weight: 500; }
.fit4fun-deployment-phases { padding-left: 1.5rem; margin: .5rem 0 1rem; }
.fit4fun-deployment-phases li { padding-left: .25rem; }
.fit4fun-deployment-phases li[data-current="true"] { font-weight: 700; }
.fit4fun-deployment-phases li[data-finished="true"]::marker { content: '✓  '; }
.fit4fun-deployment-phases li[data-current="true"]::marker { content: '●  '; }
.fit4fun-deployment dl { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .25rem 1rem; margin: 0; font-size: .875rem; }
.fit4fun-deployment dt { font-weight: 400; }
.fit4fun-deployment dd { margin: 0; overflow-wrap: anywhere; text-align: right; }
.fit4fun-deployment-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.fit4fun-deployment button, .fit4fun-deployment a {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 44px; padding: .7rem 1rem; border: 1px solid transparent; border-radius: .475rem;
    font: inherit; font-weight: 500; text-align: center; text-decoration: none;
    color: var(--bs-primary-inverse, #323233); background: var(--deployment-accent); cursor: pointer;
}
.fit4fun-deployment button.fit4fun-deployment-secondary, .fit4fun-deployment a { background: rgba(255, 255, 255, .07); color: var(--deployment-text); }
.fit4fun-deployment button:disabled { opacity: .65; cursor: wait; }
.fit4fun-deployment :focus-visible { outline: 3px solid var(--deployment-accent); outline-offset: 3px; }
.fit4fun-deployment[data-display="banner"] { inset: auto 1rem 1rem; padding: 0; background: transparent; pointer-events: none; }
.fit4fun-deployment[data-display="banner"] .fit4fun-deployment-card { width: min(100%, 42rem); padding: 1rem 1.25rem; box-shadow: 0 .5rem 2rem #0004; pointer-events: auto; }
.fit4fun-deployment[data-display="banner"] .fit4fun-deployment-brand,
.fit4fun-deployment[data-display="banner"] progress,
.fit4fun-deployment[data-display="banner"] details { display: none; }
.fit4fun-deployment[data-display="banner"] h2 { font-size: 1rem; }
.fit4fun-deployment[data-display="banner"] p { margin-bottom: .5rem; }
/* CSS suppresses conflicting static/Blazor notices without rewriting renderer-owned nodes. */
html[data-fit4fun-deployment="blocking"] #fit4fun-reconnect-status,
html[data-fit4fun-deployment="blocking"] #fit4fun-reconnect-failed-modal,
html[data-fit4fun-deployment="blocking"] #fit4fun-reconnect-failed-backdrop,
html[data-fit4fun-deployment="blocking"] #fit4fun-bswup-update-modal,
html[data-fit4fun-deployment="blocking"] #fit4fun-bswup-update-backdrop,
html[data-fit4fun-deployment="blocking"] #fit4fun-bswup-update-reminder,
html[data-fit4fun-deployment="blocking"] #blazor-error-ui,
html[data-fit4fun-deployment="announced"] .fit4fun-connection-indicator,
html[data-fit4fun-deployment="blocking"] .fit4fun-connection-indicator { display: none !important; }
@media (max-width: 575.98px) {
    .fit4fun-deployment { padding: 0; }
    .fit4fun-deployment-card { min-height: 100%; width: 100%; padding: 2rem 1.5rem; border: 0; border-radius: 0; align-content: center; }
    .fit4fun-deployment-actions { flex-direction: column; }
    .fit4fun-deployment-actions > * { width: 100%; box-sizing: border-box; }
    .fit4fun-deployment[data-display="banner"] { inset-inline: .75rem; bottom: .75rem; }
    .fit4fun-deployment[data-display="banner"] .fit4fun-deployment-card { min-height: auto; border-radius: .75rem; }
}
@media (prefers-reduced-motion: reduce) { .fit4fun-deployment progress { animation: none; } }
