.runtime-drawer-shell { position: fixed; inset: 0; z-index: 40; display: flex; justify-content: flex-end; } .runtime-drawer-backdrop { flex: 1; border: 0; background: rgba(5, 6, 10, 0.58); backdrop-filter: blur(6px); } .runtime-drawer { width: min(560px, 100%); height: 100%; display: flex; flex-direction: column; background: radial-gradient(circle at top right, rgba(72, 166, 255, 0.14), transparent 24%), linear-gradient(180deg, #10161f, #0b1017 72%); border-left: 1px solid rgba(255, 255, 255, 0.07); box-shadow: -28px 0 70px rgba(0, 0, 0, 0.48); } .runtime-drawer-header, .runtime-drawer-footer { padding: 20px 22px; border-bottom: 1px solid rgba(255, 255, 255, 0.05); } .runtime-drawer-footer { border-bottom: 0; border-top: 1px solid rgba(255, 255, 255, 0.05); display: flex; gap: 10px; } .runtime-drawer-kicker { font-size: 11px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #78bdf4; margin-bottom: 6px; } .runtime-drawer-header h2 { font-size: 28px; line-height: 1.1; letter-spacing: -0.03em; } .runtime-drawer-copy { margin-top: 10px; max-width: 34ch; color: var(--text2); line-height: 1.55; } .runtime-drawer-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; } .runtime-drawer-close { width: 36px; height: 36px; border-radius: 999px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.04); color: var(--text); font-size: 26px; line-height: 1; cursor: pointer; } .runtime-drawer-body { flex: 1; overflow-y: auto; padding: 20px 22px 28px; } .runtime-drawer-section { margin-bottom: 18px; } .runtime-section-card, .runtime-overview-card { border: 1px solid rgba(255, 255, 255, 0.07); border-radius: 18px; background: rgba(255, 255, 255, 0.035); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03); } .runtime-section-card { padding: 16px; } .runtime-overview-card { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 18px; margin-bottom: 18px; } .runtime-overview-label { font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text3); margin-bottom: 8px; } .runtime-overview-value { color: var(--text); font-size: 14px; line-height: 1.45; } .runtime-overview-mono, .runtime-static-value-mono { font-family: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace; font-size: 13px; } .runtime-drawer-section-title, .runtime-field-label { display: block; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text3); margin-bottom: 8px; } .runtime-segmented { display: flex; gap: 8px; } .runtime-segmented-btn, .runtime-footer-btn { border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.03); color: var(--text); font-family: inherit; font-size: 13px; font-weight: 700; cursor: pointer; transition: border-color 0.12s ease, background 0.12s ease, transform 0.12s ease; } .runtime-segmented-btn { flex: 1; padding: 11px 12px; } .runtime-segmented-btn.active { border-color: rgba(72, 166, 255, 0.55); background: rgba(72, 166, 255, 0.16); } .runtime-field-input, .runtime-static-value { width: 100%; min-height: 44px; border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.03); color: var(--text); padding: 11px 13px; font-size: 14px; font-family: inherit; } .runtime-static-value { display: flex; align-items: center; } .runtime-field-select { appearance: none; } .runtime-static-value-path { word-break: break-all; } .runtime-grid-two { display: grid; gap: 12px; } .runtime-field-row { display: flex; justify-content: space-between; gap: 14px; align-items: flex-end; margin-bottom: 14px; } .runtime-field-row-top { align-items: flex-start; } .runtime-field-support { color: var(--text2); font-size: 13px; line-height: 1.5; } .runtime-inline-actions { display: flex; gap: 8px; flex-wrap: wrap; } .runtime-inline-btn, .runtime-preset, .runtime-chip { border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.04); color: var(--text); font-family: inherit; cursor: pointer; } .runtime-inline-btn { min-height: 40px; padding: 0 12px; font-size: 13px; font-weight: 700; } .runtime-inline-btn:disabled { opacity: 0.55; cursor: not-allowed; } .runtime-chip-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; } .runtime-chip { display: inline-flex; align-items: center; gap: 8px; padding: 8px 10px; font-size: 12px; } .runtime-chip span { color: var(--text3); } .runtime-preset-row { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; } .runtime-preset { padding: 8px 12px; font-size: 12px; font-weight: 700; } .runtime-preset.active { border-color: rgba(72, 166, 255, 0.55); background: rgba(72, 166, 255, 0.16); } .runtime-checkbox-row { display: flex; gap: 10px; align-items: flex-start; color: var(--text2); font-size: 14px; line-height: 1.5; } .runtime-error-banner { border-radius: 12px; border: 1px solid rgba(240, 64, 64, 0.18); background: rgba(240, 64, 64, 0.08); color: #ffb7b7; padding: 12px 14px; line-height: 1.5; } .runtime-warning-banner { border-radius: 12px; border: 1px solid rgba(243, 211, 139, 0.18); background: rgba(243, 211, 139, 0.08); color: #f3d38b; padding: 12px 14px; line-height: 1.5; } .runtime-footer-btn { flex: 1; padding: 12px 14px; } .runtime-footer-btn:active:not(:disabled), .runtime-segmented-btn:active:not(:disabled) { transform: scale(0.98); } .runtime-footer-btn:disabled { opacity: 0.55; cursor: not-allowed; } .runtime-footer-btn-secondary:hover:not(:disabled) { border-color: var(--accent); } .runtime-footer-btn-primary { color: #fff; border-color: rgba(72, 166, 255, 0.55); background: linear-gradient(135deg, #2c8ce8, #49c0ff); } @media (max-width: 720px) { .runtime-drawer { width: 100%; } .runtime-overview-card, .runtime-grid-two, .runtime-field-row { grid-template-columns: 1fr; flex-direction: column; align-items: stretch; } .runtime-drawer-footer { flex-direction: column; } }