/*
 * Space Watch product console skin.
 * Scope intentionally stays inside the category data area; global navigation,
 * footer, and page background remain owned by the existing site shell.
 */

body.spacewatch-page .spacewatch-modules {
    --sw-bg: #03070d;
    --sw-bg-2: #07111d;
    --sw-panel: rgba(2, 10, 18, 0.86);
    --sw-panel-2: rgba(4, 18, 29, 0.78);
    --sw-rail: rgba(6, 182, 212, 0.18);
    --sw-line: rgba(103, 232, 249, 0.16);
    --sw-line-soft: rgba(103, 232, 249, 0.08);
    --sw-text: rgba(241, 247, 255, 0.96);
    --sw-muted: rgba(190, 210, 225, 0.64);
    --sw-faint: rgba(190, 210, 225, 0.38);
    --sw-cyan: #22d3ee;
    --sw-blue: #38bdf8;
    --sw-green: #20f7c4;
    --sw-yellow: #ffd84d;
    --sw-orange: #ff9f33;
    --sw-red: #ff4d6d;
    --sw-selected: #a3ff5f;
    --sw-shadow-cyan: 0 0 22px rgba(34, 211, 238, 0.22);
    --sw-shadow-green: 0 0 22px rgba(32, 247, 196, 0.18);
    --sw-radius: 6px;
    --sw-gap-1: 6px;
    --sw-gap-2: 10px;
    --sw-gap-3: 14px;
    --sw-gap-4: 18px;
    color: var(--sw-text);
    font-variant-numeric: tabular-nums;
}

body.spacewatch-page .spacewatch-tabs {
    border-color: var(--sw-line);
    border-radius: var(--sw-radius);
    background:
        linear-gradient(90deg, rgba(34, 211, 238, 0.08), transparent 42%, rgba(255, 77, 109, 0.055)),
        repeating-linear-gradient(90deg, transparent 0 33px, rgba(103, 232, 249, 0.045) 33px 34px),
        rgba(2, 10, 18, 0.82);
}

body.spacewatch-page .spacewatch-title-tabs {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-self: center;
    gap: 4px;
    margin: 0;
    padding: 4px;
    overflow-x: auto;
    border-color: rgba(103, 232, 249, 0.18);
    border-radius: 4px;
    background: rgba(1, 8, 15, 0.58);
    scrollbar-width: none;
}

body.spacewatch-page .spacewatch-title-tabs::-webkit-scrollbar {
    display: none;
}

body.spacewatch-page .spacewatch-title-tabs .spacewatch-tab-button {
    flex: 0 0 auto;
    width: auto;
    min-height: 30px;
    padding: 5px 10px;
    font-size: 14px;
    font-weight: 500;
}

body.spacewatch-page .spacewatch-tab-button,
body.spacewatch-page .spacewatch-mode-button,
body.spacewatch-page .spacewatch-play-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    border-radius: 4px;
    border-color: rgba(34, 211, 238, 0.34);
    background: rgba(1, 9, 17, 0.72);
    color: rgba(226, 242, 250, 0.86);
    font-size: 12px;
    font-weight: 800;
    margin: 0;
    letter-spacing: 0;
    white-space: nowrap;
    text-transform: none;
    transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

body.spacewatch-page .spacewatch-tab-button:hover,
body.spacewatch-page .spacewatch-mode-button:hover,
body.spacewatch-page .spacewatch-play-button:hover {
    border-color: rgba(103, 232, 249, 0.72);
    background: rgba(6, 182, 212, 0.10);
    color: #fff;
}

body.spacewatch-page .spacewatch-tab-button:focus-visible,
body.spacewatch-page .spacewatch-mode-button:focus-visible,
body.spacewatch-page .spacewatch-play-button:focus-visible,
body.spacewatch-page .spacewatch-date-cell:focus-visible,
body.spacewatch-page .spacewatch-event-row:focus-visible,
body.spacewatch-page .spacewatch-flare-marker:focus-visible {
    outline: 2px solid rgba(255, 216, 77, 0.92);
    outline-offset: 2px;
}

body.spacewatch-page .spacewatch-tab-button.is-active,
body.spacewatch-page .spacewatch-mode-button.is-active,
body.spacewatch-page .spacewatch-play-button.is-active {
    border-color: rgba(163, 255, 95, 0.72);
    background:
        linear-gradient(180deg, rgba(163, 255, 95, 0.15), rgba(34, 211, 238, 0.05)),
        rgba(3, 12, 18, 0.88);
    color: #fff;
    font-weight: 900;
    box-shadow: var(--sw-shadow-green), inset 0 0 0 1px rgba(163, 255, 95, 0.11);
}

body.spacewatch-page .spacewatch-panel {
    border-radius: var(--sw-radius);
    border-color: rgba(34, 211, 238, 0.28);
    background:
        radial-gradient(circle at 16% 0%, rgba(34, 211, 238, 0.12), transparent 30%),
        radial-gradient(circle at 86% 2%, rgba(255, 216, 77, 0.08), transparent 28%),
        linear-gradient(180deg, rgba(4, 19, 32, 0.92), rgba(1, 7, 13, 0.94));
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.025), 0 0 0 1px rgba(0, 0, 0, 0.45);
}

body.spacewatch-page .spacewatch-panel::before {
    border-radius: var(--sw-radius);
    background:
        linear-gradient(90deg, var(--sw-cyan), transparent 16%, transparent 82%, var(--sw-red)) top / 100% 1px no-repeat,
        linear-gradient(180deg, rgba(34, 211, 238, 0.55), transparent 36%) left / 1px 100% no-repeat,
        linear-gradient(180deg, rgba(255, 216, 77, 0.32), transparent 36%) right / 1px 100% no-repeat;
    opacity: 0.72;
}

body.spacewatch-page .spacewatch-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    min-height: 52px;
    padding: 12px 14px;
    border-bottom: 1px solid var(--sw-line);
    background:
        linear-gradient(90deg, rgba(34, 211, 238, 0.07), transparent 45%),
        rgba(0, 0, 0, 0.10);
}

body.spacewatch-page .spacewatch-head > .spacewatch-recent-head-actions {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 8px;
    min-width: min(100%, 420px);
    flex-wrap: wrap;
}

body.spacewatch-page .spacewatch-head h2 {
    margin: 0;
    color: var(--sw-text);
    font-size: 18px;
    line-height: 1.1;
    letter-spacing: 0;
    text-shadow: 0 0 16px rgba(34, 211, 238, 0.28);
}

body.spacewatch-page .spacewatch-head p {
    margin: 4px 0 0;
    color: var(--sw-muted);
    font-size: 12px;
    line-height: 1.35;
}

body.spacewatch-page .spacewatch-badge,
body.spacewatch-page .spacewatch-pill,
body.spacewatch-page .spacewatch-live {
    border-radius: 999px;
    border-color: rgba(34, 211, 238, 0.38);
    background: rgba(0, 12, 22, 0.72);
    color: rgba(229, 246, 255, 0.92);
    font-size: 11px;
}

body.spacewatch-page .spacewatch-body {
    padding: 12px 14px 14px;
}

body.spacewatch-page .spacewatch-scanlines {
    background:
        repeating-linear-gradient(0deg, transparent 0 7px, rgba(103, 232, 249, 0.032) 7px 8px),
        repeating-linear-gradient(90deg, transparent 0 47px, rgba(103, 232, 249, 0.035) 47px 48px);
    opacity: 0.46;
}

body.spacewatch-page .spacewatch-recent-layout {
    grid-template-columns: minmax(430px, 0.86fr) minmax(0, 1.14fr);
    grid-template-areas:
        "sun controls"
        "timeline timeline";
    align-items: stretch;
    gap: var(--sw-gap-3);
}

body.spacewatch-page .spacewatch-coronal-layout {
    grid-template-columns: minmax(430px, 0.82fr) minmax(0, 1.18fr);
    grid-template-areas:
        "coronal controls"
        "timeline timeline";
    align-items: start;
    gap: var(--sw-gap-3);
}

body.spacewatch-page .spacewatch-coronal-visual-column {
    grid-area: coronal;
    display: grid;
    align-content: start;
    gap: var(--sw-gap-2);
    min-width: 0;
}

body.spacewatch-page .spacewatch-coronal-visual-column > .spacewatch-coronal-console {
    grid-area: auto;
}

body.spacewatch-page .spacewatch-recent-timeline,
body.spacewatch-page .spacewatch-solar-console,
body.spacewatch-page .spacewatch-coronal-console,
body.spacewatch-page .spacewatch-hud-panel,
body.spacewatch-page .spacewatch-time-dock,
body.spacewatch-page .spacewatch-cme-chart {
    border-radius: var(--sw-radius);
    border-color: var(--sw-line);
    background:
        linear-gradient(135deg, rgba(34, 211, 238, 0.075), transparent 42%),
        repeating-linear-gradient(90deg, transparent 0 31px, rgba(103, 232, 249, 0.04) 31px 32px),
        rgba(1, 8, 15, 0.82);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.025);
}

body.spacewatch-page .spacewatch-recent-timeline {
    padding: 8px 10px 10px;
}

body.spacewatch-page .spacewatch-cme-chart {
    display: block;
    width: 100%;
    min-height: 190px;
    max-height: 340px;
    border: 0;
    background: transparent;
}

body.spacewatch-page .spacewatch-cme-journey[hidden],
body.spacewatch-page .spacewatch-event-grid-wrap[hidden],
body.spacewatch-page .spacewatch-date-rail[hidden] { display: none; }

body.spacewatch-page .spacewatch-cme-journey-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 46px;
    padding: 4px 8px 8px;
    border-bottom: 1px solid rgba(103, 232, 249, 0.12);
}

body.spacewatch-page .spacewatch-cme-journey-head > div { display:flex; align-items:baseline; gap:8px; min-width:0; }
body.spacewatch-page .spacewatch-cme-journey-head strong { color:var(--sw-text); font-size:13px; }
body.spacewatch-page .spacewatch-cme-journey-head span { color:var(--sw-faint); font-size:10px; }
body.spacewatch-page .spacewatch-cme-play { position:relative; inset:auto; width:auto; height:30px; min-height:30px; padding:0 11px; border-radius:3px; font-size:11px; transform:none; }
body.spacewatch-page .spacewatch-cme-play::before { display:none; }

body.spacewatch-page .spacewatch-recent-timeline-head,
body.spacewatch-page .spacewatch-time-dock-head {
    min-height: 20px;
    margin-bottom: 8px;
    color: var(--sw-muted);
    font-size: 11px;
    letter-spacing: 0;
    text-transform: none;
}

body.spacewatch-page .spacewatch-recent-timeline-head strong,
body.spacewatch-page .spacewatch-time-dock-head strong {
    color: var(--sw-text);
    font-size: 13px;
}

body.spacewatch-page .spacewatch-date-rail {
    margin-top: 6px;
    gap: var(--sw-gap-1);
}

body.spacewatch-page .spacewatch-date-slider {
    display: none;
}

body.spacewatch-page .spacewatch-date-cell {
    min-height: 62px;
    border-radius: 2px;
    border-color: rgba(103, 232, 249, 0.13);
    background:
        linear-gradient(180deg, rgba(34, 211, 238, 0.065), rgba(255, 255, 255, 0.018)),
        rgba(0, 7, 13, 0.78);
    color: rgba(239, 248, 255, 0.82);
    font-size: 11px;
    padding: 9px 6px 8px;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 2px;
}

body.spacewatch-page .spacewatch-date-cell::before {
    left: 6px;
    right: 6px;
    top: 5px;
    height: 1px;
    background: var(--date-accent, rgba(34, 211, 238, 0.52));
}

body.spacewatch-page .spacewatch-date-cell.is-active {
    border-color: rgba(163, 255, 95, 0.74);
    transform: translateY(-2px);
    background:
        linear-gradient(180deg, rgba(163, 255, 95, 0.12), rgba(34, 211, 238, 0.035)),
        rgba(5, 20, 20, 0.86);
    box-shadow: 0 0 18px rgba(163, 255, 95, 0.12), inset 0 0 0 1px rgba(163, 255, 95, 0.10);
}

body.spacewatch-page .spacewatch-date-cell em {
    color: var(--sw-faint);
    font-size: 10px;
    line-height: 1;
}

body.spacewatch-page .spacewatch-date-cell strong {
    color: var(--sw-text);
    font-size: 14px;
    line-height: 1.08;
}

body.spacewatch-page .spacewatch-date-cell span {
    color: var(--sw-muted);
    font-size: 10px;
    line-height: 1;
}

body.spacewatch-page .spacewatch-event-grid-wrap {
    position: relative;
    display: grid;
    min-width: 0;
    padding-left: 66px;
    gap: 8px;
}

body.spacewatch-page .spacewatch-event-play {
    position: absolute;
    left: 0;
    top: 50%;
    z-index: 6;
    width: 52px;
    height: 52px;
    min-height: 52px;
    padding: 0;
    border-radius: 50%;
    border-color: rgba(255, 255, 255, 0.20);
    background:
        radial-gradient(circle at 38% 32%, rgba(255, 255, 255, 0.20), transparent 36%),
        rgba(78, 89, 98, 0.82);
    color: rgba(255, 255, 255, 0.84);
    font-size: 0;
    transform: translateY(-50%);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.30), inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

body.spacewatch-page .spacewatch-event-play::before {
    content: "";
    width: 0;
    height: 0;
    margin-left: 3px;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 12px solid currentColor;
}

body.spacewatch-page .spacewatch-event-play.is-active::before {
    width: 12px;
    height: 16px;
    margin-left: 0;
    border: 0;
    background: linear-gradient(90deg, currentColor 0 38%, transparent 38% 62%, currentColor 62%);
}

body.spacewatch-page .spacewatch-event-side-badge {
    position: absolute;
    top: 6px;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 3px 7px;
    border: 1px solid rgba(103, 232, 249, 0.16);
    border-radius: 3px;
    background: rgba(1, 8, 15, 0.66);
    color: rgba(226, 242, 250, 0.72);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    pointer-events: none;
}

body.spacewatch-page .spacewatch-event-side-badge.is-left {
    left: 74px;
}

body.spacewatch-page .spacewatch-event-side-badge.is-right {
    right: 8px;
}

body.spacewatch-page .spacewatch-event-rail {
    position: relative;
    min-height: 74px;
    margin-top: 0;
    overflow: hidden;
    border: 1px solid rgba(103, 232, 249, 0.14);
    border-radius: 2px;
    background:
        linear-gradient(180deg, rgba(34, 211, 238, 0.10), transparent 44%),
        repeating-linear-gradient(90deg, rgba(103, 232, 249, 0.18) 0 1px, transparent 1px 4.166%),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 1.041%),
        rgba(1, 8, 15, 0.88);
}

body.spacewatch-page .spacewatch-event-rail::before {
    content: "";
    position: absolute;
    left: 10px;
    width: var(--recent-time-progress, 50%);
    top: 35px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(34, 211, 238, 0.10), rgba(34, 211, 238, 0.82), rgba(255, 216, 77, 0.70));
    box-shadow: 0 0 12px rgba(34, 211, 238, 0.26);
}

body.spacewatch-page .spacewatch-event-rail::after {
    content: "";
    position: absolute;
    left: var(--recent-time-progress, 50%);
    top: 35px;
    z-index: 4;
    width: 7px;
    height: 7px;
    border: 1px solid rgba(255, 255, 255, 0.92);
    border-radius: 50%;
    background: var(--date-accent, var(--sw-selected));
    box-shadow: 0 0 13px rgba(255, 216, 77, 0.46);
    transform: translate(-50%, -42%);
    pointer-events: none;
}

body.spacewatch-page .spacewatch-event-rail-labels {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 6px;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    color: var(--sw-faint);
    font-size: 10px;
    line-height: 1;
    pointer-events: none;
}

body.spacewatch-page .spacewatch-time-slider-overlay {
    position: absolute;
    left: 66px;
    right: 0;
    top: 0;
    z-index: 7;
    width: calc(100% - 66px);
    height: 74px;
    margin: 0;
    opacity: 0;
    cursor: ew-resize;
}

body.spacewatch-page .spacewatch-time-slider-overlay:disabled {
    cursor: default;
}

body.spacewatch-page .spacewatch-event-rail-labels span:not(:first-child):not(:last-child) {
    text-align: center;
}

body.spacewatch-page .spacewatch-event-rail-labels span:last-child {
    text-align: right;
}

body.spacewatch-page .spacewatch-event-rail-empty {
    position: absolute;
    left: 12px;
    top: 15px;
    z-index: 2;
    color: var(--sw-faint);
    font-size: 11px;
}

body.spacewatch-page .spacewatch-flare-marker {
    --flare-color: var(--sw-blue);
    --flare-glow: rgba(56, 189, 248, 0.42);
    position: absolute;
    left: var(--event-x, 0%);
    top: calc(14px + (var(--event-row, 0) * 13px));
    z-index: 3;
    width: 16px;
    height: 16px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    transform: translateX(-50%);
}

body.spacewatch-page .spacewatch-flare-marker::before {
    content: "";
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    background: var(--flare-color);
    box-shadow: 0 0 10px var(--flare-glow), 0 0 22px var(--flare-glow);
}

body.spacewatch-page .spacewatch-flare-marker::after {
    content: "";
    position: absolute;
    inset: 1px;
    border: 1px solid var(--flare-color);
    border-radius: 50%;
    opacity: 0.52;
}

body.spacewatch-page .spacewatch-flare-marker.is-m {
    --flare-color: var(--sw-yellow);
    --flare-glow: rgba(255, 216, 77, 0.46);
}

body.spacewatch-page .spacewatch-flare-marker.is-x {
    --flare-color: var(--sw-red);
    --flare-glow: rgba(255, 77, 109, 0.48);
}

body.spacewatch-page .spacewatch-flare-marker.is-active {
    z-index: 4;
}

body.spacewatch-page .spacewatch-flare-marker.is-active::after {
    inset: -3px;
    border-color: var(--sw-selected);
    opacity: 0.9;
    box-shadow: 0 0 14px rgba(163, 255, 95, 0.42);
}

body.spacewatch-page .spacewatch-flare-duration {
    position: absolute;
    left: 50%;
    top: 7px;
    width: max(8px, var(--event-width, 8px));
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--flare-color), transparent);
    box-shadow: 0 0 8px var(--flare-glow);
    pointer-events: none;
}

body.spacewatch-page .spacewatch-time-slider::-webkit-slider-runnable-track,
body.spacewatch-page .spacewatch-date-slider::-webkit-slider-runnable-track,
body.spacewatch-page .spacewatch-coronal-slider::-webkit-slider-runnable-track {
    height: 6px;
    border-color: rgba(103, 232, 249, 0.22);
    background:
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.2) 0 1px, transparent 1px 8.333%),
        linear-gradient(90deg, rgba(34, 211, 238, 0.28), rgba(163, 255, 95, 0.32));
}

body.spacewatch-page .spacewatch-time-slider::-webkit-slider-thumb,
body.spacewatch-page .spacewatch-date-slider::-webkit-slider-thumb,
body.spacewatch-page .spacewatch-coronal-slider::-webkit-slider-thumb {
    width: 16px;
    height: 16px;
    margin-top: -6px;
    border-color: rgba(255, 255, 255, 0.94);
    background: var(--date-accent, var(--sw-selected));
}

body.spacewatch-page .spacewatch-coronal-slider-wrap {
    --coronal-position: 25%;
    --coronal-observed-color: 24, 208, 214;
    --coronal-inferred-color: 174, 188, 201;
    position: relative;
    padding: 18px 0 8px;
}

body.spacewatch-page .spacewatch-coronal-slider-wrap::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 17px;
    height: 10px;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        rgba(var(--coronal-observed-color), 0.18) 0 25%,
        rgba(var(--coronal-inferred-color), 0.10) 25% 100%
    );
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.05),
        0 0 12px rgba(var(--coronal-observed-color), 0.08);
    pointer-events: none;
}

body.spacewatch-page .spacewatch-coronal-zone-label {
    position: absolute;
    top: 0;
    z-index: 2;
    color: rgba(226, 242, 250, 0.70);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
}

body.spacewatch-page .spacewatch-coronal-zone-label.is-observed {
    left: 0;
    color: rgba(var(--coronal-observed-color), 0.94);
}

body.spacewatch-page .spacewatch-coronal-zone-label.is-forecast {
    right: 0;
    color: rgba(var(--coronal-inferred-color), 0.84);
}

body.spacewatch-page .spacewatch-coronal-current-line {
    position: absolute;
    left: 25%;
    top: 13px;
    bottom: 2px;
    z-index: 1;
    width: 1px;
    background: rgba(255, 216, 77, 0.90);
    box-shadow: 0 0 12px rgba(255, 216, 77, 0.42);
    pointer-events: none;
}

body.spacewatch-page .spacewatch-coronal-slider {
    position: relative;
    z-index: 2;
    width: 100%;
}

body.spacewatch-page .spacewatch-coronal-slider::-webkit-slider-runnable-track {
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.22) 0 1px, transparent 1px 3.5714%),
        linear-gradient(90deg, rgba(var(--coronal-observed-color), 0.78) 0 25%, rgba(var(--coronal-inferred-color), 0.48) 25% 100%);
}

body.spacewatch-page .spacewatch-coronal-slider::-moz-range-track {
    height: 6px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 999px;
    background:
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.22) 0 1px, transparent 1px 3.5714%),
        linear-gradient(90deg, rgba(var(--coronal-observed-color), 0.78) 0 25%, rgba(var(--coronal-inferred-color), 0.48) 25% 100%);
}

body.spacewatch-page .spacewatch-coronal-time-ticks {
    margin-top: 2px;
    color: rgba(226, 242, 250, 0.52);
    font-size: 9px;
}

body.spacewatch-page .spacewatch-coronal-date-rail {
    display: flex;
    gap: 0;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 4px;
    padding: 2px 0 4px;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(103, 232, 249, 0.34) transparent;
}

body.spacewatch-page .spacewatch-coronal-date-tick {
    position: relative;
    display: grid;
    flex: 0 0 82px;
    justify-items: center;
    gap: 3px;
    min-height: 30px;
    color: rgba(190, 210, 225, 0.50);
    font-size: 8px;
    line-height: 1;
    border-top: 2px solid transparent;
    border-radius: 2px;
}

body.spacewatch-page .spacewatch-coronal-date-tick i {
    display: block;
    width: 1px;
    height: 10px;
    background: rgba(103, 232, 249, 0.26);
}

body.spacewatch-page .spacewatch-coronal-date-tick b {
    font-weight: 600;
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-observed b {
    color: rgba(24, 208, 214, 0.88);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-forecast b {
    color: rgba(174, 188, 201, 0.78);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-observed {
    border-top-color: rgba(24, 208, 214, 0.72);
    background: linear-gradient(180deg, rgba(24, 208, 214, 0.10), transparent 72%);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-forecast {
    border-top-color: rgba(174, 188, 201, 0.50);
    background: linear-gradient(180deg, rgba(174, 188, 201, 0.07), transparent 72%);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-observed i {
    background: rgba(24, 208, 214, 0.58);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-forecast i {
    background: rgba(174, 188, 201, 0.42);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-history-unavailable b {
    opacity: 0.62;
    text-decoration: underline dotted rgba(255, 159, 51, 0.72);
    text-underline-offset: 2px;
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-history-unavailable i {
    background-color: rgba(255, 159, 51, 0.46);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-current i {
    height: 16px;
    background: rgba(255, 216, 77, 0.92);
    box-shadow: 0 0 10px rgba(255, 216, 77, 0.42);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-selected.is-observed b {
    color: rgb(95, 238, 241);
    text-shadow: 0 0 8px rgba(24, 208, 214, 0.42);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-selected.is-forecast b {
    color: rgb(222, 231, 238);
    text-shadow: 0 0 8px rgba(174, 188, 201, 0.32);
}

body.spacewatch-page .spacewatch-coronal-date-tick.is-current b {
    color: rgba(255, 216, 77, 0.96);
    text-shadow: 0 0 8px rgba(34, 211, 238, 0.32);
}

body.spacewatch-page .spacewatch-solar-console {
    position: relative;
    padding: 12px;
    min-height: 0;
    justify-items: center;
}

body.spacewatch-page .spacewatch-solar-updates {
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 5;
    display: grid;
    gap: 2px;
    max-width: 42%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.70);
    font-size: 11px;
    font-weight: 300;
    line-height: 1.62;
}

body.spacewatch-page .spacewatch-solar-updates span {
    display: flex;
    gap: 5px;
    min-width: 0;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-solar-updates span[hidden] {
    display: none;
}

body.spacewatch-page .spacewatch-solar-updates b {
    overflow: hidden;
    color: rgba(255, 255, 255, 0.70);
    font-weight: 400;
    text-overflow: ellipsis;
}

body.spacewatch-page .spacewatch-solar-legend {
    position: absolute;
    left: 12px;
    right: auto;
    top: auto;
    bottom: 12px;
    z-index: 5;
    display: grid;
    grid-template-columns: repeat(2, auto);
    gap: 7px 16px;
    width: auto;
    max-width: 46%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

body.spacewatch-page .spacewatch-solar-options {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 5;
    justify-content: flex-end;
    max-width: 52%;
}

body.spacewatch-page .spacewatch-solar-canvas-wrap {
    width: 100%;
    min-height: 316px;
}

body.spacewatch-page .spacewatch-solar-canvas {
    width: min(100%, 392px);
    cursor: pointer;
    filter: drop-shadow(0 0 20px rgba(6, 182, 212, 0.24));
}

body.spacewatch-page .spacewatch-solar-reticle {
    width: min(100%, 438px);
    opacity: 0.28;
    background:
        repeating-conic-gradient(from -90deg, rgba(34, 211, 238, 0.60) 0 0.65deg, transparent 0.65deg 5.6deg),
        radial-gradient(circle, transparent 61%, rgba(34, 211, 238, 0.25) 62%, transparent 63%),
        radial-gradient(circle, transparent 78%, rgba(255, 216, 77, 0.18) 79%, transparent 80%);
}

body.spacewatch-page .spacewatch-sun-label {
    font-size: 8.5px;
    font-weight: 500;
    letter-spacing: 0;
    fill: rgba(226, 242, 250, 0.78);
}

body.spacewatch-page .spacewatch-sun-label-leader {
    stroke: rgba(103, 232, 249, 0.30);
    stroke-width: 0.8;
    vector-effect: non-scaling-stroke;
}

body.spacewatch-page .spacewatch-time-dock {
    gap: var(--sw-gap-1);
    padding: 10px;
}

body.spacewatch-page .spacewatch-recent-time-row {
    display: none;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
}

body.spacewatch-page .spacewatch-time-ticks {
    color: var(--sw-faint);
    font-size: 10px;
}

body.spacewatch-page .spacewatch-recent-controls,
body.spacewatch-page .spacewatch-coronal-controls {
    gap: var(--sw-gap-2);
    min-width: 0;
}

body.spacewatch-page .spacewatch-recent-controls {
    align-content: start;
}

body.spacewatch-page .spacewatch-coronal-controls .spacewatch-hud-panel {
    min-width: 0;
    overflow: hidden;
}

body.spacewatch-page .spacewatch-coronal-insight-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.88fr);
    grid-template-areas:
        "metrics metrics"
        "data messages";
    grid-template-rows: auto minmax(0, 1fr);
    gap: calc(var(--sw-gap-2) / 2);
    min-width: 0;
    height: 100%;
    overflow: hidden;
}

body.spacewatch-page .spacewatch-coronal-metrics { grid-area: metrics; }

body.spacewatch-page .spacewatch-coronal-data {
    grid-area: data;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    min-height: 0;
}

body.spacewatch-page .spacewatch-coronal-metrics,
body.spacewatch-page .spacewatch-coronal-data { padding: 8px; }

body.spacewatch-page .spacewatch-coronal-metrics .spacewatch-recent-timeline-head,
body.spacewatch-page .spacewatch-coronal-data .spacewatch-recent-timeline-head {
    align-items: center;
    padding: 0 2px 7px;
    border-bottom: 1px solid rgba(103, 232, 249, 0.10);
}

body.spacewatch-page .spacewatch-coronal-legend {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    min-width: 0;
    color: var(--sw-faint);
    font-size: 9px;
    font-weight: 600;
}

body.spacewatch-page .spacewatch-coronal-legend span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-coronal-legend i {
    width: 18px;
    height: 8px;
    border: 1px solid #08bcc6;
    border-radius: 2px;
}

body.spacewatch-page .spacewatch-coronal-legend .is-rotated i { border-style: dashed; }

body.spacewatch-page .spacewatch-coronal-legend .is-inferred i {
    border-color: rgba(222, 234, 240, 0.72);
    border-style: dashed;
}

body.spacewatch-page .spacewatch-coronal-timeline { grid-area: timeline; }

body.spacewatch-page .spacewatch-coronal-timeline-note {
    color: var(--sw-faint);
    font-size: 10px;
    line-height: 1.4;
}

body.spacewatch-page .spacewatch-mode-row {
    display: inline-flex;
    align-items: flex-end;
    gap: 4px;
    padding: 0 0 0 10px;
    border-bottom: 2px solid #204c6f;
    overflow: visible;
    isolation: isolate;
}

body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button {
    position: relative;
    z-index: 0;
    min-width: 88px;
    min-height: 40px;
    margin: 0;
    padding: 10px 26px 10px 38px;
    border-radius: 0;
    border: 0;
    background: transparent;
    color: #6a8b9f;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    box-shadow: none;
    text-transform: none;
    user-select: none;
    transition: color 0.3s;
}

body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #11202b;
    clip-path: polygon(25px 0, 100% 0, 100% 100%, 0 100%);
    z-index: -1;
    transition: all 0.3s;
    pointer-events: none;
}

body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button:hover,
body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button.is-active {
    color: #c9e5f5;
}

body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button:hover::before,
body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button.is-active::before {
    background-color: #173347;
}

body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button.is-active {
    z-index: 2;
}

body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button.is-active::after {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: 0;
    background: linear-gradient(to right, #4387ba, #1c4465);
    clip-path: polygon(26px 0, 100% 0, 100% 100%, 0 100%);
    z-index: -2;
    pointer-events: none;
}

body.spacewatch-page .spacewatch-mode-row .spacewatch-mode-button.is-active::before {
    top: 1px;
    left: 1px;
    right: 1px;
    background: linear-gradient(to bottom, #173347, #0d1b26);
    clip-path: polygon(24px 0, 100% 0, 100% 100%, 0 100%);
}

body.spacewatch-page .spacewatch-recent-toolbar {
    display: flex;
    align-items: center;
    gap: var(--sw-gap-2);
    min-width: 0;
}

body.spacewatch-page .spacewatch-layer-toggles {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    flex-wrap: wrap;
}

body.spacewatch-page .spacewatch-layer-toggles[hidden] {
    display: none;
}

body.spacewatch-page .spacewatch-layer-toggle {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 28px;
    padding: 4px 8px;
    border: 1px solid rgba(103, 232, 249, 0.16);
    border-radius: 3px;
    background: rgba(1, 8, 15, 0.58);
    color: rgba(226, 242, 250, 0.72);
    font-size: 11px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
}

body.spacewatch-page .spacewatch-layer-toggle input {
    width: 13px;
    height: 13px;
    margin: 0;
    accent-color: var(--sw-selected);
}

body.spacewatch-page .spacewatch-recent-legend {
    grid-template-columns: repeat(4, minmax(82px, 1fr));
    gap: var(--sw-gap-1);
}

body.spacewatch-page .spacewatch-solar-console .spacewatch-solar-legend {
    grid-template-columns: repeat(2, auto);
    gap: 7px 16px;
}

body.spacewatch-page .spacewatch-legend-item {
    min-height: 26px;
    padding: 5px 7px;
    border: 1px solid rgba(103, 232, 249, 0.10);
    border-radius: 3px;
    background: rgba(255, 255, 255, 0.018);
    color: var(--sw-muted);
    font-size: 10px;
    letter-spacing: 0;
    text-transform: none;
}

body.spacewatch-page .spacewatch-solar-legend .spacewatch-legend-item {
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: rgba(226, 242, 250, 0.72);
    font-size: 10px;
    font-weight: 600;
}

body.spacewatch-page .spacewatch-legend-swatch {
    width: 7px;
    height: 7px;
}

body.spacewatch-page .spacewatch-legend-item.is-sunspot .spacewatch-legend-swatch {
    border: 1px solid var(--legend-color, var(--sw-orange));
    background: #120403;
    box-shadow: 0 0 10px var(--legend-glow, rgba(255, 159, 51, 0.34));
}

body.spacewatch-page .spacewatch-stat-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--sw-gap-1);
}

body.spacewatch-page .spacewatch-insight-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.88fr);
    grid-template-areas:
        "stats stats"
        "events messages";
    grid-template-rows: auto minmax(330px, 1fr);
    gap: var(--sw-gap-2);
    max-height: 100%;
}

body.spacewatch-page .spacewatch-insight-panel .spacewatch-stat-grid {
    grid-area: stats;
}

body.spacewatch-page .spacewatch-stat {
    position: relative;
    min-height: 48px;
    padding: 7px 8px 6px;
    border-radius: 3px;
    border-color: rgba(103, 232, 249, 0.13);
    background:
        linear-gradient(180deg, rgba(34, 211, 238, 0.045), transparent),
        rgba(255, 255, 255, 0.018);
    overflow: hidden;
}

body.spacewatch-page .spacewatch-stat::after {
    content: "";
    position: absolute;
    left: 8px;
    right: 8px;
    bottom: 5px;
    height: 3px;
    border-radius: 999px;
    background:
        linear-gradient(90deg, rgba(34, 211, 238, 0.58), rgba(255, 216, 77, 0.42), transparent),
        repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.34) 0 1px, transparent 1px 8px);
    opacity: 0.55;
}

body.spacewatch-page .spacewatch-stat b {
    color: var(--sw-muted);
    font-size: 10px;
    line-height: 1.1;
    font-weight: 700;
}

body.spacewatch-page .spacewatch-stat span {
    margin-top: 3px;
    color: var(--sw-text);
    font-size: 18px;
    line-height: 1;
    font-weight: 900;
}

body.spacewatch-page .spacewatch-event-list {
    position: relative;
    display: grid;
    gap: var(--sw-gap-1);
    grid-auto-flow: row;
    grid-auto-rows: max-content;
    align-content: start;
    min-height: 0;
    height: 100%;
    max-height: 100%;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 28px 18px;
    scroll-padding-block: 28px;
    scrollbar-width: none;
}

body.spacewatch-page .spacewatch-event-list::-webkit-scrollbar {
    display: none;
}

body.spacewatch-page .spacewatch-coronal-data .spacewatch-event-list {
    padding: 10px 14px;
}

body.spacewatch-page .spacewatch-coronal-data .spacewatch-event-list::before {
    display: none;
}

body.spacewatch-page .spacewatch-coronal-data .spacewatch-event-list.is-two-column {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--sw-gap-1);
}

body.spacewatch-page .spacewatch-coronal-data .spacewatch-event-row {
    min-width: 0;
}

body.spacewatch-page .spacewatch-event-list-shell {
    position: relative;
    grid-area: events;
    min-height: 330px;
    max-height: none;
    height: 100%;
}

body.spacewatch-page .spacewatch-list-scroll {
    position: absolute;
    left: 50%;
    z-index: 5;
    display: grid;
    place-items: center;
    width: 28px;
    height: 20px;
    padding: 0;
    border: 1px solid rgba(103, 232, 249, 0.30);
    border-radius: 3px;
    background: rgba(1, 8, 15, 0.82);
    box-shadow: 0 0 16px rgba(34, 211, 238, 0.12);
    transform: translateX(-50%);
}

body.spacewatch-page .spacewatch-list-scroll[hidden] {
    display: none;
}

body.spacewatch-page .spacewatch-list-scroll.is-up {
    top: 5px;
}

body.spacewatch-page .spacewatch-list-scroll.is-down {
    bottom: 5px;
}

body.spacewatch-page .spacewatch-list-scroll span {
    width: 0;
    height: 0;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
}

body.spacewatch-page .spacewatch-list-scroll.is-up span {
    border-bottom: 7px solid rgba(226, 242, 250, 0.82);
}

body.spacewatch-page .spacewatch-list-scroll.is-down span {
    border-top: 7px solid rgba(226, 242, 250, 0.82);
}

body.spacewatch-page .spacewatch-list-scroll.is-disabled {
    opacity: 0.42;
    pointer-events: none;
}

body.spacewatch-page .spacewatch-event-list::before {
    content: "";
    position: absolute;
    left: 7px;
    top: 3px;
    bottom: 3px;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(34, 211, 238, 0.42), rgba(255, 216, 77, 0.18), transparent);
}

body.spacewatch-page .spacewatch-event-row {
    min-height: 48px;
    border-radius: 4px;
    border-color: rgba(103, 232, 249, 0.12);
    background:
        linear-gradient(90deg, rgba(34, 211, 238, 0.035), transparent 28%),
        rgba(1, 8, 15, 0.76);
    color: var(--sw-muted);
    font-size: 12px;
    line-height: 1.25;
    padding: 8px 9px;
    overflow: visible;
}

body.spacewatch-page .spacewatch-event-row::before {
    left: -15px;
    top: 15px;
    bottom: auto;
    width: 8px;
    height: 8px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 50%;
    background: var(--row-accent, var(--sw-cyan));
    box-shadow: 0 0 12px var(--row-accent, rgba(34, 211, 238, 0.35));
}

body.spacewatch-page .spacewatch-event-row strong {
    color: var(--sw-text);
    font-size: 13px;
    line-height: 1.15;
}

body.spacewatch-page .spacewatch-event-row span {
    color: var(--sw-muted);
    font-size: 11px;
    line-height: 1.2;
}

body.spacewatch-page .spacewatch-event-row.is-coronal-observed {
    border-color: rgba(8, 188, 198, 0.52);
    background:
        linear-gradient(90deg, rgba(3, 86, 94, 0.30), transparent 44%),
        rgba(1, 8, 15, 0.82);
}

body.spacewatch-page .spacewatch-event-row.is-coronal-observed-rotated {
    border-color: rgba(8, 188, 198, 0.46);
    border-style: dashed;
    background:
        linear-gradient(90deg, rgba(3, 86, 94, 0.24), transparent 44%),
        rgba(1, 8, 15, 0.80);
}

body.spacewatch-page .spacewatch-event-row.is-coronal-inferred {
    border-color: rgba(222, 234, 240, 0.34);
    border-style: dashed;
    background:
        linear-gradient(90deg, rgba(222, 234, 240, 0.12), transparent 48%),
        rgba(7, 13, 20, 0.82);
}

body.spacewatch-page .spacewatch-event-row.is-coronal-observed strong,
body.spacewatch-page .spacewatch-event-row.is-coronal-observed-rotated strong {
    color: rgb(8, 188, 198);
}

body.spacewatch-page .spacewatch-event-row.is-coronal-observed span,
body.spacewatch-page .spacewatch-event-row.is-coronal-observed-rotated span {
    color: rgba(95, 219, 224, 0.80);
}

body.spacewatch-page .spacewatch-event-row.is-coronal-inferred strong {
    color: rgb(222, 234, 240);
}

body.spacewatch-page .spacewatch-event-row.is-coronal-inferred span {
    color: rgba(174, 188, 201, 0.88);
}

body.spacewatch-page .spacewatch-event-row.is-flare-row {
    grid-template-columns: minmax(96px, auto) minmax(0, 1fr);
    align-items: center;
    min-height: 30px;
    gap: 8px;
    padding: 5px 8px;
}

body.spacewatch-page .spacewatch-event-row.is-flare-row strong,
body.spacewatch-page .spacewatch-event-row.is-flare-row span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-event-row.is-flare-m strong {
    color: var(--sw-yellow);
}

body.spacewatch-page .spacewatch-event-row.is-flare-x strong {
    color: var(--sw-red);
}

body.spacewatch-page .spacewatch-recent-message-panel {
    grid-area: messages;
    min-height: 330px;
    overflow: hidden;
    border: 1px solid rgba(103, 232, 249, 0.12);
    border-radius: 4px;
    background:
        linear-gradient(90deg, rgba(34, 211, 238, 0.04), transparent 44%),
        rgba(1, 8, 15, 0.70);
}

body.spacewatch-page .spacewatch-recent-message-panel .spacewatch-realtime-messages-surface {
    position: relative;
    min-height: 330px;
    height: 100%;
}

body.spacewatch-page .spacewatch-recent-message-panel .spacewatch-realtime-messages-viewport {
    width: 100%;
}

@media (min-width: 981px) {
    body.spacewatch-page .spacewatch-recent-layout {
        align-items: start;
    }

    body.spacewatch-page .spacewatch-recent-controls {
        height: var(--spacewatch-recent-side-height, 392px);
        min-height: 0;
        max-height: var(--spacewatch-recent-side-height, 392px);
        overflow: hidden;
    }

    body.spacewatch-page .spacewatch-insight-panel {
        height: 100%;
        min-height: 0;
        grid-template-rows: auto minmax(0, 1fr);
    }

    body.spacewatch-page .spacewatch-event-list-shell,
    body.spacewatch-page .spacewatch-recent-message-panel,
    body.spacewatch-page .spacewatch-recent-message-panel .spacewatch-realtime-messages-surface,
    body.spacewatch-page .spacewatch-event-list,
    body.spacewatch-page .spacewatch-recent-message-panel .spacewatch-realtime-messages-viewport {
        min-height: 0;
        max-height: 100%;
        height: 100%;
    }

    body.spacewatch-page .spacewatch-event-list-shell,
    body.spacewatch-page .spacewatch-recent-message-panel {
        overflow: hidden;
    }
}

body.spacewatch-page .spacewatch-recent-message-title {
    padding: 7px 9px 5px;
    border-bottom: 1px solid rgba(103, 232, 249, 0.10);
    color: rgba(226, 242, 250, 0.76);
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

body.spacewatch-page .spacewatch-recent-message-list {
    display: grid;
    gap: 0;
    max-height: 100%;
    height: 100%;
    overflow: hidden;
}

body.spacewatch-page .spacewatch-recent-message-row {
    position: relative;
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
    padding: 8px 10px 8px 18px;
    border-bottom: 1px solid rgba(103, 232, 249, 0.055);
    color: rgba(255, 255, 255, 0.70);
    font-size: 11px;
    font-weight: 300;
    line-height: 1.48;
}

body.spacewatch-page .spacewatch-recent-message-row time {
    color: rgba(143, 196, 255, 0.68);
    font-size: 10px;
    font-weight: 300;
}

body.spacewatch-page .spacewatch-recent-message-row span {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

body.spacewatch-page .spacewatch-message-stream {
    position: relative;
    padding-left: 12px;
}

body.spacewatch-page .spacewatch-message-stream::before {
    content: "";
    position: absolute;
    left: 11px;
    top: 10px;
    bottom: 10px;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(34, 211, 238, 0.46), rgba(255, 159, 51, 0.32), transparent);
}

body.spacewatch-page .spacewatch-message-stream .spacewatch-recent-message-row::before {
    content: "";
    position: absolute;
    left: -5px;
    top: 13px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.42);
    background: rgba(34, 211, 238, 0.60);
    box-shadow: 0 0 12px rgba(34, 211, 238, 0.30);
}

body.spacewatch-page .spacewatch-recent-message-empty {
    display: grid;
    min-height: 104px;
    place-items: center;
    padding: 12px;
    color: var(--sw-faint);
    font-size: 11px;
}

body.spacewatch-page .spacewatch-region-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 6px;
}

body.spacewatch-page .spacewatch-region-meta em {
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    padding: 2px 6px;
    border: 1px solid rgba(103, 232, 249, 0.14);
    border-radius: 3px;
    background: rgba(255, 255, 255, 0.025);
    font-size: 10px;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
}

body.spacewatch-page .spacewatch-region-meta .is-complex-low,
body.spacewatch-page .spacewatch-region-meta .is-risk-low {
    color: rgba(125, 255, 184, 0.84);
}

body.spacewatch-page .spacewatch-region-meta .is-complex-moderate,
body.spacewatch-page .spacewatch-region-meta .is-risk-moderate {
    color: rgba(255, 216, 77, 0.90);
}

body.spacewatch-page .spacewatch-region-meta .is-complex-high,
body.spacewatch-page .spacewatch-region-meta .is-risk-high {
    color: rgba(255, 77, 109, 0.92);
}

body.spacewatch-page .spacewatch-event-row.is-active {
    border-color: rgba(163, 255, 95, 0.68);
    background:
        linear-gradient(90deg, rgba(163, 255, 95, 0.075), transparent 34%),
        rgba(1, 8, 15, 0.86);
}

body.spacewatch-page .spacewatch-event-row.has-explanation::after {
    content: "i";
    position: absolute;
    right: 8px;
    top: 8px;
    display: grid;
    place-items: center;
    width: 16px;
    height: 16px;
    border: 1px solid rgba(103, 232, 249, 0.34);
    border-radius: 50%;
    color: rgba(103, 232, 249, 0.82);
    font: 700 10px/1 system-ui, sans-serif;
}

body.spacewatch-page .spacewatch-data-explanation { height:100%; min-height:0; display:grid; grid-template-rows:auto minmax(0, 1fr); }
body.spacewatch-page .spacewatch-data-explanation-body { min-height:0; display:grid; align-content:start; gap:10px; padding:18px; overflow-y:auto; overflow-x:hidden; scrollbar-gutter:stable; user-select:text; -webkit-user-select:text; }
body.spacewatch-page .spacewatch-data-explanation-body strong { color:var(--sw-text); font-size:15px; }
body.spacewatch-page .spacewatch-data-explanation-body span { color:var(--sw-cyan); font-size:10px; }
body.spacewatch-page .spacewatch-data-explanation-body p { margin:0; color:rgba(226,242,250,.76); font-size:12px; line-height:1.7; white-space:pre-wrap; }
body.spacewatch-page .spacewatch-copy-explanation { justify-self:start; min-height:30px; margin:2px 0 0; padding:5px 10px; border:1px solid rgba(34,211,238,.34); border-radius:3px; background:rgba(34,211,238,.08); color:var(--sw-cyan); font-size:11px; line-height:1.2; }
body.spacewatch-page .spacewatch-copy-explanation:hover,
body.spacewatch-page .spacewatch-copy-explanation:focus-visible { border-color:rgba(34,211,238,.72); background:rgba(34,211,238,.14); }
body.spacewatch-page .spacewatch-copy-status { min-height:14px; color:rgba(226,242,250,.68); }

body.spacewatch-page .spacewatch-table-wrap {
    margin-top: 12px;
}

body.spacewatch-page .spacewatch-live-metric-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

body.spacewatch-page .spacewatch-live-metric-card {
    position: relative;
    min-width: 0;
    min-height: 330px;
    overflow: hidden;
    border: 1px solid rgba(103, 232, 249, 0.18);
    border-radius: 6px;
    background:
        linear-gradient(180deg, rgba(34, 211, 238, 0.055), transparent 42%),
        repeating-linear-gradient(90deg, transparent 0 32px, rgba(103, 232, 249, 0.026) 32px 33px),
        rgba(1, 8, 15, 0.86);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.024);
}

body.spacewatch-page .spacewatch-live-metric-card::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 9px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(34, 211, 238, 0.72), rgba(255, 216, 77, 0.46), transparent);
    opacity: 0.50;
    pointer-events: none;
}

body.spacewatch-page .spacewatch-live-metric-head {
    display: grid;
    grid-template-columns: minmax(170px, 0.92fr) minmax(260px, 1.08fr);
    align-items: stretch;
    min-height: 70px;
    border-bottom: 1px solid rgba(103, 232, 249, 0.13);
}

body.spacewatch-page .spacewatch-live-metric-title {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 13px 12px;
}

body.spacewatch-page .spacewatch-live-metric-title strong {
    min-width: 0;
    overflow: hidden;
    color: rgba(241, 247, 255, 0.96);
    font-size: 15px;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-live-metric-readouts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
}

body.spacewatch-page .spacewatch-live-metric-readouts span {
    display: grid;
    align-content: center;
    gap: 6px;
    min-width: 0;
    padding: 10px 12px;
    border-left: 1px solid rgba(103, 232, 249, 0.10);
}

body.spacewatch-page .spacewatch-live-metric-readouts b {
    overflow: hidden;
    color: rgba(143, 196, 255, 0.68);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-live-metric-readouts em {
    overflow: hidden;
    color: rgba(241, 247, 255, 0.88);
    font-size: 14px;
    font-style: normal;
    font-weight: 800;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-live-metric-chart {
    padding: 8px 10px 14px;
}

body.spacewatch-page .spacewatch-inline-metric-chart {
    display: block;
    width: 100%;
    height: auto;
    min-height: 236px;
}

body.spacewatch-page .spacewatch-inline-metric-chart .pd-full-zone {
    opacity: 0.22;
}

body.spacewatch-page .spacewatch-inline-metric-chart .pd-zone-label {
    fill: rgba(241, 247, 255, 0.64);
    font-size: 12px;
}

body.spacewatch-page .spacewatch-inline-metric-chart .pd-axis-text {
    fill: rgba(204, 236, 238, 0.70);
    font-size: 11px;
}

body.spacewatch-page .spacewatch-inline-metric-chart .pd-axis-line {
    stroke: rgba(204, 236, 238, 0.18);
}

body.spacewatch-page .spacewatch-inline-metric-chart .pd-plot-border {
    stroke: rgba(204, 236, 238, 0.32);
}

body.spacewatch-page .spacewatch-metric-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

body.spacewatch-page .spacewatch-metric-data-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 76px;
    grid-template-rows: auto 1fr;
    gap: 8px 10px;
    min-height: 126px;
    padding: 10px;
    overflow: hidden;
    border: 1px solid rgba(103, 232, 249, 0.14);
    border-radius: 5px;
    background:
        linear-gradient(135deg, rgba(34, 211, 238, 0.065), transparent 48%),
        rgba(1, 8, 15, 0.78);
}

body.spacewatch-page .spacewatch-metric-data-card::after {
    content: "";
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 7px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--sw-cyan), rgba(255, 216, 77, 0.45), transparent);
    opacity: 0.42;
}

body.spacewatch-page .spacewatch-metric-data-head {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

body.spacewatch-page .spacewatch-metric-data-head strong {
    min-width: 0;
    overflow: hidden;
    color: rgba(241, 247, 255, 0.96);
    font-size: 12px;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-metric-data-head em {
    color: rgba(190, 210, 225, 0.62);
    font-size: 10px;
    font-style: normal;
    line-height: 1.1;
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-metric-data-table {
    width: 100%;
    border-collapse: collapse;
    background: transparent !important;
}

body.spacewatch-page .spacewatch-metric-data-table tr,
body.spacewatch-page .spacewatch-metric-data-table th,
body.spacewatch-page .spacewatch-metric-data-table td {
    background: transparent !important;
    box-shadow: none !important;
}

body.spacewatch-page .spacewatch-metric-data-table th,
body.spacewatch-page .spacewatch-metric-data-table td {
    padding: 4px 0;
    border-bottom: 1px solid rgba(103, 232, 249, 0.08);
    color: rgba(226, 242, 250, 0.72);
    font-size: 11px;
    line-height: 1.15;
}

body.spacewatch-page .spacewatch-metric-data-table th {
    width: 38px;
    color: rgba(143, 196, 255, 0.66);
    font-weight: 600;
    text-align: left;
}

body.spacewatch-page .spacewatch-metric-data-table td {
    color: rgba(241, 247, 255, 0.88);
    font-weight: 700;
    text-align: right;
}

body.spacewatch-page .spacewatch-metric-data-card .spacewatch-mini-chart-button {
    align-self: stretch;
    justify-self: stretch;
    width: 76px;
    height: auto;
    min-height: 70px;
    margin: 0;
    padding: 3px;
    border-color: rgba(103, 232, 249, 0.18);
    background: rgba(0, 10, 18, 0.46);
}

body.spacewatch-page .spacewatch-metric-data-card .spacewatch-mini-chart-button svg {
    width: 100%;
    height: 100%;
}

body.spacewatch-page .spacewatch-coronal-console {
    min-height: 500px;
}

body.spacewatch-page .spacewatch-coronal-sun {
    width: min(100%, 500px);
    filter: drop-shadow(0 0 20px rgba(6, 182, 212, 0.34)) drop-shadow(0 18px 40px rgba(0, 0, 0, 0.42));
}

body.spacewatch-page .spacewatch-coronal-reticle {
    opacity: 0.30;
}

body.spacewatch-page .spacewatch-coronal-caption {
    color: var(--sw-muted);
    font-size: 10px;
    text-transform: none;
}

body.spacewatch-page .spacewatch-coronal-announcements {
    grid-area: messages;
    display: grid;
    gap: 8px;
}

body.spacewatch-page .spacewatch-coronal-announcements.spacewatch-recent-message-panel {
    width: 100%;
    min-height: 0;
    max-height: none;
    justify-self: stretch;
}

body.spacewatch-page .spacewatch-coronal-announcements.spacewatch-recent-message-panel .spacewatch-realtime-messages-surface {
    height: 100%;
    min-height: 0;
    max-height: none;
}

body.spacewatch-page .spacewatch-coronal-announcements.spacewatch-recent-message-panel .spacewatch-realtime-messages-viewport {
    width: 100%;
}

body.spacewatch-page .spacewatch-coronal-announcements[hidden] {
    display: none;
}

body.spacewatch-page .spacewatch-coronal-announcements .spacewatch-clip {
    padding: 12px 14px;
    border-color: rgba(103, 232, 249, 0.24);
    border-radius: var(--sw-radius);
    background:
        linear-gradient(135deg, rgba(34, 211, 238, 0.08), transparent 58%),
        rgba(1, 8, 15, 0.86);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
}

body.spacewatch-page .spacewatch-coronal-announcements .spacewatch-clip strong {
    color: var(--sw-text);
    font-size: 12px;
}

body.spacewatch-page .spacewatch-coronal-announcements .spacewatch-clip span {
    color: var(--sw-muted);
    font-size: 11px;
    line-height: 1.55;
}

body.spacewatch-page .spacewatch-clips {
    display: none;
}

body.spacewatch-page .spacewatch-kp-console {
    --kp-zone-color: #28f0ff;
    --kp-zone-glow: rgba(40, 240, 255, 0.46);
    position: relative;
    overflow: hidden;
    border-color: rgba(59, 130, 246, 0.28);
    border-radius: var(--sw-radius);
    background:
        radial-gradient(circle at 18% 44%, rgba(34, 211, 238, 0.16), transparent 25%),
        radial-gradient(circle at 80% 40%, rgba(141, 220, 75, 0.14), transparent 28%),
        radial-gradient(circle at 50% 48%, rgba(10, 18, 32, 0.74), rgba(2, 8, 15, 0.96) 66%),
        linear-gradient(90deg, rgba(11, 42, 62, 0.42), rgba(5, 11, 18, 0.86) 38%, rgba(5, 22, 18, 0.28) 100%);
    box-shadow:
        inset 0 0 0 1px rgba(255, 255, 255, 0.028),
        0 18px 48px rgba(0, 0, 0, 0.28);
    backdrop-filter: blur(14px) saturate(1.18);
    -webkit-backdrop-filter: blur(14px) saturate(1.18);
}

body.spacewatch-page .spacewatch-kp-console > :not(.circuit-bg__scene) {
    position: relative;
    z-index: 1;
}

body.spacewatch-page .spacewatch-kp-console .circuit-bg__scene {
    opacity: 0.76;
    mix-blend-mode: screen;
}

body.spacewatch-page .spacewatch-circuit-surface {
    position: relative;
    display: flex;
    min-height: 100%;
    overflow: hidden;
    border-radius: inherit;
    background:
        linear-gradient(135deg, rgba(34, 211, 238, 0.10), transparent 36%),
        linear-gradient(90deg, rgba(9, 47, 67, 0.28), rgba(7, 16, 26, 0.82) 38%, rgba(8, 33, 22, 0.22) 100%);
}

body.spacewatch-page .spacewatch-circuit-surface > :not(.circuit-bg__scene) {
    position: relative;
    z-index: 1;
}

body.spacewatch-page .spacewatch-kp-console-head {
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

body.spacewatch-page .spacewatch-kp-console-title {
    display: none;
}

body.spacewatch-page .spacewatch-kp-console-body {
    display: grid;
    grid-template-columns: minmax(138px, 0.66fr) minmax(340px, 1.05fr) minmax(230px, 0.82fr);
    grid-template-areas:
        "f107 compass messages"
        "bar bar bar";
    align-items: center;
    gap: 22px clamp(18px, 3vw, 34px);
    padding: 54px clamp(16px, 2.3vw, 30px) 24px;
}

body.spacewatch-page .spacewatch-compass-container {
    display: contents;
}

body.spacewatch-page .spacewatch-kp-console .spacewatch-compass {
    grid-area: compass;
    justify-self: center;
    width: min(410px, 100%);
    border-color: rgba(148, 163, 184, 0.14);
    background:
        radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--core-color, #28f0ff) 18%, transparent), transparent 24%),
        radial-gradient(circle at 50% 50%, rgba(7, 15, 28, 0.35), rgba(0, 0, 0, 0.82) 68%),
        repeating-conic-gradient(from 0deg, rgba(255, 255, 255, 0.12) 0deg 0.75deg, transparent 0.75deg 40deg);
    box-shadow:
        0 20px 54px rgba(0, 0, 0, 0.46),
        0 0 42px color-mix(in srgb, var(--core-color, #28f0ff) 18%, transparent),
        inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

body.spacewatch-page .spacewatch-kp-console .spacewatch-compass::before {
    border-color: color-mix(in srgb, var(--core-color, #28f0ff) 16%, rgba(255, 255, 255, 0.08));
}

body.spacewatch-page .spacewatch-kp-console .spacewatch-compass::after {
    background:
        radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--core-color, #28f0ff) 16%, transparent), transparent 38%),
        conic-gradient(from 180deg, transparent, color-mix(in srgb, var(--core-color, #28f0ff) 10%, transparent), transparent);
}

body.spacewatch-page .spacewatch-kp-rose {
    background:
        linear-gradient(to right, transparent 49.5%, color-mix(in srgb, var(--core-color, #28f0ff) 32%, transparent) 50%, transparent 50.5%),
        linear-gradient(to bottom, transparent 49.5%, color-mix(in srgb, var(--core-color, #28f0ff) 32%, transparent) 50%, transparent 50.5%),
        radial-gradient(circle at 50% 50%, transparent 0 47%, color-mix(in srgb, var(--core-color, #28f0ff) 16%, transparent) 48%, transparent 49%);
}

body.spacewatch-page .spacewatch-kp-glow {
    background: radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--core-color, #28f0ff) 22%, transparent), transparent 66%);
}

body.spacewatch-page .spacewatch-kp-console .spacewatch-needle {
    filter: drop-shadow(0 0 12px var(--kp-zone-glow));
}

body.spacewatch-page .spacewatch-kp-console .spacewatch-needle::before {
    background: linear-gradient(90deg, transparent, var(--kp-zone-color), color-mix(in srgb, var(--kp-zone-color) 62%, #ffffff));
    box-shadow: 0 0 14px var(--kp-zone-glow);
}

body.spacewatch-page .spacewatch-kp-console .spacewatch-needle::after {
    background: var(--kp-zone-color);
    filter: drop-shadow(0 0 10px var(--kp-zone-glow));
}

body.spacewatch-page .spacewatch-needle-core {
    background:
        radial-gradient(circle at 35% 30%, rgba(255, 255, 255, 0.92), var(--core-color, #28f0ff) 30%, rgba(0, 0, 0, 0) 75%),
        rgba(5, 12, 22, 0.94);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.16), 0 0 18px var(--core-glow, rgba(40, 240, 255, 0.44));
}

body.spacewatch-page .spacewatch-f107-widget {
    grid-area: f107;
    position: relative;
    display: flex;
    align-self: center;
    min-height: 218px;
    overflow: hidden;
    border: 0;
    padding: 0;
    border-radius: 8px;
    background: transparent;
    box-shadow: none;
}

body.spacewatch-page .spacewatch-f107-widget > .spacewatch-f107-surface,
body.spacewatch-page [data-spacewatch="realtimeMessagesWidget"] > .spacewatch-realtime-messages-surface {
    flex: 1 1 auto;
    min-height: 100%;
}

body.spacewatch-page .spacewatch-f107-surface {
    padding: 14px 12px 12px;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.spacewatch-page .spacewatch-f107-surface .spacewatch-f107-head,
body.spacewatch-page .spacewatch-f107-surface .spacewatch-f107-chart {
    position: relative;
    z-index: 1;
}

body.spacewatch-page .spacewatch-f107-head {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 4px 8px;
    align-items: end;
    margin-bottom: 10px;
    color: rgba(226, 242, 250, 0.74);
}

body.spacewatch-page .spacewatch-f107-head span {
    color: rgba(226, 242, 250, 0.58);
    font-size: 20px;
    font-weight: 800;
    line-height: 1;
}

body.spacewatch-page .spacewatch-f107-head sub {
    font-size: 10px;
    vertical-align: baseline;
}

body.spacewatch-page .spacewatch-f107-head b {
    color: rgba(241, 247, 255, 0.96);
    font-size: 18px;
    line-height: 1;
    text-shadow: 0 0 14px rgba(168, 85, 247, 0.24);
}

body.spacewatch-page .spacewatch-f107-head em {
    grid-column: 1 / -1;
    width: max-content;
    max-width: 100%;
    color: var(--f107-color, #9d5cff);
    font-size: 11px;
    font-style: normal;
    font-weight: 800;
    line-height: 1;
}

body.spacewatch-page .spacewatch-f107-chart {
    display: flex;
    align-items: end;
    justify-content: center;
    gap: 7px;
    height: 132px;
    padding: 8px 4px 0;
}

body.spacewatch-page .f107-bar-container {
    position: relative;
    display: grid;
    grid-template-rows: minmax(0, 1fr) 16px;
    align-items: end;
    justify-items: center;
    min-width: 14px;
    height: 100%;
}

body.spacewatch-page .f107-bar-container::before {
    content: "";
    position: absolute;
    left: -10px;
    right: -10px;
    bottom: calc(var(--f107-height, 30%) + 2px);
    height: 26px;
    z-index: 5;
}

body.spacewatch-page .f107-bar {
    width: 12px;
    height: var(--f107-height, 30%);
    min-height: 12px;
    border-radius: 3px 3px 0 0;
    background: linear-gradient(180deg, color-mix(in srgb, var(--f107-color, #9d5cff) 70%, #ffffff), var(--f107-color, #9d5cff));
    box-shadow: 0 0 12px color-mix(in srgb, var(--f107-color, #9d5cff) 34%, transparent);
}

body.spacewatch-page .f107-bar-container.is-placeholder .f107-bar {
    opacity: 0.48;
    background:
        repeating-linear-gradient(180deg, rgba(255, 255, 255, 0.26) 0 2px, transparent 2px 5px),
        linear-gradient(180deg, color-mix(in srgb, var(--f107-color, #9d5cff) 70%, #ffffff), var(--f107-color, #9d5cff));
}

body.spacewatch-page .f107-date {
    color: rgba(226, 242, 250, 0.62);
    font-size: 10px;
    line-height: 1;
}

body.spacewatch-page .f107-bar-tooltip {
    position: absolute;
    left: 50%;
    bottom: calc(var(--f107-height, 30%) + 24px);
    z-index: 6;
    width: max-content;
    max-width: 170px;
    padding: 5px 7px;
    border: 1px solid rgba(125, 211, 252, 0.22);
    border-radius: 3px;
    background: rgba(4, 13, 24, 0.94);
    color: rgba(241, 247, 255, 0.92);
    font-size: 10px;
    line-height: 1.2;
    opacity: 0;
    pointer-events: auto;
    transform: translate(-50%, 4px);
    transition: opacity 140ms ease, transform 140ms ease;
}

body.spacewatch-page .f107-bar-container:hover .f107-bar-tooltip {
    opacity: 1;
    transform: translate(-50%, 0);
}

body.spacewatch-page [data-spacewatch="realtimeMessagesWidget"] {
    grid-area: messages;
    position: relative;
    display: flex;
    align-self: center;
    min-height: 220px;
    max-height: 262px;
    overflow: hidden;
    padding: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

body.spacewatch-page [data-spacewatch="realtimeMessagesWidget"]::-webkit-scrollbar {
    display: none;
}

body.spacewatch-page .spacewatch-realtime-messages-surface {
    padding: 14px 12px 18px 30px;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

body.spacewatch-page .spacewatch-realtime-messages-surface::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 18px;
    bottom: 10px;
    width: 1px;
    background: linear-gradient(180deg, rgba(80, 110, 180, 0.42), rgba(80, 110, 180, 0.32) 76%, transparent);
    pointer-events: none;
}

body.spacewatch-page .spacewatch-realtime-messages-surface::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 42px;
    background: linear-gradient(180deg, transparent, rgba(2, 8, 16, 0.34) 72%, rgba(2, 8, 16, 0.56));
    pointer-events: none;
}

body.spacewatch-page .spacewatch-realtime-messages-list {
    position: relative;
    display: grid;
    gap: 12px;
    padding-bottom: 16px;
}

body.spacewatch-page .spacewatch-msg-item {
    position: relative;
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 8px;
    min-height: 50px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: rgba(226, 242, 250, 0.66);
}

body.spacewatch-page .spacewatch-msg-dot {
    position: absolute;
    left: -16px;
    top: 7px;
    width: 8px;
    height: 8px;
    border: 1px solid rgba(203, 213, 225, 0.52);
    border-radius: 50%;
    background: rgba(148, 163, 184, 0.90);
    box-shadow: 0 0 12px rgba(96, 165, 250, 0.34);
}

body.spacewatch-page .spacewatch-msg-item:nth-child(n + 2) .spacewatch-msg-dot {
    border-color: rgba(255, 182, 109, 0.42);
    background: rgba(194, 101, 42, 0.92);
    box-shadow: 0 0 12px rgba(255, 159, 0, 0.22);
}

body.spacewatch-page .spacewatch-msg-time {
    color: rgba(143, 196, 255, 0.92);
    font-size: 10px;
    line-height: 1.25;
}

body.spacewatch-page .spacewatch-msg-content {
    min-width: 0;
}

body.spacewatch-page .spacewatch-msg-content strong,
body.spacewatch-page .spacewatch-msg-empty strong {
    display: block;
    color: rgba(241, 247, 255, 0.92);
    font-size: 12px;
    line-height: 1.35;
}

body.spacewatch-page .spacewatch-msg-content span,
body.spacewatch-page .spacewatch-msg-empty span {
    display: -webkit-box;
    margin-top: 5px;
    overflow: hidden;
    color: rgba(190, 210, 225, 0.66);
    font-size: 11px;
    line-height: 1.45;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

body.spacewatch-page .spacewatch-msg-empty {
    position: relative;
    display: flex;
    min-height: 182px;
    flex-direction: column;
    justify-content: center;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    padding: 10px 8px 10px 2px;
}

body.spacewatch-page .spacewatch-f107-surface {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 8px;
    padding: 10px 8px 10px 6px;
}

body.spacewatch-page .spacewatch-f107-head {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 5px;
    margin: 0;
    padding-left: 2px;
}

body.spacewatch-page .spacewatch-f107-head span {
    font-size: 17px;
    letter-spacing: 0;
}

body.spacewatch-page .spacewatch-f107-head b {
    font-size: 18px;
}

body.spacewatch-page .spacewatch-f107-head em {
    width: auto;
    color: var(--f107-color, #9d5cff);
    font-size: 10px;
}

body.spacewatch-page .spacewatch-f107-chart-wrap {
    position: relative;
    min-width: 0;
    min-height: 148px;
    padding: 8px 24px 0 4px;
}

body.spacewatch-page .spacewatch-f107-chart {
    position: relative;
    z-index: 2;
    height: 148px;
    padding: 8px 0 0;
}

body.spacewatch-page .spacewatch-f107-axis {
    position: absolute;
    inset: 8px 0 18px 0;
    z-index: 1;
    pointer-events: none;
}

body.spacewatch-page .spacewatch-f107-axis-line {
    position: absolute;
    left: 0;
    right: 18px;
    top: var(--f107-axis-y, 100%);
    height: 1px;
    background: linear-gradient(90deg, rgba(255, 77, 109, 0.82), rgba(255, 77, 109, 0.46), transparent);
    box-shadow: 0 0 8px rgba(255, 77, 109, 0.22);
}

body.spacewatch-page .spacewatch-f107-axis-line:first-child {
    background: linear-gradient(90deg, rgba(77, 129, 255, 0.74), rgba(77, 129, 255, 0.36), transparent);
}

body.spacewatch-page .spacewatch-f107-axis-line:nth-child(2) {
    background: linear-gradient(90deg, rgba(255, 216, 77, 0.76), rgba(255, 216, 77, 0.40), transparent);
}

body.spacewatch-page .spacewatch-f107-axis-line em {
    position: absolute;
    right: -20px;
    top: -5px;
    color: rgba(241, 247, 255, 0.74);
    font-size: 9px;
    font-style: normal;
    line-height: 1;
}

body.spacewatch-page .spacewatch-f107-band-label {
    position: absolute;
    right: 0;
    top: var(--f107-band-y, 50%);
    color: rgba(226, 242, 250, 0.58);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    transform: translateY(-50%);
}

body.spacewatch-page .spacewatch-f107-band-label.is-low {
    color: rgba(86, 166, 255, 0.72);
}

body.spacewatch-page .spacewatch-f107-band-label.is-mid {
    color: rgba(255, 216, 77, 0.76);
}

body.spacewatch-page .spacewatch-f107-band-label.is-high {
    color: rgba(255, 77, 109, 0.78);
}

body.spacewatch-page .spacewatch-realtime-messages-surface {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    padding: 12px 16px 12px 24px;
}

body.spacewatch-page .spacewatch-realtime-messages-surface::before {
    top: 48px;
    bottom: 18px;
}

body.spacewatch-page .spacewatch-realtime-messages-surface::after {
    display: none;
}

body.spacewatch-page .spacewatch-msg-head {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 22px auto minmax(36px, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 28px;
    margin-bottom: 8px;
    color: rgba(241, 247, 255, 0.88);
    font-size: 12px;
    font-weight: 700;
}

body.spacewatch-page .spacewatch-msg-icon {
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    border: 1px solid rgba(103, 232, 249, 0.26);
    border-radius: 4px;
    background: rgba(3, 18, 30, 0.58);
    color: var(--sw-cyan);
}

body.spacewatch-page .spacewatch-msg-icon svg {
    width: 15px;
    height: 15px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.spacewatch-page .spacewatch-msg-head i {
    position: relative;
    height: 1px;
    background: linear-gradient(90deg, rgba(103, 232, 249, 0.52), transparent);
}

body.spacewatch-page .spacewatch-msg-head i::before,
body.spacewatch-page .spacewatch-msg-head i::after {
    content: "";
    position: absolute;
    top: -2px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: rgba(125, 255, 184, 0.78);
    box-shadow: 0 0 9px rgba(125, 255, 184, 0.44);
}

body.spacewatch-page .spacewatch-msg-head i::before {
    left: 6px;
}

body.spacewatch-page .spacewatch-msg-head i::after {
    left: 20px;
    background: rgba(103, 232, 249, 0.76);
}

body.spacewatch-page .spacewatch-realtime-messages-viewport {
    position: relative;
    z-index: 2;
    width: 90%;
    min-height: 0;
    overflow: hidden auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

body.spacewatch-page .spacewatch-realtime-messages-viewport::-webkit-scrollbar {
    display: none;
}

body.spacewatch-page .spacewatch-realtime-messages-list {
    gap: 10px;
    padding: 4px 0 8px;
}

body.spacewatch-page .spacewatch-msg-item {
    grid-template-columns: 48px minmax(0, 1fr);
    min-height: 46px;
    color: rgba(255, 255, 255, 0.70);
}

body.spacewatch-page .spacewatch-msg-time {
    color: rgba(143, 196, 255, 0.70);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.45;
}

body.spacewatch-page .spacewatch-msg-copy {
    margin: 0;
    overflow: visible;
    color: rgba(255, 255, 255, 0.70);
    font-size: 12px;
    font-weight: 300;
    line-height: 1.55;
}

body.spacewatch-page .spacewatch-msg-empty {
    min-height: 140px;
    padding: 0 4px 8px 2px;
}

body.spacewatch-page .spacewatch-msg-scroll {
    position: absolute;
    left: 50%;
    z-index: 4;
    width: 34px;
    height: 18px;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(103, 232, 249, 0.34);
    border-radius: 4px;
    background: rgba(1, 9, 17, 0.76);
    box-shadow: 0 0 14px rgba(34, 211, 238, 0.18);
    cursor: pointer;
    transform: translateX(-50%);
}

body.spacewatch-page .spacewatch-msg-scroll.is-up {
    top: 43px;
}

body.spacewatch-page .spacewatch-msg-scroll.is-down {
    bottom: 7px;
}

body.spacewatch-page .spacewatch-msg-scroll span {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    transform: translate(-50%, -50%);
}

body.spacewatch-page .spacewatch-msg-scroll.is-up span {
    border-bottom: 7px solid rgba(226, 242, 250, 0.86);
}

body.spacewatch-page .spacewatch-msg-scroll.is-down span {
    border-top: 7px solid rgba(226, 242, 250, 0.86);
}

body.spacewatch-page .spacewatch-msg-scroll.is-disabled {
    opacity: 0.38;
}

body.spacewatch-page .spacewatch-kp-bar {
    grid-area: bar;
    width: 100%;
    margin: 4px 8px 0;
    padding: 18px 18px 22px;
    border-color: rgba(148, 163, 184, 0.16);
    border-radius: 6px;
    background:
        linear-gradient(180deg, rgba(148, 163, 184, 0.07), rgba(15, 23, 42, 0.12)),
        rgba(2, 8, 16, 0.38);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.024);
}

body.spacewatch-page .spacewatch-kp-track {
    height: 18px;
    overflow: visible;
    background: rgba(1, 6, 12, 0.56);
}

body.spacewatch-page .spacewatch-kp-pointer {
    width: 2px;
    height: 34px;
    background: var(--pointer-color, var(--kp-zone-color));
    box-shadow: 0 0 16px var(--kp-zone-glow), 0 0 0 1px rgba(255, 255, 255, 0.16);
}

body.spacewatch-page .spacewatch-pigeon-icon {
    position: absolute;
    left: 50%;
    bottom: 24px;
    display: grid;
    place-items: center;
    width: 36px;
    height: 27px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 3px;
    background: rgba(1, 6, 12, 0.74);
    box-shadow: 0 0 14px rgba(0, 0, 0, 0.34), 0 0 18px var(--kp-zone-glow);
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 8px) scale(0.78);
}

body.spacewatch-page .spacewatch-pigeon-icon::before {
    content: "🕊";
    font-size: 22px;
    line-height: 1;
    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.42));
}

body.spacewatch-page .spacewatch-kp-pointer.is-pigeon-ready .spacewatch-pigeon-icon {
    opacity: 1;
    animation: spacewatchPigeonArrive 980ms cubic-bezier(0.18, 0.84, 0.24, 1) both;
}

@keyframes spacewatchPigeonArrive {
    0% {
        opacity: 0;
        transform: translate(-72%, 16px) scale(0.68) rotate(-8deg);
    }
    58% {
        opacity: 1;
        transform: translate(-48%, -4px) scale(1.04) rotate(3deg);
    }
    100% {
        opacity: 1;
        transform: translate(-50%, 0) scale(1) rotate(0deg);
    }
}

body.spacewatch-page .spacewatch-pigeon-icon {
    bottom: calc(100% + 8px);
    display: block;
    width: 60px;
    height: 60px;
    border: 0;
    border-radius: 0;
    overflow: visible;
    background: transparent;
    box-shadow: none;
    transform: translate(-50%, 0);
}

body.spacewatch-page .spacewatch-pigeon-icon::before {
    content: none;
}

body.spacewatch-page .spacewatch-kp-pointer.is-pigeon-ready .spacewatch-pigeon-icon {
    animation: none;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird {
    position: absolute;
    inset: 0;
    padding: 4px;
    background: transparent;
    color: #ffffff;
    opacity: 1;
    overflow: visible;
    transition: opacity 0.75s ease;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-fading-out {
    opacity: 0;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-resetting {
    transition: none !important;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-shell {
    display: block;
    width: 52px;
    height: 52px;
    transform-origin: center center;
    will-change: transform;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.42));
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg {
    transform: rotate(-5deg);
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg {
    display: none;
    transform: translateY(-2px) rotate(0deg) scale(0.96);
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg #pigeon-wing-main,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg #pigeon-body,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg #pigeon-tail,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-body,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-tail,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-left-leg,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-right-leg {
    transform-box: fill-box;
    will-change: transform;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg #pigeon-wing-main {
    transform-origin: 16% 9%;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg #pigeon-body,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-body {
    transform-origin: center center;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-svg #pigeon-tail {
    transform-origin: 92% 30%;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-tail {
    transform-origin: 94% 38%;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-left-leg,
body.spacewatch-page .spacewatch-pigeon-icon .pigeon-walk-svg #pigeon-walk-right-leg {
    transform-origin: 50% 12%;
}

body.spacewatch-page .spacewatch-kp-pointer.is-pigeon-ready .pigeon-flight-bird:not(.is-playing) .pigeon-flight-svg #pigeon-wing-main {
    animation: pigeon-wing-idle 0.82s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-kp-pointer.is-pigeon-ready .pigeon-flight-bird:not(.is-playing) .pigeon-flight-svg #pigeon-body {
    animation: pigeon-body-idle 1.64s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-kp-pointer.is-pigeon-ready .pigeon-flight-bird:not(.is-playing) .pigeon-flight-svg #pigeon-tail {
    animation: pigeon-tail-idle 1.64s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-safe .pigeon-flight-shell {
    animation: pigeon-fly-safe 5.2s ease-in-out both;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-basic .pigeon-flight-shell {
    animation: pigeon-fly-basic 4.8s ease-in-out both;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-moderate .pigeon-flight-shell {
    animation: pigeon-fly-moderate 5s ease-in-out both;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-high .pigeon-flight-shell {
    animation: pigeon-fly-high 5s ease-in-out both;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-danger .pigeon-flight-svg {
    display: none;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-danger .pigeon-walk-svg {
    display: block;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-danger .pigeon-flight-shell {
    animation: pigeon-danger-walk 5.2s linear both;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-safe .pigeon-flight-svg #pigeon-wing-main {
    animation: pigeon-wing-fast 0.34s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-basic .pigeon-flight-svg #pigeon-wing-main {
    animation: pigeon-wing-medium 0.48s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-moderate .pigeon-flight-svg #pigeon-wing-main {
    animation: pigeon-wing-slow 0.66s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-high .pigeon-flight-svg #pigeon-wing-main {
    animation: pigeon-wing-short 0.52s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing .pigeon-flight-svg #pigeon-body {
    animation: pigeon-body-pitch 0.58s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing .pigeon-flight-svg #pigeon-tail {
    animation: pigeon-tail-counter 0.58s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-danger .pigeon-walk-svg #pigeon-walk-body {
    animation: pigeon-walk-body 0.82s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-danger .pigeon-walk-svg #pigeon-walk-tail {
    animation: pigeon-walk-tail 0.82s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-danger .pigeon-walk-svg #pigeon-walk-left-leg {
    animation: pigeon-walk-left-leg 0.82s ease-in-out infinite;
}

body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-bird.is-playing.pigeon-state-danger .pigeon-walk-svg #pigeon-walk-right-leg {
    animation: pigeon-walk-right-leg 0.82s ease-in-out infinite;
}

@keyframes pigeon-fly-safe {
    0% { transform: translate3d(0, 0, 0) rotate(-34deg); }
    35% { transform: translate3d(40px, -44px, 0) rotate(-38deg); }
    70% { transform: translate3d(80px, -88px, 0) rotate(-42deg); }
    100% { transform: translate3d(116px, -128px, 0) rotate(-38deg); }
}

@keyframes pigeon-fly-basic {
    0% { transform: translate3d(0, 0, 0) rotate(-10deg); }
    35% { transform: translate3d(36px, -10px, 0) rotate(-13deg); }
    70% { transform: translate3d(76px, -22px, 0) rotate(-16deg); }
    100% { transform: translate3d(116px, -30px, 0) rotate(-14deg); }
}

@keyframes pigeon-fly-moderate {
    0% { transform: translate3d(0, 0, 0) rotate(8deg); }
    35% { transform: translate3d(36px, 2px, 0) rotate(9deg); }
    70% { transform: translate3d(76px, 4px, 0) rotate(10deg); }
    100% { transform: translate3d(116px, 4px, 0) rotate(9deg); }
}

@keyframes pigeon-fly-high {
    0% { transform: translate3d(0, 0, 0) rotate(30deg); }
    35% { transform: translate3d(32px, 40px, 0) rotate(34deg); }
    70% { transform: translate3d(68px, 84px, 0) rotate(39deg); }
    100% { transform: translate3d(104px, 124px, 0) rotate(36deg); }
}

@keyframes pigeon-danger-walk {
    0% { transform: translate3d(0, 0, 0) rotate(0deg) scale(0.94); }
    25% { transform: translate3d(28px, 0, 0) rotate(0deg) scale(0.94); }
    50% { transform: translate3d(60px, 0, 0) rotate(0deg) scale(0.94); }
    75% { transform: translate3d(90px, 0, 0) rotate(0deg) scale(0.94); }
    100% { transform: translate3d(120px, 0, 0) rotate(0deg) scale(0.94); }
}

@keyframes pigeon-wing-idle {
    0%, 100% { transform: rotate(7deg) scaleY(0.98); }
    50% { transform: rotate(-30deg) scaleY(1.02); }
}

@keyframes pigeon-wing-fast {
    0%, 100% { transform: rotate(8deg) scaleY(0.97); }
    50% { transform: rotate(-50deg) scaleY(1.03); }
}

@keyframes pigeon-wing-medium {
    0%, 100% { transform: rotate(8deg) scaleY(0.97); }
    50% { transform: rotate(-38deg) scaleY(1.02); }
}

@keyframes pigeon-wing-slow {
    0%, 100% { transform: rotate(6deg) scaleY(0.98); }
    50% { transform: rotate(-26deg) scaleY(1.01); }
}

@keyframes pigeon-wing-short {
    0%, 100% { transform: rotate(12deg) scaleY(0.96); }
    50% { transform: rotate(-22deg) scaleY(1.01); }
}

@keyframes pigeon-body-pitch {
    0%, 100% { transform: rotate(1deg) translateY(0); }
    50% { transform: rotate(-1.5deg) translateY(-1px); }
}

@keyframes pigeon-body-idle {
    0%, 100% { transform: rotate(0deg) translateY(0); }
    50% { transform: rotate(-0.8deg) translateY(-1px); }
}

@keyframes pigeon-walk-body {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(2px) rotate(1deg); }
}

@keyframes pigeon-tail-counter {
    0%, 100% { transform: rotate(-5deg); }
    50% { transform: rotate(8deg); }
}

@keyframes pigeon-tail-idle {
    0%, 100% { transform: rotate(-3deg); }
    50% { transform: rotate(5deg); }
}

@keyframes pigeon-walk-tail {
    0%, 100% { transform: rotate(-2deg); }
    50% { transform: rotate(4deg); }
}

@keyframes pigeon-walk-left-leg {
    0%, 100% { transform: rotate(-7deg) translateY(0); }
    50% { transform: rotate(11deg) translateY(1px); }
}

@keyframes pigeon-walk-right-leg {
    0%, 100% { transform: rotate(10deg) translateY(1px); }
    50% { transform: rotate(-8deg) translateY(0); }
}

body.spacewatch-page .spacewatch-kp-bar-footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    min-height: 28px;
    padding-top: 10px;
}

body.spacewatch-page .spacewatch-kp-bar-suggestion {
    color: rgba(241, 247, 255, 0.92);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    text-shadow: 0 0 14px var(--kp-zone-glow);
}

body.spacewatch-page .spacewatch-kp-bar-time,
body.spacewatch-page [data-spacewatch="kpTime"] {
    display: inline-flex;
    justify-content: flex-end;
    margin-left: auto;
    color: rgba(190, 210, 225, 0.72);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    text-align: right;
}

body.spacewatch-page .spacewatch-kp-pointer-readout {
    display: block;
    height: 42px;
    margin-top: 8px;
    color: rgba(234, 240, 255, 0.72);
    font-size: 11px;
}

body.spacewatch-page .spacewatch-kp-pointer-label {
    gap: 3px;
    min-width: 126px;
}

body.spacewatch-page .spacewatch-kp-pointer-value {
    color: rgba(241, 247, 255, 0.98);
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    text-shadow: 0 0 12px var(--kp-zone-glow);
}

body.spacewatch-page .spacewatch-kp-pointer-time {
    display: none;
}

body.spacewatch-page .spacewatch-kp-pointer-note {
    color: color-mix(in srgb, var(--kp-readout-color, var(--kp-zone-color)) 72%, #ffffff);
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 0 0 10px var(--kp-zone-glow);
}

body.spacewatch-page .spacewatch-kp-pointer-readout {
    position: relative;
    height: 24px;
    margin: 0 0 6px;
}

body.spacewatch-page .spacewatch-kp-pointer-label {
    position: absolute;
    bottom: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    max-width: min(220px, 46vw);
    padding: 3px 6px;
    border: 1px solid color-mix(in srgb, var(--kp-readout-color, var(--kp-zone-color)) 34%, transparent);
    border-radius: 3px;
    background: rgba(1, 8, 15, 0.70);
    box-shadow: 0 0 12px color-mix(in srgb, var(--kp-readout-color, var(--kp-zone-color)) 24%, transparent);
    white-space: nowrap;
}

body.spacewatch-page .spacewatch-kp-pointer-value {
    font-size: 11px;
}

body.spacewatch-page .spacewatch-kp-pointer-note {
    overflow: hidden;
    font-size: 9px;
    text-overflow: ellipsis;
}

body.spacewatch-page .spacewatch-pigeon-icon {
    pointer-events: auto;
    cursor: pointer;
}

body.spacewatch-page .spacewatch-pigeon-icon:focus-visible {
    outline: 2px solid rgba(255, 216, 77, 0.92);
    outline-offset: 4px;
}

body.spacewatch-page .spacewatch-pigeon-speech {
    position: absolute;
    right: 36px;
    bottom: 42px;
    z-index: 4;
    width: 178px;
    max-width: 46vw;
    padding: 7px 9px;
    border: 1px solid rgba(103, 232, 249, 0.26);
    border-radius: 5px;
    background: rgba(2, 10, 18, 0.88);
    box-shadow: 0 0 18px rgba(34, 211, 238, 0.18);
    color: rgba(241, 247, 255, 0.86);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.35;
    opacity: 0;
    pointer-events: none;
    transform: translateY(5px);
    transition: opacity 160ms ease, transform 160ms ease;
}

body.spacewatch-page .spacewatch-pigeon-speech::after {
    content: "";
    position: absolute;
    right: 16px;
    bottom: -6px;
    width: 10px;
    height: 10px;
    border-right: 1px solid rgba(103, 232, 249, 0.26);
    border-bottom: 1px solid rgba(103, 232, 249, 0.26);
    background: rgba(2, 10, 18, 0.88);
    transform: rotate(45deg);
}

body.spacewatch-page .spacewatch-pigeon-icon.is-speaking .spacewatch-pigeon-speech {
    opacity: 1;
    transform: translateY(0);
}

@media (max-width: 1120px) {
    body.spacewatch-page .spacewatch-kp-console-body {
        grid-template-columns: minmax(120px, 0.7fr) minmax(300px, 1fr) minmax(200px, 0.78fr);
        gap: 18px;
    }

    body.spacewatch-page .spacewatch-kp-console .spacewatch-compass {
        width: min(360px, 100%);
    }
}

@media (max-width: 768px) {
    body.spacewatch-page .spacewatch-tabs {
        gap: 6px;
        padding: 6px;
        margin-bottom: 8px;
    }

    body.spacewatch-page .spacewatch-tab-button {
        flex: 1 1 calc(33.333% - 4px);
        min-height: 38px;
        padding: 8px 6px;
        font-size: 11px;
    }

    body.spacewatch-page .spacewatch-title-tabs {
        max-width: 100%;
        flex-wrap: nowrap;
        overflow-x: visible;
    }

    body.spacewatch-page .spacewatch-title-tabs .spacewatch-tab-button {
        flex: 0 0 auto;
        min-height: 29px;
        padding: 5px 7px;
        font-size: 14px;
    }

    body.spacewatch-page .spacewatch-body {
        padding: 8px;
    }

    body.spacewatch-page .spacewatch-kp-console-body {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "compass"
            "bar"
            "f107"
            "messages";
        gap: 14px;
        padding: 18px 8px 12px;
    }

    body.spacewatch-page .spacewatch-kp-console .spacewatch-compass {
        width: min(100%, 360px);
    }

    body.spacewatch-page .spacewatch-f107-widget,
    body.spacewatch-page [data-spacewatch="realtimeMessagesWidget"] {
        min-height: 176px;
    }

    body.spacewatch-page .spacewatch-f107-surface {
        grid-template-columns: 68px minmax(0, 1fr);
    }

    body.spacewatch-page [data-spacewatch="realtimeMessagesWidget"] {
        max-height: 220px;
    }

    body.spacewatch-page .spacewatch-realtime-messages-surface {
        padding: 12px 14px 12px 24px;
    }

    body.spacewatch-page .spacewatch-realtime-messages-viewport {
        width: 94%;
    }

    body.spacewatch-page .spacewatch-kp-bar {
        margin: 0;
        padding: 14px 6px 16px;
    }

    body.spacewatch-page .spacewatch-kp-bar-footer {
        align-items: flex-start;
        flex-direction: column;
    }

    body.spacewatch-page .spacewatch-kp-bar-time,
    body.spacewatch-page [data-spacewatch="kpTime"] {
        margin-left: 0;
        text-align: left;
    }

    body.spacewatch-page .spacewatch-pigeon-icon {
        width: 52px;
        height: 52px;
    }

    body.spacewatch-page .spacewatch-pigeon-icon .pigeon-flight-shell {
        width: 44px;
        height: 44px;
    }

    body.spacewatch-page .spacewatch-pigeon-speech {
        right: 24px;
        width: 148px;
    }
}

@media (max-width: 600px) {
    body.spacewatch-page .spacewatch-tab-button {
        font-size: 10px;
    }

    body.spacewatch-page .spacewatch-title-tabs .spacewatch-tab-button {
        font-size: 14px;
    }

    body.spacewatch-page .spacewatch-kp-console .spacewatch-compass {
        width: min(100%, 332px);
    }
}

@media (min-width: 1320px) {
    body.spacewatch-page .spacewatch-body {
        padding: 12px;
    }

    body.spacewatch-page .spacewatch-recent-layout {
        grid-template-columns: minmax(460px, 0.8fr) minmax(0, 1.2fr);
    }

    body.spacewatch-page .spacewatch-solar-canvas-wrap {
        min-height: 340px;
    }

    body.spacewatch-page .spacewatch-solar-canvas {
        width: min(100%, 400px);
    }

    body.spacewatch-page .spacewatch-coronal-console {
        min-height: 470px;
    }
}

@media (max-width: 980px) {
    body.spacewatch-page .spacewatch-recent-layout,
    body.spacewatch-page .spacewatch-coronal-layout {
        grid-template-columns: 1fr;
    }

    body.spacewatch-page .spacewatch-recent-layout {
        grid-template-areas:
            "sun"
            "timeline"
            "controls";
    }

    body.spacewatch-page .spacewatch-coronal-layout {
        grid-template-areas:
            "coronal"
            "controls"
            "timeline";
    }

    body.spacewatch-page .spacewatch-date-rail {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.spacewatch-page .spacewatch-insight-panel {
        grid-template-columns: 1fr;
        grid-template-areas:
            "stats"
            "events"
            "messages";
        grid-template-rows: auto minmax(180px, auto) minmax(168px, auto);
    }

    body.spacewatch-page .spacewatch-coronal-insight-panel {
        grid-template-columns: minmax(0, 1fr) minmax(260px, 0.88fr);
    }
}

@media (max-width: 640px) {
    body.spacewatch-page .spacewatch-body,
    body.spacewatch-page .spacewatch-head {
        padding-left: 10px;
        padding-right: 10px;
    }

    body.spacewatch-page .spacewatch-recent-legend,
    body.spacewatch-page .spacewatch-stat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.spacewatch-page .spacewatch-coronal-insight-panel {
        grid-template-columns: 1fr;
        grid-template-areas:
            "metrics"
            "data"
            "messages";
        grid-template-rows: auto minmax(220px, auto) minmax(220px, auto);
    }

    body.spacewatch-page .spacewatch-coronal-data,
    body.spacewatch-page .spacewatch-coronal-announcements.spacewatch-recent-message-panel,
    body.spacewatch-page .spacewatch-coronal-announcements.spacewatch-recent-message-panel .spacewatch-realtime-messages-surface {
        min-height: 220px;
    }

    body.spacewatch-page .spacewatch-recent-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    body.spacewatch-page .spacewatch-solar-updates {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        max-width: 100%;
        justify-self: stretch;
    }

    body.spacewatch-page .spacewatch-solar-legend {
        grid-template-columns: repeat(2, auto);
        max-width: 54%;
    }

    body.spacewatch-page .spacewatch-event-grid-wrap {
        padding-left: 56px;
    }

    body.spacewatch-page .spacewatch-event-play {
        width: 46px;
        height: 46px;
        min-height: 46px;
        font-size: 0;
    }

    body.spacewatch-page .spacewatch-event-side-badge.is-left {
        left: 62px;
    }

    body.spacewatch-page .spacewatch-time-slider-overlay {
        left: 56px;
        width: calc(100% - 56px);
    }

    body.spacewatch-page .spacewatch-metric-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.spacewatch-page .spacewatch-live-metric-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.spacewatch-page .spacewatch-live-metric-card {
        min-height: 0;
    }

    body.spacewatch-page .spacewatch-live-metric-head {
        grid-template-columns: minmax(0, 1fr);
    }

    body.spacewatch-page .spacewatch-live-metric-readouts span:first-child {
        border-left: 0;
    }

    body.spacewatch-page .spacewatch-live-metric-readouts em {
        font-size: 12px;
    }

    body.spacewatch-page .spacewatch-metric-data-card {
        grid-template-columns: minmax(0, 1fr) 72px;
    }

    body.spacewatch-page .spacewatch-coronal-time-ticks {
        font-size: 8px;
    }

    body.spacewatch-page .spacewatch-coronal-date-tick {
        flex-basis: 76px;
    }

    body.spacewatch-page .spacewatch-event-rail {
        min-height: 76px;
    }

    body.spacewatch-page .spacewatch-event-rail-labels {
        font-size: 8px;
    }
}

@media (min-width: 981px) {
    body.spacewatch-page .spacewatch-coronal-layout {
        --spacewatch-coronal-side-height: 500px;
    }

    body.spacewatch-page .spacewatch-coronal-visual-column,
    body.spacewatch-page .spacewatch-coronal-console,
    body.spacewatch-page .spacewatch-coronal-controls {
        height: var(--spacewatch-coronal-side-height);
        min-height: 0;
        max-height: var(--spacewatch-coronal-side-height);
    }

    body.spacewatch-page .spacewatch-coronal-console {
        align-self: stretch;
    }

    body.spacewatch-page .spacewatch-coronal-controls,
    body.spacewatch-page .spacewatch-coronal-insight-panel,
    body.spacewatch-page .spacewatch-coronal-data,
    body.spacewatch-page .spacewatch-coronal-announcements,
    body.spacewatch-page .spacewatch-coronal-announcements .spacewatch-realtime-messages-surface,
    body.spacewatch-page .spacewatch-coronal-announcements .spacewatch-realtime-messages-viewport {
        min-height: 0;
        max-height: 100%;
        overflow: hidden;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.spacewatch-page .spacewatch-tab-button,
    body.spacewatch-page .spacewatch-mode-button,
    body.spacewatch-page .spacewatch-play-button {
        transition: none;
    }
}
