@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap'); :root, [data-theme='dark'], [data-theme='light'] { color-scheme: dark; --ops-bg: #070d1c; --ops-bg-2: #0b1326; --ops-panel: #10182b; --ops-panel-2: #151e33; --ops-panel-3: #1c263d; --ops-line: #334057; --ops-line-soft: rgba(176, 190, 226, 0.16); --ops-text: #eff4ff; --ops-muted: #aeb7ce; --ops-faint: #737d96; --ops-primary: #5a50f0; --ops-primary-2: #c6c1ff; --ops-cyan: #7ed7ff; --ops-cyan-2: #0ea5e9; --ops-coral: #ffb08a; --ops-green: #85efac; --ops-red: #ff8d8d; --ops-warn: #ffd082; --ops-radius-sm: 4px; --ops-radius: 6px; --ops-radius-lg: 8px; --ink: var(--ops-text); --ink-muted: var(--ops-muted); --paper: var(--ops-bg); --paper-strong: var(--ops-panel); --accent: var(--ops-coral); --accent-2: var(--ops-primary); --accent-3: var(--ops-cyan); --border: var(--ops-line-soft); --shadow: transparent; --glow: 0 0 0 1px rgba(126, 215, 255, 0.16); --input-bg: rgba(255, 255, 255, 0.035); --input-ink: var(--ops-text); --line: var(--ops-line-soft); --panel: var(--ops-panel); --panel-soft: rgba(255, 255, 255, 0.035); --text: var(--ops-text); --muted: var(--ops-muted); --error-bg: rgba(122, 36, 53, 0.44); --error-ink: #ffd6d6; } * { letter-spacing: 0 !important; } html { background: var(--ops-bg); } body { min-height: 100vh; background: radial-gradient(circle at 18% 0%, rgba(90, 80, 240, 0.2), transparent 32rem), radial-gradient(circle at 88% 12%, rgba(14, 165, 233, 0.13), transparent 28rem), linear-gradient(180deg, #081025 0%, #060b18 62%, #050914 100%); color: var(--ops-text); font-family: "Geist", "Segoe UI", Arial, sans-serif; font-size: 15px; line-height: 1.5; } a { color: inherit; } .page { width: min(100%, 1480px); max-width: none; margin: 0 auto; padding: 0 20px 92px; gap: 18px; } .header { position: sticky; top: 0; z-index: 100; display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: 0; align-items: center; margin: 0 -20px; padding: 14px 20px 12px; border-bottom: 1px solid var(--ops-line); background: rgba(8, 14, 31, 0.88); backdrop-filter: blur(18px); } .header-left, .header-right { min-width: 0; } .brand-link { gap: 12px; min-width: 0; } .brand-stack { gap: 0; min-width: 0; } .brand { color: var(--ops-primary-2); font-size: clamp(1.25rem, 2.5vw, 1.75rem); font-weight: 800; text-transform: uppercase; text-shadow: 0 0 18px rgba(198, 193, 255, 0.18); } .tagline { color: var(--ops-muted); font-size: 0.78rem; font-family: "JetBrains Mono", Consolas, monospace; } .brand-logo--header { width: 34px; height: 34px; object-fit: contain; border-radius: var(--ops-radius); } .branding-logo-shell { position: relative; display: grid; place-items: center; overflow: hidden; flex: 0 0 auto; border: 1px solid rgba(126, 215, 255, 0.22); background: rgba(17, 26, 51, 0.92); } .branding-logo-shell img, .branding-logo-shell svg { grid-area: 1 / 1; width: 100%; height: 100%; object-fit: contain; } .branding-logo-shell img { opacity: 0; } .branding-logo-shell img.is-loaded { opacity: 1; } .header-right { display: inline-flex; align-items: center; gap: 10px; } .beta-chip { display: inline-flex; align-items: center; min-height: 32px; padding: 6px 14px; border: 1px solid rgba(126, 215, 255, 0.36); border-radius: var(--ops-radius-lg); background: rgba(14, 165, 233, 0.16); color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; } .header-nav { grid-column: 1 / -1; margin-top: 12px; } .header-actions { display: flex; justify-content: center; gap: 8px; width: 100%; } .header-actions a { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 38px; padding: 8px 12px; border-radius: var(--ops-radius); border: 1px solid transparent; background: transparent; color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.78rem; text-decoration: none; box-shadow: none; } .header-actions a span { color: var(--ops-cyan); font-size: 0.68rem; } .header-actions a:hover, .header-actions a.is-active { border-color: rgba(126, 215, 255, 0.22); background: rgba(14, 165, 233, 0.16); color: var(--ops-text); } .avatar-button { width: 38px; height: 38px; border-radius: var(--ops-radius); border: 1px solid var(--ops-line-soft); background: var(--ops-panel-3); color: var(--ops-text); box-shadow: none; } .signed-in-dropdown { border-radius: var(--ops-radius-lg); border: 1px solid var(--ops-line); background: rgba(13, 20, 39, 0.98); box-shadow: 0 22px 60px rgba(0, 0, 0, 0.42); } .signed-in-header, .signed-in-build { color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; } .signed-in-actions a, .signed-in-signout { border-radius: var(--ops-radius); border-color: var(--ops-line-soft); background: rgba(255, 255, 255, 0.035); } .site-banner { border-radius: var(--ops-radius); border: 1px solid rgba(255, 208, 130, 0.28); background: rgba(103, 75, 25, 0.38); color: #ffe4b3; font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.82rem; } .card, .admin-card, .admin-panel, .main-panel, .summary-card, .portal-overview-card, .status-box, .timeline-card, .modal-card, .admin-zone, .admin-rail-card, .users-summary-card, .stat-card { border-radius: var(--ops-radius-lg) !important; border: 1px solid var(--ops-line) !important; background: linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)), var(--ops-panel) !important; box-shadow: none !important; } .card { width: 100%; padding: 24px; gap: 20px; } h1, h2, h3 { color: var(--ops-text); font-weight: 700; line-height: 1.1; } h1 { font-size: clamp(2rem, 5vw, 4rem); } h2 { font-size: clamp(1.25rem, 2vw, 1.75rem); } h3 { font-size: 1rem; } .lede, .section-subtitle, .meta, .helper, .recent-meta, .user-directory-subtext, .users-summary-meta { color: var(--ops-muted) !important; } .section-kicker, .admin-sidebar-title, .admin-nav-title, .stat-label, .users-summary-label, .user-bulk-label, .settings-inline-field span, .recent-filter span, .label-row, .portal-toolbar label span, .admin-rail-eyebrow { color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.76rem; font-weight: 700; text-transform: uppercase; } input, select, textarea { width: 100%; min-height: 44px; border-radius: var(--ops-radius) !important; border: 1px solid var(--ops-line) !important; background: rgba(8, 13, 28, 0.78) !important; color: var(--ops-text) !important; font-family: "Geist", "Segoe UI", Arial, sans-serif; font-size: 0.96rem; box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025); } input:focus, select:focus, textarea:focus { outline: 2px solid rgba(126, 215, 255, 0.24); border-color: rgba(126, 215, 255, 0.6) !important; } input::placeholder, textarea::placeholder { color: #616b84; } button, .ghost-button, .settings-action-button, .header-link { min-height: 40px; border-radius: var(--ops-radius) !important; border: 1px solid rgba(126, 215, 255, 0.18); background: var(--ops-primary); color: #f7f7ff; font-family: "Geist", "Segoe UI", Arial, sans-serif; font-size: 0.92rem; font-weight: 700; box-shadow: none !important; } button:hover, .ghost-button:hover { filter: brightness(1.08); } button:disabled, .ghost-button:disabled { cursor: not-allowed; opacity: 0.58; } .ghost-button, .details-toggle button, .admin-toolbar-actions button, .portal-workspace-switch button:not(.is-active), .settings-action-button.ghost-button { background: rgba(255, 255, 255, 0.035) !important; color: var(--ops-text) !important; } .error-banner, .status-banner, .action-message { border-radius: var(--ops-radius); border: 1px solid var(--ops-line-soft); background: rgba(255, 255, 255, 0.035); color: var(--ops-muted); } .error-banner { border-color: rgba(255, 141, 141, 0.35); background: rgba(122, 36, 53, 0.35); color: var(--ops-red); } .loading-center { min-height: 180px; place-items: center; } .spinner { border-color: rgba(126, 215, 255, 0.18); border-top-color: var(--ops-cyan); } .loading-text { color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; } .auth-screen { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(360px, 520px); gap: 32px; align-items: center; min-height: calc(100vh - 210px); padding: 36px 0; } .auth-hero { display: grid; gap: 28px; min-height: 520px; align-content: center; padding: 42px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: linear-gradient(90deg, rgba(8, 13, 28, 0.94), rgba(8, 13, 28, 0.72)), repeating-linear-gradient(90deg, rgba(126, 215, 255, 0.04) 0 1px, transparent 1px 56px), linear-gradient(140deg, rgba(90, 80, 240, 0.16), transparent 55%); } .auth-mark { width: 86px; height: 86px; display: grid; place-items: center; border: 1px solid rgba(198, 193, 255, 0.22); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.035); } .auth-mark .brand-logo--login { width: 64px; height: 64px; margin: 0; } .auth-title-block { display: grid; gap: 14px; max-width: 620px; } .auth-title-block h1 { text-transform: capitalize; } .auth-title-block p { color: var(--ops-muted); font-size: 1.15rem; max-width: 34rem; } .auth-panel { padding: 28px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: radial-gradient(circle at top right, rgba(126, 215, 255, 0.08), transparent 20rem), var(--ops-panel); } .auth-form label, .admin-form label, .compact-form label, .profile-section label, .filter, .users-page-toolbar-group, .user-directory-search label { display: grid; gap: 8px; color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.76rem; font-weight: 700; text-align: left; text-transform: uppercase; } .auth-footnote { display: inline-flex; align-items: center; gap: 8px; color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.78rem; } .live-dot, .system-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--ops-cyan); box-shadow: 0 0 14px rgba(126, 215, 255, 0.64); } .system-dot-up, .system-up .system-dot { background: var(--ops-green); } .system-dot-down, .system-down .system-dot { background: var(--ops-red); } .system-dot-degraded, .system-degraded .system-dot { background: var(--ops-warn); } .system-dot-not_configured, .system-not_configured .system-dot, .system-disabled .system-dot, .system-unknown .system-dot { background: var(--ops-faint); box-shadow: none; } .ops-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; } .ops-metric-card { display: grid; gap: 8px; min-height: 150px; padding: 18px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: linear-gradient(145deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.012)), var(--ops-panel); } .ops-metric-card strong { color: var(--ops-primary-2); font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1; } .ops-metric-card p { margin: 0; color: var(--ops-muted); } .home-page { display: grid; gap: 18px; } .home-command { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(380px, 1.15fr); align-items: end; gap: clamp(24px, 5vw, 64px); padding: clamp(24px, 4vw, 42px); overflow: hidden; border: 1px solid rgba(126, 215, 255, 0.22); border-radius: var(--ops-radius-lg); background: radial-gradient(circle at 88% 20%, rgba(14, 165, 233, 0.18), transparent 42%), linear-gradient(145deg, rgba(35, 74, 145, 0.18), rgba(9, 17, 36, 0.68)); } .home-command-copy { display: grid; gap: 10px; } .home-command-copy h1 { margin: 0; font-size: clamp(2rem, 4.5vw, 3.8rem); line-height: 0.98; letter-spacing: -0.045em; } .home-command-copy p { max-width: 52ch; margin: 0; color: var(--ops-muted); line-height: 1.6; } .home-search { display: grid; gap: 9px; } .home-search > label { color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; } .home-search-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; } .home-search-row input, .home-search-row button { min-height: 52px; } .home-search-row input { padding-inline: 17px; border-color: rgba(126, 215, 255, 0.25); background: rgba(3, 8, 20, 0.48); font-size: 1rem; } .home-search-results, .home-recent { padding: 20px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.024); } .home-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; } .home-section-heading > div:first-child { display: grid; gap: 5px; } .home-section-heading h2 { margin: 0; } .home-result-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 10px; margin-top: 16px; } .home-result-card { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 72px; padding: 13px 15px; text-align: left; border: 1px solid var(--ops-line-soft); background: rgba(255, 255, 255, 0.032); } .home-result-card > span:first-child { display: grid; gap: 4px; min-width: 0; } .home-result-card small, .home-result-card > span:last-child { color: var(--ops-muted); font-size: 0.75rem; } .home-metric-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.02); } .home-metric-strip > div { display: grid; gap: 6px; min-width: 0; padding: 15px 18px; border-right: 1px solid var(--ops-line-soft); } .home-metric-strip > div:last-child { border-right: 0; } .home-metric-strip span { color: var(--ops-muted); font-size: 0.74rem; } .home-metric-strip strong { color: var(--ops-text); font-size: 1.15rem; } .home-recent .recent-header { margin-bottom: 16px; } .home-recent-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .home-recent-grid .recent-card { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; min-height: 92px; padding: 10px; } .recent-poster-placeholder { display: grid; place-items: center; width: 52px; height: 70px; color: var(--ops-faint); background: rgba(255, 255, 255, 0.035); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.68rem; } .recent-open-cue { padding-right: 6px; color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.66rem; font-weight: 700; text-transform: uppercase; } .home-empty-state { display: grid; gap: 6px; place-items: center; min-height: 170px; color: var(--ops-muted); text-align: center; border: 1px dashed var(--ops-line); border-radius: var(--ops-radius); } .home-empty-state strong { color: var(--ops-text); } .layout-grid { grid-template-columns: minmax(0, 1.35fr) minmax(340px, 0.65fr); align-items: start; } .find-panel, .recent.centerpiece { border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.025); padding: 18px; } .system-status, .recent-header, .find-header, .section-header, .user-directory-panel-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; } .system-status-dropdown { display: block; margin-bottom: 16px; } .system-status-dropdown summary { list-style: none; } .system-status-dropdown summary::-webkit-details-marker { display: none; } .system-summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 16px; cursor: pointer; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.032); } .system-summary-copy { display: grid; gap: 4px; min-width: 0; } .system-summary-copy strong { color: var(--ops-text); font-size: 1rem; } .system-summary-copy span:last-child { color: var(--ops-muted); font-size: 0.86rem; } .system-summary-actions { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; } .system-dropdown-cue { min-width: 52px; color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.72rem; font-weight: 700; text-align: right; text-transform: uppercase; } .system-status-dropdown[open] .system-dropdown-cue::before { content: "Close"; font-size: 0.72rem; } .system-status-dropdown[open] .system-dropdown-cue { font-size: 0; } .system-status-dropdown .system-list { margin-top: 10px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); } .system-status-dropdown .system-item { grid-template-columns: auto minmax(0, 1fr) auto; } .system-status-dropdown .system-actions { flex-wrap: nowrap; } .system-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .system-list, .service-ecosystem, .recent-grid, .portal-item-list, .portal-comment-list, .quick-action-grid { display: grid; gap: 10px; } .system-item, .service-row, .recent-card, .admin-table-row, .user-directory-row, .portal-item-row, .portal-discovery-item, .connection-item { border: 1px solid var(--ops-line-soft) !important; border-radius: var(--ops-radius) !important; background: rgba(255, 255, 255, 0.032) !important; color: var(--ops-text) !important; box-shadow: none !important; } .system-item, .service-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px; text-decoration: none; } .system-meta, .service-row span:nth-child(2) { display: grid; gap: 2px; min-width: 0; } .system-name, .service-row strong { color: var(--ops-text); } .system-test-message, .service-row small { color: var(--ops-muted); font-size: 0.78rem; } .find-panel .find-header { display: grid; gap: 6px; } .find-panel .find-header h1 { margin: 0; font-size: clamp(1.12rem, 1.5vw, 1.38rem); line-height: 1.12; } .find-panel h2 { font-size: 1.22rem; } .find-panel .lede { font-size: 0.9rem; line-height: 1.45; } .system-actions { display: inline-flex; align-items: center; gap: 8px; } .system-state, .small-pill, .user-grid-pill { display: inline-flex; align-items: center; gap: 6px; min-height: 24px; padding: 4px 8px; border-radius: var(--ops-radius); border: 1px solid rgba(126, 215, 255, 0.22); background: rgba(14, 165, 233, 0.14); color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.7rem; font-weight: 700; white-space: nowrap; text-transform: uppercase; } .system-pill-up, .system-pill-online, .small-pill.is-positive { border-color: rgba(133, 239, 172, 0.28); background: rgba(34, 197, 94, 0.14); color: var(--ops-green); } .system-pill-down, .system-pill-failed, .user-grid-pill.is-blocked { border-color: rgba(255, 141, 141, 0.34); background: rgba(239, 68, 68, 0.16); color: var(--ops-red); } .system-pill-degraded, .system-pill-warning { border-color: rgba(255, 208, 130, 0.34); background: rgba(245, 158, 11, 0.14); color: var(--ops-warn); } .small-pill.is-muted, .user-grid-pill.is-disabled, .system-pill-not_configured, .system-pill-unknown, .system-pill-idle { border-color: rgba(174, 183, 206, 0.2); background: rgba(174, 183, 206, 0.08); color: var(--ops-muted); } .recent-card { display: grid; grid-template-columns: auto minmax(0, 1fr); text-align: left; } .recent-poster, .request-poster { border-radius: var(--ops-radius) !important; border: 1px solid var(--ops-line); } .search, .portal-discovery-form { grid-template-columns: minmax(0, 1fr) auto; } .filters-compact, .portal-toolbar, .admin-toolbar, .users-page-toolbar, .user-directory-search-panel, .user-directory-bulk-panel { border-radius: var(--ops-radius-lg); border: 1px solid var(--ops-line); background: rgba(255, 255, 255, 0.024); } .pill-group button { background: rgba(14, 165, 233, 0.12); color: var(--ops-cyan); border-color: rgba(126, 215, 255, 0.2); } .admin-shell { display: grid; grid-template-columns: minmax(210px, 250px) minmax(0, 1fr); grid-template-areas: "nav main"; gap: 18px; align-items: start; } .admin-shell.admin-shell--with-rail { grid-template-columns: minmax(210px, 250px) minmax(0, 1fr) minmax(300px, 380px); grid-template-areas: "nav main rail"; } .admin-shell-nav { grid-area: nav; position: sticky; top: 116px; } .admin-card { grid-area: main; } .admin-shell-rail { grid-area: rail; position: sticky; top: 116px; } .admin-sidebar { gap: 18px; padding: 14px; border-radius: var(--ops-radius-lg); border: 1px solid var(--ops-line); background: rgba(255, 255, 255, 0.026); } .admin-nav-links a { display: flex; align-items: center; min-height: 36px; border-radius: var(--ops-radius); background: transparent; color: var(--ops-muted); } .admin-nav-links a:hover, .admin-nav-links a.is-active { border-color: rgba(126, 215, 255, 0.22); background: rgba(14, 165, 233, 0.13); color: var(--ops-text); } .admin-header { padding-bottom: 18px; border-bottom: 1px solid var(--ops-line-soft); } .admin-header h1 { margin-top: 8px; } .admin-zone { padding: 18px; } .admin-zone-stack { display: grid; gap: 16px; } .config-subsection-nav { display: grid; gap: 11px; padding: 14px 16px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.024); } .config-subsection-nav > span { color: var(--ops-muted); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.09em; text-transform: uppercase; } .config-subsection-nav > div { display: flex; flex-wrap: wrap; gap: 8px; } .config-subsection-nav a { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 7px 11px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.022); color: var(--ops-text); font-size: 0.76rem; font-weight: 700; text-decoration: none; transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease; } .config-subsection-nav a:hover { transform: translateY(-1px); border-color: rgba(126, 215, 255, 0.38); background: rgba(14, 165, 233, 0.09); } .config-subsection-nav a small { color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.64rem; } .config-subsection { scroll-margin-top: 124px; } .config-subsection-heading { display: grid; gap: 4px; } .fleet-status-panel { display: grid; gap: 16px; border-color: rgba(126, 215, 255, 0.2); background: radial-gradient(circle at 100% 0%, rgba(14, 165, 233, 0.1), transparent 38%), rgba(255, 255, 255, 0.024); } .fleet-status-header { align-items: center; } .fleet-status-header > div { display: grid; gap: 5px; } .fleet-status-header h2 { margin: 0; } .fleet-service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .fleet-service-card { display: grid; gap: 13px; min-width: 0; padding: 15px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(3, 8, 20, 0.24); } .fleet-service-card.system-down { border-color: rgba(255, 141, 141, 0.3); } .fleet-service-card.system-degraded { border-color: rgba(255, 208, 130, 0.3); } .fleet-service-title { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 11px; } .fleet-service-title > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; } .fleet-service-title h3 { margin: 0; } .fleet-service-card p { min-height: 2.8em; margin: 0; color: var(--ops-muted); font-size: 0.84rem; line-height: 1.45; } .fleet-service-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 11px; border-top: 1px solid var(--ops-line-soft); } .fleet-service-actions a { color: var(--ops-cyan); font-size: 0.78rem; font-weight: 700; text-decoration: none; } .fleet-service-actions button { min-height: 34px; padding: 7px 10px; font-size: 0.75rem; } .admin-rail-action { display: inline-flex; margin-top: 12px; color: var(--ops-cyan); font-size: 0.8rem; font-weight: 700; text-decoration: none; } .admin-table { overflow-x: auto; } .admin-table-head, .admin-table-row, .user-directory-header, .user-directory-row, .cache-row { grid-template-columns: minmax(260px, 2fr) minmax(140px, 1fr) minmax(150px, 1fr) minmax(170px, 1fr); } .admin-table-head, .user-directory-header, .cache-head { color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.72rem; font-weight: 700; text-transform: uppercase; } .admin-table-row, .user-directory-row { min-width: 0; padding: 12px 14px; } .admin-table-head { min-width: 0; } .admin-pagination { color: var(--ops-muted); } .dashboard-activity-table .admin-table-row span:first-child { font-weight: 700; } .dashboard-activity-table .admin-table-head, .dashboard-activity-table .admin-table-row { grid-template-columns: minmax(150px, 1.45fr) minmax(120px, 0.9fr) minmax(72px, 0.55fr) minmax(135px, 0.9fr); } .dashboard-activity-table .admin-table-row span, .dashboard-activity-table .admin-table-head span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .quick-action-grid { grid-template-columns: 1fr; } .quick-action-grid a { padding: 10px 12px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.032); color: var(--ops-text); text-decoration: none; } .ops-status-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .ops-status-strip span { padding: 12px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; text-transform: uppercase; } .portal-page { gap: 18px; } .portal-page > .user-directory-panel-header:first-child { min-height: 190px; padding: 28px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: linear-gradient(135deg, rgba(90, 80, 240, 0.2), transparent 42%), var(--ops-panel); } .portal-workspace-switch { display: flex; gap: 8px; } .portal-workspace-switch button.is-active { background: rgba(14, 165, 233, 0.18); color: var(--ops-cyan); } .portal-overview-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } .portal-overview-card { min-height: 110px; padding: 16px; } .portal-overview-card strong { color: var(--ops-primary-2); font-size: 2rem; } .portal-workspace { grid-template-columns: minmax(320px, 420px) minmax(0, 1fr); gap: 14px; } .portal-item-row { width: 100%; justify-content: stretch; } .portal-item-row.is-active { border-color: rgba(126, 215, 255, 0.62) !important; background: rgba(14, 165, 233, 0.12) !important; } .portal-item-row-title strong, .portal-comment-card strong { color: var(--ops-text); } .portal-item-row p, .portal-item-row-meta, .portal-comment-card header { color: var(--ops-muted); } .portal-form-grid, .settings-grid, .compact-form { gap: 14px; } .portal-comments-block { border-top-color: var(--ops-line); } .request-detail-page { gap: 22px; } .request-header { align-items: center; padding-bottom: 18px; border-bottom: 1px solid var(--ops-line-soft); } .request-header-main { align-items: center; } .status-box { grid-template-columns: repeat(2, minmax(0, 1fr)); } .status-text { color: var(--ops-primary-2); font-size: clamp(1.5rem, 3vw, 2.8rem); } .pipeline-map, .actions, .history, .request-error-state { display: grid; gap: 14px; padding: 18px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.024); } .pipeline-steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; } .pipeline-step { display: grid; gap: 8px; justify-items: center; padding: 12px 8px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); color: var(--ops-muted); text-align: center; } .pipeline-step.is-active { border-color: rgba(126, 215, 255, 0.48); background: rgba(14, 165, 233, 0.14); color: var(--ops-cyan); } .pipeline-step.is-complete { color: var(--ops-green); } .pipeline-dot, .timeline-marker { background: var(--ops-cyan); } .timeline::before { background: linear-gradient(180deg, var(--ops-cyan), transparent); } .timeline-card pre, .log-viewer { border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: #050914; color: #d9e4ff; } .timeline-title { color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; } .timeline-sublist li { border-bottom: 1px solid var(--ops-line-soft); padding-bottom: 8px; } .request-error-state { min-height: 340px; align-content: center; justify-items: start; } .request-error-state h1 { max-width: 680px; } .request-error-state p { max-width: 640px; color: var(--ops-muted); } .request-error-actions { display: flex; flex-wrap: wrap; gap: 10px; } .settings-nav, .settings-links, .settings-section-actions, .user-bulk-actions, .users-page-toolbar-actions, .admin-toolbar-actions { gap: 10px; } .settings-links a { border-radius: var(--ops-radius); border: 1px solid var(--ops-line-soft); background: rgba(255, 255, 255, 0.028); } .settings-links a.is-active { border-color: rgba(126, 215, 255, 0.38); background: rgba(14, 165, 233, 0.13); color: var(--ops-cyan); } .settings-section-actions { padding-top: 14px; border-top: 1px solid var(--ops-line-soft); } .admin-form .admin-zone { display: grid; gap: 14px; padding: 20px; } .admin-form .admin-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 12px; } .admin-form .admin-grid > label { align-content: start; min-width: 0; padding: 14px; text-align: left; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.022); } .admin-form .admin-grid > label:focus-within { border-color: rgba(126, 215, 255, 0.38); background: rgba(14, 165, 233, 0.055); } .admin-form .admin-grid label[data-helper]::after { min-height: 2.8em; color: var(--ops-muted); font-family: Manrope, "Segoe UI", sans-serif; font-size: 0.76rem; font-weight: 500; line-height: 1.4; text-align: left; text-transform: none; } .admin-form .label-row { align-items: flex-start; gap: 12px; } .admin-form .label-row > span:first-child { color: var(--ops-text); } .admin-form .label-row .meta { flex: 0 0 auto; padding: 3px 6px; border: 1px solid var(--ops-line-soft); border-radius: 999px; color: var(--ops-faint); font-size: 0.62rem; line-height: 1.2; text-transform: none; } .admin-form .admin-grid input, .admin-form .admin-grid select, .admin-form .admin-grid textarea { width: 100%; } .admin-form .section-header h2 { margin: 0; } .admin-form .settings-section-actions { align-items: end; justify-content: flex-end; } .service-status-panel { display: grid; grid-template-columns: minmax(0, 0.82fr) minmax(520px, 1fr); gap: 18px; align-items: center; } .service-status-summary { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px; align-items: center; } .service-status-summary .system-dot { width: 14px; height: 14px; } .service-status-grid { display: grid; grid-template-columns: minmax(88px, 0.65fr) minmax(130px, 0.85fr) minmax(190px, 1.15fr) minmax(132px, auto); gap: 10px; align-items: stretch; } .service-status-grid > div { display: grid; gap: 4px; min-width: 0; padding: 12px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.03); } .service-status-grid span { color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.72rem; text-transform: uppercase; } .service-status-grid strong { overflow-wrap: normal; color: var(--ops-text); text-transform: capitalize; white-space: nowrap; } .settings-inline-field { min-width: min(100%, 280px); } .field-span-full { grid-column: 1 / -1; } .users-page-toolbar-grid, .users-summary-grid, .users-page-overview-grid { gap: 12px; } .user-directory-list { display: grid; gap: 8px; overflow-x: auto; } .user-directory-row { text-decoration: none; } .user-directory-row-chevron { color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.72rem; text-transform: uppercase; } .modal-backdrop { background: rgba(3, 7, 18, 0.72); backdrop-filter: blur(10px); } @media (max-width: 1180px) { .ops-metric-grid, .portal-overview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .layout-grid, .admin-shell, .admin-shell.admin-shell--with-rail, .portal-workspace { grid-template-columns: 1fr; grid-template-areas: "nav" "main" "rail"; } .admin-shell-nav, .admin-shell-rail { position: static; } .admin-sidebar { display: flex; overflow-x: auto; } .service-status-panel, .service-status-grid { grid-template-columns: 1fr; } .service-status-grid strong { white-space: normal; overflow-wrap: anywhere; } .admin-nav-group { min-width: 190px; } .side-panel { position: static; } .home-command { grid-template-columns: 1fr; align-items: stretch; } } @media (max-width: 780px) { body { font-size: 14px; } .page { padding: 0 14px 90px; } .header { grid-template-columns: minmax(0, 1fr) auto !important; margin: 0 -14px; padding: 12px 14px; backdrop-filter: none; } .tagline { display: none; } .brand-logo--header { width: 28px; height: 28px; } .header-nav { grid-column: auto !important; grid-row: auto !important; position: fixed !important; left: 0; right: 0; top: auto !important; bottom: 0; z-index: 1000; margin: 0; padding: 8px 10px; border-top: 1px solid var(--ops-line); background: rgba(8, 14, 31, 0.96); backdrop-filter: blur(18px); } .header-actions { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; } .header-actions a { display: grid; gap: 3px; min-height: 52px; padding: 6px 4px; font-size: 0.67rem; } .beta-chip { min-height: 28px; padding: 4px 9px; } .header-right { grid-column: 2 / 3 !important; grid-row: 1 / 2 !important; width: auto !important; justify-content: flex-end !important; } .card, .admin-card { padding: 16px; } .auth-screen { grid-template-columns: 1fr; gap: 16px; min-height: auto; padding: 18px 0; } .auth-hero { min-height: auto; padding: 24px; } .auth-mark { width: 64px; height: 64px; } .auth-mark .brand-logo--login { width: 44px; height: 44px; } .ops-metric-grid, .home-metric-strip, .home-recent-grid, .fleet-service-grid, .portal-overview-grid, .status-box, .history-grid, .summary, .ops-status-strip, .pipeline-steps { grid-template-columns: 1fr; } .home-metric-strip > div { border-right: 0; border-bottom: 1px solid var(--ops-line-soft); } .home-metric-strip > div:last-child { border-bottom: 0; } .home-search-row { grid-template-columns: 1fr; } .home-command, .home-search-results, .home-recent { padding: 16px; } .home-section-heading { align-items: stretch; flex-direction: column; } .home-recent-grid .recent-card { grid-template-columns: auto minmax(0, 1fr); } .recent-open-cue { display: none; } .search, .portal-discovery-form, .portal-toolbar, .portal-form-grid, .settings-grid { grid-template-columns: 1fr; } .portal-field-span-2, .field-span-full { grid-column: auto; } .system-status, .recent-header, .find-header, .section-header, .user-directory-panel-header, .admin-header, .admin-toolbar, .request-header { flex-direction: column; align-items: stretch; } .service-status-panel, .service-status-grid { grid-template-columns: 1fr; } .admin-table-head, .admin-table-row, .user-directory-header, .user-directory-row, .cache-row { min-width: 0; grid-template-columns: 1fr; } } /* Request detail overhaul: one evidence-led status and collection journey. */ .request-detail-page { --request-green: #48e0b2; --request-cyan: #7ed7ff; --request-amber: #ffc56d; --request-red: #ff8d9d; display: grid; gap: 20px; } .request-detail-page .request-header { margin: 0; } .request-detail-page .section-kicker { display: block; margin-bottom: 6px; color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; } .request-overview, .request-journey, .request-advanced { border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: radial-gradient(circle at 8% 0%, rgba(79, 70, 229, 0.1), transparent 32%), rgba(255, 255, 255, 0.018); } .request-overview { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); overflow: hidden; } .request-overview-block { grid-column: span 6; display: grid; align-content: start; gap: 7px; min-height: 118px; padding: 20px; border-right: 1px solid var(--ops-line-soft); border-bottom: 1px solid var(--ops-line-soft); } .request-overview-block:nth-child(even) { border-right: 0; } .request-overview-block p, .request-overview-block small { color: var(--ops-muted); line-height: 1.55; } .request-overview-block > strong { color: var(--ops-text); font-size: 1rem; line-height: 1.4; } .request-overview-status > strong { max-width: 820px; color: var(--request-cyan); font-size: clamp(1.35rem, 2.4vw, 2.35rem); letter-spacing: -0.035em; } .request-overview-label { color: var(--ops-text); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.055em; text-transform: uppercase; } .request-next-step { grid-column: 1 / -1; min-height: 0; border-right: 0; border-bottom: 0; background: linear-gradient(90deg, rgba(14, 165, 233, 0.08), rgba(79, 70, 229, 0.08)); } .request-action-row, .request-stage-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 6px; } .request-action-row button, .request-stage-actions button, .request-release button { min-height: 38px; border: 1px solid rgba(126, 215, 255, 0.32); border-radius: var(--ops-radius); background: linear-gradient(115deg, rgba(79, 70, 229, 0.92), rgba(14, 165, 233, 0.88)); color: #fff; font-size: 0.78rem; font-weight: 750; } .request-action-row .request-recheck-button { margin-left: auto; border-color: var(--ops-line); background: rgba(255, 255, 255, 0.035); color: var(--ops-text); } .request-action-row .request-recheck-button:hover:not(:disabled) { border-color: rgba(126, 215, 255, 0.48); background: rgba(126, 215, 255, 0.09); } .request-action-feedback { grid-column: 1 / -1; padding: 13px 18px; border-top: 1px solid var(--ops-line-soft); color: var(--request-green); background: rgba(72, 224, 178, 0.07); } .request-action-feedback.is-error { color: var(--request-red); background: rgba(255, 86, 113, 0.08); } .request-operation-progress { grid-column: 1 / -1; display: grid; gap: 14px; padding: 16px 18px; border-top: 1px solid var(--ops-line-soft); background: rgba(5, 9, 20, 0.42); } .request-operation-progress.is-running { background: rgba(14, 165, 233, 0.055); } .request-operation-progress.is-error { background: rgba(255, 86, 113, 0.055); } .request-operation-heading, .request-operation-heading-actions, .request-operation-event { display: flex; align-items: center; gap: 12px; } .request-operation-heading { justify-content: space-between; } .request-operation-heading > div:first-child { display: grid; gap: 4px; } .request-operation-heading > div:first-child > strong { color: var(--ops-text); font-size: 0.94rem; } .request-operation-heading-actions { color: var(--ops-muted); font-size: 0.7rem; } .request-operation-heading-actions button { min-height: 30px; padding: 5px 9px; border: 1px solid var(--ops-line); background: rgba(255, 255, 255, 0.035); color: var(--ops-text); font-size: 0.7rem; } .request-operation-status { padding: 5px 8px; border: 1px solid var(--ops-line); border-radius: 999px; color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.62rem; font-weight: 750; text-transform: uppercase; } .request-operation-status.is-running { border-color: rgba(126, 215, 255, 0.36); color: var(--ops-cyan); } .request-operation-status.is-complete { border-color: rgba(72, 224, 178, 0.3); color: var(--request-green); } .request-operation-status.is-error { border-color: rgba(255, 86, 113, 0.34); color: var(--request-red); } .request-operation-events { display: grid; gap: 7px; } .request-operation-event { min-width: 0; padding: 10px 12px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.022); } .request-operation-event > i { flex: 0 0 auto; width: 9px; height: 9px; border: 2px solid currentColor; border-radius: 50%; color: var(--ops-muted); } .request-operation-event.is-active > i { color: var(--ops-cyan); box-shadow: 0 0 12px currentColor; animation: request-operation-pulse 1.15s ease-in-out infinite; } .request-operation-event.is-complete > i { color: var(--request-green); background: currentColor; } .request-operation-event.is-error > i { color: var(--request-red); background: currentColor; } .request-operation-event > div { display: grid; gap: 2px; min-width: 0; } .request-operation-event strong { color: var(--ops-text); font-size: 0.75rem; } .request-operation-event span { color: var(--ops-muted); font-size: 0.75rem; } .request-operation-event small { margin-left: auto; color: var(--ops-muted); font-size: 0.66rem; white-space: nowrap; } @keyframes request-operation-pulse { 0%, 100% { opacity: 0.5; transform: scale(0.8); } 50% { opacity: 1; transform: scale(1); } } .request-journey { display: grid; gap: 18px; padding: 20px; } .request-journey-heading, .request-release-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; } .request-journey-heading h2, .request-release-heading h3 { font-size: clamp(1.3rem, 2.2vw, 2rem); letter-spacing: -0.03em; } .request-live-indicator { display: inline-flex; align-items: center; gap: 7px; min-height: 30px; padding: 6px 10px; border: 1px solid rgba(72, 224, 178, 0.24); border-radius: 999px; color: var(--request-green); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.68rem; font-weight: 700; text-transform: uppercase; } .request-live-indicator i { width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 12px currentColor; } .request-stage-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 12px; } .request-stage { position: relative; grid-column: span 4; display: grid; align-content: start; gap: 10px; min-height: 170px; padding: 16px; overflow: hidden; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius-lg); background: linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)); color: var(--ops-text); text-decoration: none; } .request-stage::before { position: absolute; inset: 0 0 auto; height: 2px; background: var(--ops-line-soft); content: ""; } .request-stage h3 { font-size: 1rem; } .request-stage p, .request-stage span { color: var(--ops-muted); font-size: 0.78rem; line-height: 1.48; } .request-stage.stage-complete { border-color: rgba(72, 224, 178, 0.25); background: linear-gradient(180deg, rgba(72, 224, 178, 0.1), rgba(72, 224, 178, 0.025)); } .request-stage.stage-complete::before { background: var(--request-green); box-shadow: 0 0 18px rgba(72, 224, 178, 0.7); } .request-stage.stage-active { border-color: rgba(126, 215, 255, 0.44); background: linear-gradient(180deg, rgba(14, 165, 233, 0.14), rgba(79, 70, 229, 0.045)); box-shadow: inset 0 0 36px rgba(14, 165, 233, 0.035); } .request-stage.stage-active::before { background: var(--request-cyan); box-shadow: 0 0 20px rgba(126, 215, 255, 0.78); } .request-stage.stage-partial { border-color: rgba(255, 197, 109, 0.35); background: linear-gradient(180deg, rgba(255, 197, 109, 0.11), rgba(255, 197, 109, 0.025)); } .request-stage.stage-partial::before, .request-stage.stage-attention::before { background: var(--request-amber); box-shadow: 0 0 18px rgba(255, 197, 109, 0.62); } .request-stage.stage-attention { border-color: rgba(255, 197, 109, 0.32); } .request-stage.is-link:hover { transform: translateY(-2px); border-color: rgba(72, 224, 178, 0.58); } .request-stage-topline, .request-meter-copy, .request-season-row, .request-missing-list > div, .request-torrent > div, .request-diagnostic > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; } .request-stage-number { color: var(--ops-cyan) !important; font-family: "JetBrains Mono", Consolas, monospace; font-weight: 800; } .request-stage-state { padding: 3px 7px; border: 1px solid currentColor; border-radius: 999px; font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.6rem !important; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; } .request-stage-state.state-complete { color: var(--request-green); } .request-stage-state.state-active { color: var(--request-cyan); } .request-stage-state.state-partial, .request-stage-state.state-attention { color: var(--request-amber); } .request-stage-state.state-waiting { color: var(--ops-muted); } .request-availability-meter, .request-missing-list, .request-torrent { display: grid; gap: 8px; margin-top: 4px; padding-top: 10px; border-top: 1px solid var(--ops-line-soft); } .request-meter-track { height: 7px; overflow: hidden; border: 1px solid var(--ops-line-soft); border-radius: 999px; background: rgba(255, 255, 255, 0.06); } .request-meter-track > span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--request-green), var(--request-cyan)); box-shadow: 0 0 14px rgba(72, 224, 178, 0.5); } .request-meter-track.is-live-download > span { transition: width 1.8s linear; will-change: width; } .request-season-row, .request-missing-list > div { padding-top: 6px; border-top: 1px solid rgba(255, 255, 255, 0.045); } .request-missing-list strong, .request-torrent strong { overflow-wrap: anywhere; color: var(--ops-text); font-size: 0.74rem; } .request-stage-actions { margin-top: auto; padding-top: 6px; } .request-stage-actions button { width: 100%; padding-inline: 10px; font-size: 0.7rem; } .request-stage-link { margin-top: auto; color: var(--request-green) !important; font-weight: 750; } .request-release-picker { display: grid; gap: 14px; padding: 16px; border: 1px solid rgba(126, 215, 255, 0.28); border-radius: var(--ops-radius-lg); background: rgba(14, 165, 233, 0.06); } .request-release-list { display: grid; gap: 8px; } .request-release { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: 12px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.025); } .request-release > div { display: grid; gap: 4px; min-width: 0; } .request-release strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .request-release span { color: var(--ops-muted); font-size: 0.74rem; } .request-advanced { overflow: hidden; } .request-advanced-toggle { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; padding: 16px 18px; border: 0; border-radius: 0; background: transparent; color: var(--ops-text); text-align: left; } .request-advanced-toggle > span:first-child { display: grid; gap: 3px; } .request-advanced-toggle small { color: var(--ops-muted); font-weight: 400; } .request-advanced-content { display: grid; gap: 16px; padding: 0 16px 16px; border-top: 1px solid var(--ops-line-soft); } .request-diagnostics-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding-top: 16px; } .request-diagnostic { display: grid; gap: 10px; min-width: 0; padding: 12px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.025); } .request-diagnostic pre { max-height: 260px; margin: 0; padding: 10px; overflow: auto; border-radius: var(--ops-radius); background: #050914; color: #cfd9ee; font-size: 0.7rem; white-space: pre-wrap; } .request-advanced .summary-card li { display: grid; gap: 3px; } .request-advanced .summary-card small { color: var(--ops-muted); } @media (max-width: 980px) { .request-stage { grid-column: span 6; } } @media (max-width: 720px) { .request-overview-block, .request-next-step, .request-stage { grid-column: 1 / -1; } .request-overview-block { min-height: 0; border-right: 0; } .request-journey, .request-overview-block { padding: 15px; } .request-journey-heading, .request-release-heading { align-items: flex-start; flex-direction: column; } .request-release { grid-template-columns: 1fr; } .request-live-indicator { align-self: flex-start; } .request-diagnostics-grid { grid-template-columns: 1fr; } .request-action-row, .request-stage-actions { display: grid; } .request-action-row button, .request-release button { width: 100%; } .request-operation-heading { align-items: flex-start; flex-direction: column; } .request-operation-heading-actions { width: 100%; flex-wrap: wrap; } .request-operation-event { align-items: flex-start; } } /* Progressive request portal */ .request-portal-page { display: grid; gap: 18px; padding: clamp(14px, 2vw, 24px); } .request-portal-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; min-height: 132px; padding: clamp(20px, 3vw, 34px); overflow: hidden; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: radial-gradient(circle at 12% 0%, rgba(126, 215, 255, 0.17), transparent 32%), linear-gradient(120deg, rgba(79, 70, 229, 0.13), transparent 50%), var(--ops-panel); } .request-portal-hero > div:first-child { display: grid; gap: 7px; max-width: 720px; } .request-portal-hero h1 { font-size: clamp(1.75rem, 4vw, 3rem); letter-spacing: -0.045em; } .request-portal-hero p { max-width: 650px; margin: 0; color: var(--ops-muted); line-height: 1.55; } .request-portal-route { display: flex; align-items: center; gap: 9px; flex: 0 0 auto; } .request-portal-route span { padding: 7px 10px; border: 1px solid var(--ops-line); border-radius: 999px; background: rgba(255, 255, 255, 0.035); color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.66rem; font-weight: 750; text-transform: uppercase; } .request-portal-route i { width: 18px; height: 1px; background: linear-gradient(90deg, var(--ops-line), var(--ops-cyan)); } .request-flow-alert { margin: 0; } .request-flow-stage { position: relative; display: grid; gap: 20px; padding: clamp(18px, 2.4vw, 28px); border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius-lg); background: linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012)); animation: request-flow-arrive 0.34s ease both; } .request-flow-stage:not(:last-child)::after { position: absolute; bottom: -19px; left: 44px; width: 1px; height: 19px; background: linear-gradient(var(--ops-cyan), rgba(126, 215, 255, 0.15)); content: ""; } .request-flow-stage.is-current { border-color: rgba(126, 215, 255, 0.24); } @keyframes request-flow-arrive { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .request-flow-heading { display: flex; align-items: center; gap: 13px; } .request-flow-heading > div { display: grid; gap: 2px; } .request-flow-heading > div > span, .request-selection-summary small, .request-existing-state span, .request-submit-bar span, .request-submit-progress header span { color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.66rem; font-weight: 750; letter-spacing: 0.055em; text-transform: uppercase; } .request-flow-heading h2 { font-size: clamp(1.15rem, 2.2vw, 1.65rem); letter-spacing: -0.025em; } .request-flow-number { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(126, 215, 255, 0.34); border-radius: 50%; background: rgba(14, 165, 233, 0.1); color: var(--ops-cyan); box-shadow: 0 0 22px rgba(14, 165, 233, 0.09); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.7rem; font-weight: 800; } .request-type-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .request-type-card { display: block; min-height: 174px; padding: 20px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.025); color: var(--ops-text); text-align: left; transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease; } .request-type-card:hover { transform: translateY(-2px); border-color: rgba(126, 215, 255, 0.5); } .request-type-card.is-selected { border-color: rgba(72, 224, 178, 0.58); background: linear-gradient(135deg, rgba(72, 224, 178, 0.11), rgba(14, 165, 233, 0.06)); } .request-type-card-body { display: flex; align-items: center; gap: 20px; width: 100%; min-height: 132px; } .request-type-card-copy { display: grid; justify-items: start; gap: 7px; min-width: 0; } .request-type-card-copy > span:first-child { color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.66rem; text-transform: uppercase; } .request-service-icon { flex: 0 0 auto; display: grid; place-items: center; width: 70px; height: 70px; padding: 10px; border: 1px solid rgba(255, 255, 255, 0.44); border-radius: 16px; background: rgba(245, 248, 252, 0.94); box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24); } .request-service-icon img { display: block; width: 100%; height: 100%; object-fit: contain; } .request-type-card.is-selected .request-service-icon { border-color: rgba(72, 224, 178, 0.72); box-shadow: 0 0 24px rgba(72, 224, 178, 0.18); } .request-type-card-copy strong { font-size: 1.35rem; } .request-type-description { max-width: 440px; color: var(--ops-muted); font-weight: 450; line-height: 1.5; text-transform: none !important; } .request-type-card-copy b { color: var(--request-green); font-size: 0.74rem; } .request-flow-search { display: grid; gap: 7px; } .request-flow-search > label, .request-profile-field > span, .request-season-picker legend { color: var(--ops-muted); font-size: 0.75rem; font-weight: 750; text-transform: uppercase; } .request-flow-search > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px; } .request-flow-search input { width: 100%; min-height: 48px; } .request-flow-search button { min-width: 150px; } .request-flow-empty { display: grid; gap: 5px; padding: 20px; border: 1px dashed var(--ops-line); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.018); } .request-flow-empty p { margin: 0; color: var(--ops-muted); } .request-result-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .request-result-card { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 15px; min-width: 0; min-height: 166px; padding: 11px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.023); color: var(--ops-text); text-align: left; transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease; } .request-result-card:hover { transform: translateY(-2px); border-color: rgba(126, 215, 255, 0.4); } .request-result-card.is-selected { border-color: rgba(72, 224, 178, 0.55); background: rgba(72, 224, 178, 0.06); } .request-result-poster, .request-selection-poster { display: grid; place-items: center; overflow: hidden; border: 1px solid var(--ops-line); border-radius: calc(var(--ops-radius) - 2px); background: rgba(255, 255, 255, 0.035); } .request-result-poster { width: 96px; height: 144px; } .request-result-poster img, .request-selection-poster img { width: 100%; height: 100%; object-fit: cover; } .request-result-poster i, .request-selection-poster i { color: var(--ops-muted); font-size: 0.65rem; font-style: normal; } .request-result-copy { display: grid; align-content: start; gap: 6px; min-width: 0; padding: 5px 4px 5px 0; } .request-result-copy small { color: var(--ops-cyan); font-size: 0.68rem; font-weight: 700; text-transform: uppercase; } .request-result-copy strong { font-size: 1rem; } .request-result-copy p { display: -webkit-box; margin: 0; overflow: hidden; color: var(--ops-muted); font-size: 0.76rem; font-weight: 450; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 3; } .request-result-copy b { align-self: end; margin-top: auto; color: var(--request-green); font-size: 0.71rem; } .request-configure-stage { border-color: rgba(72, 224, 178, 0.28); } .request-selection-summary { display: grid; grid-template-columns: 86px minmax(0, 1fr); align-items: center; gap: 16px; padding: 13px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.022); } .request-selection-poster { width: 86px; height: 129px; } .request-selection-summary > div { display: grid; gap: 6px; } .request-selection-summary h3 { font-size: clamp(1.15rem, 2vw, 1.55rem); } .request-selection-summary p { max-width: 760px; margin: 0; color: var(--ops-muted); font-size: 0.82rem; line-height: 1.5; } .request-existing-state { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px; border: 1px solid rgba(72, 224, 178, 0.28); border-radius: var(--ops-radius-lg); background: rgba(72, 224, 178, 0.06); } .request-existing-state > div { display: grid; gap: 5px; } .request-existing-state p { margin: 0; color: var(--ops-muted); } .request-options-layout { display: grid; gap: 16px; } .request-season-picker { display: grid; gap: 11px; margin: 0; padding: 0; border: 0; } .request-season-actions { display: flex; gap: 7px; } .request-season-actions button { padding: 6px 9px; border-color: var(--ops-line); background: rgba(255, 255, 255, 0.025); color: var(--ops-muted); font-size: 0.67rem; } .request-season-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; } .request-season-grid label { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 11px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.022); cursor: pointer; } .request-season-grid label.is-selected { border-color: rgba(72, 224, 178, 0.4); background: rgba(72, 224, 178, 0.07); } .request-season-grid label > span { display: grid; gap: 2px; min-width: 0; } .request-season-grid label strong { overflow: hidden; font-size: 0.78rem; text-overflow: ellipsis; white-space: nowrap; } .request-season-grid label small { color: var(--ops-muted); font-size: 0.67rem; } .request-profile-field { display: grid; gap: 7px; max-width: 620px; } .request-profile-field select { min-height: 46px; } .request-profile-field small, .request-submit-bar small { color: var(--ops-muted); font-size: 0.7rem; } .request-submit-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 17px; border: 1px solid rgba(126, 215, 255, 0.28); border-radius: var(--ops-radius-lg); background: linear-gradient(110deg, rgba(14, 165, 233, 0.09), rgba(79, 70, 229, 0.05)); } .request-submit-bar > div { display: grid; gap: 3px; } .request-submit-bar button { min-width: 180px; } .request-submit-progress { display: grid; gap: 10px; padding: 14px; border: 1px solid rgba(126, 215, 255, 0.3); border-radius: var(--ops-radius-lg); background: rgba(14, 165, 233, 0.055); } .request-submit-progress.is-complete { border-color: rgba(72, 224, 178, 0.3); background: rgba(72, 224, 178, 0.045); } .request-submit-progress.is-error { border-color: rgba(255, 86, 113, 0.35); background: rgba(255, 86, 113, 0.05); } .request-submit-progress header { display: flex; align-items: center; justify-content: space-between; gap: 14px; } .request-submit-progress header > div { display: grid; gap: 3px; } .request-submit-progress header small { color: var(--ops-muted); } .request-submit-progress > div { display: grid; gap: 6px; } .request-submit-progress p { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 9px; margin: 0; padding: 9px 10px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.02); } .request-submit-progress p > i { width: 8px; height: 8px; border-radius: 50%; background: var(--ops-muted); } .request-submit-progress p.is-active > i { background: var(--ops-cyan); box-shadow: 0 0 12px var(--ops-cyan); animation: request-operation-pulse 1.15s ease-in-out infinite; } .request-submit-progress p.is-complete > i { background: var(--request-green); } .request-submit-progress p.is-error > i { background: var(--request-red); } .request-submit-progress p > span { display: grid; gap: 1px; color: var(--ops-muted); font-size: 0.72rem; } .request-submit-progress p > span strong { color: var(--ops-text); font-size: 0.7rem; } .request-submit-progress p > small { color: var(--ops-muted); font-size: 0.65rem; } .request-complete-actions { display: flex; gap: 9px; justify-content: flex-end; } @media (max-width: 920px) { .request-portal-hero { align-items: flex-start; flex-direction: column; } .request-result-grid { grid-template-columns: 1fr; } .request-season-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 640px) { .request-portal-page { padding: 10px; } .request-portal-route { width: 100%; overflow-x: auto; } .request-type-grid, .request-season-grid { grid-template-columns: 1fr; } .request-type-card-body { align-items: flex-start; } .request-service-icon { width: 58px; height: 58px; padding: 8px; } .request-flow-search > div { grid-template-columns: 1fr; } .request-flow-search button { width: 100%; } .request-result-card { grid-template-columns: 76px minmax(0, 1fr); } .request-result-poster { width: 76px; height: 114px; } .request-selection-summary { grid-template-columns: 66px minmax(0, 1fr); } .request-selection-poster { width: 66px; height: 99px; } .request-existing-state, .request-submit-bar { align-items: stretch; flex-direction: column; } .request-existing-state button, .request-submit-bar button { width: 100%; } .request-submit-progress p { grid-template-columns: auto minmax(0, 1fr); } .request-submit-progress p > small { grid-column: 2; } .request-complete-actions { display: grid; } } /* Guided issue reporting */ .issue-portal-page { gap: 20px; } .issue-portal-page > .issue-portal-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 0; padding: 22px 24px; background: radial-gradient(circle at 100% 0%, rgba(126, 215, 255, 0.11), transparent 42%), linear-gradient(135deg, rgba(90, 80, 240, 0.12), transparent 48%), var(--ops-panel); } .issue-portal-hero > div:first-child { display: grid; gap: 5px; max-width: 790px; } .issue-portal-hero h1 { font-size: clamp(1.65rem, 3vw, 2.45rem); letter-spacing: -0.035em; } .issue-portal-hero .lede { max-width: 760px; margin: 0; } .issue-hero-count { display: grid; flex: 0 0 auto; min-width: 130px; padding: 12px 16px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.025); } .issue-hero-count strong { color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 1.45rem; } .issue-hero-count span { color: var(--ops-muted); font-size: 0.7rem; text-transform: uppercase; } .issue-flow { display: grid; gap: 18px; padding: 20px; border: 1px solid var(--ops-line); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.018); } .issue-flow-heading { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 13px; } .issue-flow-heading > div { display: grid; gap: 4px; } .issue-flow-heading h2, .issue-resolution-card h2, .issue-history-heading h2, .media-status-heading h3 { margin: 0; } .issue-flow-heading p, .issue-resolution-card p, .media-status-check > p { margin: 0; color: var(--ops-muted); line-height: 1.5; } .issue-step-number { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid rgba(126, 215, 255, 0.34); border-radius: 50%; background: rgba(14, 165, 233, 0.08); color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.7rem; font-weight: 800; } .issue-category-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; } .issue-category-card { display: grid; align-content: start; gap: 8px; min-height: 190px; padding: 16px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.022); color: var(--ops-text); text-align: left; transition: transform 0.18s ease, border-color 0.18s ease, background 0.18s ease; } .issue-category-card:hover { transform: translateY(-2px); border-color: rgba(126, 215, 255, 0.42); } .issue-category-card.is-selected { border-color: rgba(72, 224, 178, 0.58); background: linear-gradient(145deg, rgba(72, 224, 178, 0.09), rgba(14, 165, 233, 0.035)); box-shadow: 0 0 24px rgba(72, 224, 178, 0.06); } .issue-category-card strong { font-size: 0.98rem; } .issue-category-card p, .issue-category-card small { margin: 0; color: var(--ops-muted); font-size: 0.75rem; font-weight: 500; line-height: 1.45; } .issue-category-card small { align-self: end; margin-top: auto; padding-top: 9px; border-top: 1px solid var(--ops-line-soft); color: var(--request-green); font-size: 0.68rem; } .issue-category-marker { justify-self: start; padding: 4px 7px; border: 1px solid rgba(126, 215, 255, 0.24); border-radius: 999px; color: var(--ops-cyan); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.58rem; letter-spacing: 0.05em; } .issue-guided-form { display: grid; gap: 18px; padding-top: 20px; border-top: 1px solid var(--ops-line); } .issue-choice-field { display: grid; gap: 9px; margin: 0; padding: 0; border: 0; } .issue-choice-field legend, .issue-question-grid label > span { margin-bottom: 7px; color: var(--ops-muted); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; } .issue-choice-row { display: flex; flex-wrap: wrap; gap: 8px; } .issue-choice-row button { border-color: var(--ops-line-soft); background: rgba(255, 255, 255, 0.025); color: var(--ops-muted); } .issue-choice-row button.is-selected { border-color: rgba(126, 215, 255, 0.48); background: rgba(14, 165, 233, 0.12); color: var(--ops-text); } .issue-question-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .issue-question-grid label { display: grid; align-content: start; } .issue-field-span-2 { grid-column: span 2; } .issue-media-finder { display: grid; gap: 11px; padding: 14px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius-lg); background: rgba(255, 255, 255, 0.018); } .issue-media-search-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; } .issue-media-search-row button { min-width: 120px; } .issue-media-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(98px, auto); align-content: start; gap: 8px; max-height: 410px; overflow: auto; padding-right: 2px; } .issue-media-result { display: grid; grid-template-columns: 54px minmax(0, 1fr); align-items: center; gap: 10px; min-width: 0; min-height: 98px; padding: 8px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.022); color: var(--ops-text); text-align: left; } .issue-media-result:hover { border-color: rgba(126, 215, 255, 0.42); background: rgba(14, 165, 233, 0.07); } .issue-media-result > span:last-child { display: grid; gap: 3px; min-width: 0; opacity: 1; font-size: inherit; text-align: left; text-transform: none; } .issue-media-result > span:last-child strong, .issue-media-result > span:last-child small, .issue-media-result > span:last-child b { overflow-wrap: anywhere; text-align: left; text-transform: none; } .issue-media-result small, .issue-media-result b, .issue-selected-media small { color: var(--ops-muted); font-size: 0.64rem; font-weight: 600; } .issue-media-result b { color: var(--request-green); } .issue-media-poster { display: grid; place-items: center; width: 54px; height: 80px; overflow: hidden; border: 1px solid var(--ops-line-soft); border-radius: calc(var(--ops-radius) - 2px); background: rgba(255, 255, 255, 0.025); } .issue-media-poster img { width: 100%; height: 100%; object-fit: cover; } .issue-media-poster i { color: var(--ops-muted); font-size: 0.58rem; font-style: normal; text-align: center; } .issue-selected-media { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 13px; border: 1px solid rgba(72, 224, 178, 0.34); border-radius: var(--ops-radius); background: rgba(72, 224, 178, 0.055); } .issue-selected-media > div { display: grid; gap: 3px; } .issue-file-picker { display: grid; gap: 11px; padding: 14px; border: 1px solid rgba(126, 215, 255, 0.25); border-radius: var(--ops-radius); background: rgba(14, 165, 233, 0.035); } .issue-file-picker > div:first-child { display: grid; gap: 3px; } .issue-file-picker h3, .issue-file-picker p { margin: 0; } .issue-file-picker p { color: var(--ops-muted); font-size: 0.72rem; } .issue-file-list { display: grid; gap: 7px; max-height: 340px; overflow: auto; padding-right: 2px; } .issue-file-list > label { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; min-width: 0; padding: 10px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.022); cursor: pointer; } .issue-file-list > label.is-selected { border-color: rgba(72, 224, 178, 0.45); background: rgba(72, 224, 178, 0.055); } .issue-file-list > label > span { display: grid; gap: 2px; min-width: 0; } .issue-file-list strong, .issue-file-list small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .issue-file-list small, .issue-file-list b { color: var(--ops-muted); font-size: 0.65rem; font-weight: 600; } .issue-replacement-toggle { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 11px; padding: 13px; border: 1px solid rgba(255, 192, 84, 0.36); border-radius: var(--ops-radius); background: rgba(255, 192, 84, 0.055); cursor: pointer; } .issue-replacement-toggle > span { display: grid; gap: 3px; } .issue-replacement-toggle small { color: var(--ops-muted); font-size: 0.69rem; line-height: 1.45; } .media-status-check { display: grid; gap: 13px; padding: 16px; border: 1px solid rgba(126, 215, 255, 0.28); border-radius: var(--ops-radius-lg); background: rgba(14, 165, 233, 0.045); } .media-status-check.media-status-up { border-color: rgba(72, 224, 178, 0.34); background: rgba(72, 224, 178, 0.045); } .media-status-check.media-status-degraded { border-color: rgba(255, 192, 84, 0.36); background: rgba(255, 192, 84, 0.05); } .media-status-check.media-status-down { border-color: rgba(255, 86, 113, 0.38); background: rgba(255, 86, 113, 0.05); } .media-status-heading, .issue-history-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; } .media-status-heading > div, .issue-history-heading > div { display: grid; gap: 4px; } .issue-live-scan { display: flex; align-items: center; gap: 9px; color: var(--ops-muted); font-size: 0.75rem; } .issue-live-scan i { width: 9px; height: 9px; border-radius: 50%; background: var(--ops-cyan); box-shadow: 0 0 14px var(--ops-cyan); animation: request-operation-pulse 1.15s ease-in-out infinite; } .media-status-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; } .media-status-metrics > div { display: grid; gap: 3px; min-width: 0; padding: 10px; border: 1px solid var(--ops-line-soft); border-radius: var(--ops-radius); background: rgba(255, 255, 255, 0.022); } .media-status-metrics span { color: var(--ops-muted); font-size: 0.62rem; text-transform: uppercase; } .media-status-metrics strong { overflow: hidden; font-size: 0.75rem; text-overflow: ellipsis; } .issue-resolution-card { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: 16px; border: 1px solid rgba(72, 224, 178, 0.3); border-radius: var(--ops-radius-lg); background: linear-gradient(110deg, rgba(72, 224, 178, 0.07), rgba(14, 165, 233, 0.035)); } .issue-resolution-card > div { display: grid; gap: 4px; } .issue-resolution-card > button { min-width: 150px; } .issue-history-heading { padding-top: 4px; } .issue-history-heading > span { padding: 5px 9px; border: 1px solid var(--ops-line-soft); border-radius: 999px; color: var(--ops-muted); font-family: "JetBrains Mono", Consolas, monospace; font-size: 0.65rem; } .issue-linked-request { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px; border: 1px solid rgba(126, 215, 255, 0.28); border-radius: var(--ops-radius); background: rgba(14, 165, 233, 0.045); } .issue-linked-request > div { display: grid; gap: 3px; } .issue-portal-page .portal-item-row p { display: -webkit-box; overflow: hidden; white-space: pre-wrap; -webkit-box-orient: vertical; -webkit-line-clamp: 3; } @media (max-width: 980px) { .issue-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .media-status-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 640px) { .issue-portal-page > .issue-portal-hero, .media-status-heading, .issue-history-heading { align-items: flex-start; flex-direction: column; } .issue-hero-count { width: 100%; } .issue-flow { padding: 14px; } .issue-category-grid, .issue-question-grid, .issue-media-results, .media-status-metrics { grid-template-columns: 1fr; } .issue-field-span-2 { grid-column: span 1; } .issue-category-card { min-height: 0; } .issue-resolution-card { grid-template-columns: auto minmax(0, 1fr); } .issue-resolution-card > button { grid-column: 1 / -1; width: 100%; } .issue-media-search-row { grid-template-columns: 1fr; } .issue-selected-media { align-items: stretch; flex-direction: column; } .issue-linked-request { align-items: stretch; flex-direction: column; } .issue-file-list > label { grid-template-columns: auto minmax(0, 1fr); } .issue-file-list > label > b { grid-column: 2; } }