html.arch-panel-extension-modal-open, body.arch-panel-extension-modal-open { overflow: hidden !important; } .arch-panel-extension-entry { --arch-panel-bg: rgba(255, 255, 255, 0.12); --arch-panel-bg-hover: rgba(255, 255, 255, 0.2); --arch-panel-border: rgba(255, 255, 255, 0.26); --arch-panel-fg: #ffffff; --arch-panel-focus: rgba(255, 255, 255, 0.72); --arch-panel-font: inherit; --arch-workbench-header: #4b335d; --arch-workbench-accent: #6c4d80; display: inline-flex; align-items: center; margin-inline-end: 12px; flex: 0 0 auto; } .arch-panel-extension-button { appearance: none; border: 1px solid var(--arch-panel-border); background: var(--arch-panel-bg); color: var(--arch-panel-fg); border-radius: 999px; min-height: 36px; padding: 0 14px; display: inline-flex; align-items: center; justify-content: center; font-family: var(--arch-panel-font); font-size: 13px; font-weight: 600; line-height: 1; letter-spacing: 0.01em; cursor: pointer; transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease; } .arch-panel-extension-button:hover { background: var(--arch-panel-bg-hover); } .arch-panel-extension-button:active { transform: translateY(1px); } .arch-panel-extension-button:focus-visible, .arch-panel-extension-close:focus-visible, .arch-panel-extension-theme-toggle:focus-visible, .arch-panel-extension-sidebar-button:focus-visible, .arch-panel-extension-sidebar-toggle:focus-visible, .arch-panel-extension-utility-button:focus-visible, .arch-panel-extension-summary-card-button:focus-visible, .arch-panel-extension-sort-button:focus-visible, .arch-panel-extension-indicator-card:focus-visible, .arch-panel-extension-row-link:focus-visible { outline: 2px solid var(--arch-panel-focus); outline-offset: 2px; } #arch-panel-extension-hcm-tile { cursor: pointer; } #arch-panel-extension-hcm-tile:focus-visible { outline: 2px solid #0b5cab; outline-offset: 3px; } .arch-panel-extension-overlay { position: fixed; inset: 0; z-index: 2147483647; display: flex; opacity: 0; pointer-events: none; background: rgba(13, 17, 24, 0.56); backdrop-filter: blur(8px); transition: opacity 160ms ease; } .arch-panel-extension-overlay.is-open { opacity: 1; pointer-events: auto; } .arch-panel-extension-dialog { width: 100vw; height: 100vh; display: grid; grid-template-rows: auto 1fr; --wb-app-bg: #f5f4f3; --wb-panel: #ffffff; --wb-panel-soft: #fafafa; --wb-sidebar: #f3f2f1; --wb-border: #d9d9d9; --wb-border-strong: #c8c8c8; --wb-row-divider: #e6e6e6; --wb-divider: #ececec; --wb-row-hover: #f9fbfc; --wb-text: #1f1f1f; --wb-text-secondary: #5f6670; --wb-text-muted: #7b8189; --wb-link: #006b9a; --wb-info: #dceef7; --wb-success: #3fa35c; --wb-warning: #d94f2b; --wb-shadow: 0 1px 2px rgba(31, 31, 31, 0.04); --arch-workbench-header-fallback: #3f2d4f; --arch-workbench-accent-fallback: #684b78; --arch-shell-header-text: #ffffff; --arch-shell-header-muted: rgba(255, 255, 255, 0.82); --arch-shell-header-subtle: rgba(255, 255, 255, 0.68); background: var(--wb-app-bg); color: var(--wb-text); font-family: "Oracle Sans", "Segoe UI", Arial, sans-serif; } .arch-panel-extension-dialog[data-theme="dark"] { --wb-app-bg: #141b24; --wb-panel: #1f2833; --wb-panel-soft: #273240; --wb-sidebar: #19222c; --wb-border: #364150; --wb-border-strong: #566171; --wb-row-divider: #333d4b; --wb-divider: #303a46; --wb-row-hover: #273240; --wb-text: #f4f7fb; --wb-text-secondary: #c6d0da; --wb-text-muted: #9ca8b5; --wb-link: #84c7e3; --wb-info: #233847; --wb-success: #5ec280; --wb-warning: #f0946c; --wb-shadow: none; --arch-workbench-header-fallback: #202a36; --arch-workbench-accent-fallback: #39495b; } .arch-panel-extension-dialog * { box-sizing: border-box; } .arch-panel-extension-shell-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 64px; padding: 12px 24px; background: linear-gradient( 135deg, var(--arch-workbench-header, var(--arch-workbench-header-fallback)) 0%, var(--arch-workbench-accent, var(--arch-workbench-accent-fallback)) 100% ); border-bottom: 1px solid rgba(255, 255, 255, 0.16); box-shadow: 0 8px 24px rgba(31, 31, 31, 0.16); color: var(--arch-shell-header-text); } .arch-panel-extension-brand { display: flex; align-items: center; gap: 14px; min-width: 0; } .arch-panel-extension-brand-mark { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; border-radius: 6px; background: rgba(255, 255, 255, 0.18); color: var(--arch-shell-header-text); font-size: 14px; font-weight: 700; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16); } .arch-panel-extension-brand-label { margin: 0 0 2px; color: var(--arch-shell-header-muted); font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; } .arch-panel-extension-title { margin: 0; color: var(--arch-shell-header-text); font-size: 24px; line-height: 1.2; font-weight: 600; letter-spacing: -0.01em; } .arch-panel-extension-shell-actions { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; } .arch-panel-extension-shell-note { max-width: 36vw; overflow: hidden; color: var(--arch-shell-header-muted); font-size: 12px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; } .arch-panel-extension-theme-toggle { appearance: none; min-height: 34px; padding: 0 14px; border: 1px solid rgba(255, 255, 255, 0.28); border-radius: 4px; background: rgba(255, 255, 255, 0.12); color: var(--arch-shell-header-text); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease; } .arch-panel-extension-shell-header .arch-panel-extension-theme-toggle:hover { border-color: rgba(255, 255, 255, 0.44); background: rgba(255, 255, 255, 0.2); } .arch-panel-extension-close { appearance: none; min-height: 34px; padding: 0 14px; border: 1px solid var(--wb-border); border-radius: 4px; background: var(--wb-panel-soft); color: var(--wb-text); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; box-shadow: none; } .arch-panel-extension-close:hover { border-color: var(--wb-border-strong); background: var(--wb-row-hover); } .arch-panel-extension-shell-header .arch-panel-extension-close { border-color: rgba(255, 255, 255, 0.28); background: rgba(255, 255, 255, 0.12); color: var(--arch-shell-header-text); } .arch-panel-extension-shell-header .arch-panel-extension-close:hover { border-color: rgba(255, 255, 255, 0.42); background: rgba(255, 255, 255, 0.16); } .arch-panel-extension-detail-dialog .arch-panel-extension-close { border-color: var(--wb-border); background: var(--wb-panel-soft); color: var(--wb-text); box-shadow: none; } .arch-panel-extension-sidebar-button, .arch-panel-extension-utility-button { appearance: none; min-height: 34px; padding: 0 14px; border: 1px solid var(--wb-border); border-radius: 4px; background: var(--wb-panel); color: var(--wb-text); font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; } .arch-panel-extension-utility-button.is-primary { border-color: #0b5cab; background: #0b5cab; color: #ffffff; text-shadow: 0 1px 0 rgba(0, 0, 0, 0.16); box-shadow: 0 8px 18px rgba(11, 92, 171, 0.24); } .arch-panel-extension-utility-button.is-primary:hover { border-color: #084a8a; background: #084a8a; } .arch-panel-extension-utility-button.is-primary:disabled { border-color: var(--wb-border); background: var(--wb-panel-soft); color: var(--wb-text-muted); box-shadow: none; cursor: not-allowed; } .arch-panel-extension-utility-button.is-outline { border-color: #0b5cab; background: transparent; color: #0b5cab; } .arch-panel-extension-utility-button.is-outline:hover:not(:disabled) { background: rgba(11, 92, 171, 0.08); } .arch-panel-extension-utility-button.is-outline:disabled { border-color: var(--wb-border); background: transparent; color: var(--wb-text-muted); cursor: not-allowed; opacity: 0.62; } .arch-panel-extension-shell-body { display: grid; grid-template-columns: 260px minmax(0, 1fr); min-height: 0; position: relative; } .arch-panel-extension-shell-body.is-sidebar-collapsed { grid-template-columns: 44px minmax(0, 1fr); } .arch-panel-extension-sidebar { position: relative; background: var(--wb-sidebar); border-right: 1px solid var(--wb-border); padding: 44px 14px 20px; } .arch-panel-extension-sidebar.is-collapsed { padding: 44px 6px 20px; } .arch-panel-extension-sidebar.is-collapsed .arch-panel-extension-sidebar-group { display: none; } .arch-panel-extension-sidebar-toggle { position: absolute; top: 10px; right: 8px; display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border: 1px solid transparent; border-radius: 6px; background: transparent; color: var(--wb-text-muted); cursor: pointer; padding: 0; } .arch-panel-extension-sidebar-toggle:hover { border-color: var(--wb-border); background: var(--wb-panel); color: var(--wb-text); } .arch-panel-extension-sidebar-toggle svg { width: 16px; height: 16px; fill: currentColor; pointer-events: none; } .arch-panel-extension-sidebar-group + .arch-panel-extension-sidebar-group { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--wb-border); } .arch-panel-extension-sidebar-label, .arch-panel-extension-page-eyebrow, .arch-panel-extension-panel-label, .arch-panel-extension-state-eyebrow { margin: 0 0 8px; color: var(--wb-text-muted); font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; } .arch-panel-extension-sidebar-data { display: grid; gap: 6px; color: var(--wb-text-secondary); font-size: 12px; } .arch-panel-extension-sidebar-data strong { color: var(--wb-text); font-size: 13px; } .arch-panel-extension-current-user-card { display: grid; justify-items: start; gap: 10px; } .arch-panel-extension-current-user-avatar { width: 48px; height: 48px; border: 1px solid var(--wb-border); border-radius: 999px; background: var(--wb-panel); box-shadow: var(--wb-shadow); color: var(--wb-text); object-fit: cover; } .arch-panel-extension-current-user-avatar.is-fallback { display: inline-grid; place-items: center; background: var(--arch-workbench-header, var(--arch-workbench-header-fallback)); color: #ffffff; font-size: 15px; font-weight: 700; letter-spacing: 0.02em; } .arch-panel-extension-sidebar-button { width: 100%; justify-content: center; display: inline-flex; align-items: center; border-color: var(--wb-border); background: var(--wb-panel); color: var(--wb-text); } .arch-panel-extension-sidebar-button + .arch-panel-extension-sidebar-button { margin-top: 8px; } .arch-panel-extension-main-shell { display: flex; flex-direction: column; min-width: 0; overflow: auto; overflow-anchor: none; background: var(--wb-app-bg); padding: 20px 24px 24px; } .arch-panel-extension-main-shell:has(.arch-panel-extension-state-card) { grid-column: 1 / -1; align-items: stretch; justify-content: center; min-height: min(720px, calc(100vh - 120px)); } .arch-panel-extension-page-hero { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 18px; } .arch-panel-extension-page-title, .arch-panel-extension-state-title { margin: 0; color: var(--wb-text); font-size: 34px; line-height: 1.15; font-weight: 700; } .arch-panel-extension-page-subtitle, .arch-panel-extension-state-copy { margin: 10px 0 0; max-width: 760px; color: var(--wb-text-secondary); font-size: 13px; line-height: 1.55; } .arch-panel-extension-hero-aside { display: grid; gap: 8px; justify-items: end; } .arch-panel-extension-hero-pill { display: inline-flex; align-items: center; min-height: 28px; padding: 0 10px; border: 1px solid var(--wb-border); border-radius: 14px; background: var(--wb-info); color: var(--wb-text); font-size: 12px; font-weight: 600; } .arch-panel-extension-hero-note { color: var(--wb-text-secondary); font-size: 12px; } .arch-panel-extension-summary-row, .arch-panel-extension-indicator-grid, .arch-panel-extension-status-grid, .arch-panel-extension-content-grid, .arch-panel-extension-boolean-grid { display: grid; gap: 14px; } .arch-panel-extension-summary-row { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 16px; } .arch-panel-extension-indicator-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 16px; } .arch-panel-extension-status-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 16px; } .arch-panel-extension-content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .arch-panel-extension-summary-card, .arch-panel-extension-panel, .arch-panel-extension-indicator-card, .arch-panel-extension-state-card { border: 1px solid var(--wb-border); border-radius: 8px; background: var(--wb-panel); box-shadow: var(--wb-shadow); } .arch-panel-extension-summary-card, .arch-panel-extension-state-card, .arch-panel-extension-indicator-card { padding: 16px; } .arch-panel-extension-state-card { width: 100%; min-height: 320px; display: flex; flex-direction: column; justify-content: center; padding: 34px 40px; } .arch-panel-extension-loading-progress { display: grid; gap: 10px; width: 100%; margin-top: 30px; } .arch-panel-extension-loading-progress-meta { display: flex; align-items: center; justify-content: flex-start; gap: 16px; color: var(--wb-text-secondary); font-size: 12px; font-weight: 700; } .arch-panel-extension-loading-progress-track { position: relative; height: 30px; overflow: hidden; border: 1px solid color-mix(in srgb, var(--wb-accent) 50%, var(--wb-border-strong)); border-radius: 8px; background: color-mix(in srgb, var(--wb-panel-soft) 68%, #000000); } .arch-panel-extension-loading-progress-fill { position: absolute; inset: 0 auto 0 0; width: 0; min-width: 0; border-radius: inherit; background: linear-gradient(90deg, #1f7a4d, #2fbf71); transition: width 520ms ease; } .arch-panel-extension-loading-progress-value { position: absolute; inset: 0 auto 0 50%; transform: translateX(-50%); display: flex; align-items: center; justify-content: center; min-width: 54px; margin: 4px 0; padding: 0 8px; border: 1px solid rgba(255, 255, 255, 0.26); border-radius: 999px; background: rgba(7, 12, 18, 0.72); color: #ffffff; font-size: 12px; font-weight: 800; line-height: 1; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.28); text-shadow: none; pointer-events: none; } .arch-panel-extension-summary-card-button { appearance: none; width: 100%; text-align: left; color: inherit; font: inherit; line-height: inherit; cursor: pointer; } .arch-panel-extension-panel { padding: 16px; } .arch-panel-extension-summary-label, .arch-panel-extension-summary-detail, .arch-panel-extension-indicator-label, .arch-panel-extension-indicator-subtitle, .arch-panel-extension-indicator-total, .arch-panel-extension-insight-detail, .arch-panel-extension-stage-detail { margin: 0; } .arch-panel-extension-summary-label, .arch-panel-extension-indicator-label { color: var(--wb-text-secondary); font-size: 12px; } .arch-panel-extension-summary-value, .arch-panel-extension-indicator-value { margin: 8px 0 4px; color: var(--wb-text); font-size: 26px; line-height: 1.2; font-weight: 700; } .arch-panel-extension-summary-detail, .arch-panel-extension-indicator-subtitle, .arch-panel-extension-indicator-total { color: var(--wb-text-muted); font-size: 11px; } .arch-panel-extension-indicator-card { appearance: none; text-align: left; color: inherit; cursor: pointer; } .arch-panel-extension-boolean-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 12px; } .arch-panel-extension-progress { display: grid; gap: 8px; margin-bottom: 12px; } .arch-panel-extension-progress-track { display: flex; width: 100%; height: 10px; overflow: hidden; border-radius: 999px; background: var(--wb-panel-soft); border: 1px solid var(--wb-border); } .arch-panel-extension-progress-segment { height: 100%; } .arch-panel-extension-progress-segment.is-success { background: linear-gradient(90deg, #7fd29a, #3fa35c); } .arch-panel-extension-progress-segment.is-danger { background: linear-gradient(90deg, #f2a28d, #d94f2b); } .arch-panel-extension-progress-labels { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--wb-text-secondary); font-size: 11px; font-weight: 600; } .arch-panel-extension-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; } .arch-panel-extension-panel-title { margin: 0; color: var(--wb-text); font-size: 16px; font-weight: 600; } .arch-panel-extension-panel-meta { display: flex; align-items: center; gap: 8px; color: var(--wb-text-muted); font-size: 12px; } .arch-panel-extension-operations-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .arch-panel-extension-sr-hour-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-content: start; } .arch-panel-extension-calendar-card { min-width: 0; } .arch-panel-extension-calendar-actions { display: inline-flex; align-items: center; gap: 8px; color: var(--wb-text-muted); font-size: 12px; } .arch-panel-extension-calendar-view-toggle { display: inline-flex; align-items: center; overflow: hidden; border: 1px solid var(--wb-border); border-radius: 4px; background: var(--wb-panel-soft); } .arch-panel-extension-calendar-view-button { appearance: none; min-height: 28px; padding: 0 9px; border: 0; border-right: 1px solid var(--wb-border); background: transparent; color: var(--wb-text-secondary); font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; } .arch-panel-extension-calendar-view-button:last-child { border-right: 0; } .arch-panel-extension-calendar-view-button:hover { background: var(--wb-row-hover); color: var(--wb-text); } .arch-panel-extension-calendar-view-button.is-active { background: #0b5cab; color: #ffffff; } .arch-panel-extension-calendar-nav { appearance: none; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border: 1px solid var(--wb-border); border-radius: 4px; background: var(--wb-panel-soft); color: var(--wb-text); font-size: 18px; line-height: 1; cursor: pointer; } .arch-panel-extension-calendar-nav:hover { border-color: var(--wb-accent); color: var(--wb-accent); } .arch-panel-extension-calendar-today { appearance: none; min-height: 28px; padding: 0 10px; border: 1px solid var(--wb-border); border-radius: 4px; background: var(--wb-panel-soft); color: var(--wb-text); font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; } .arch-panel-extension-calendar-today:hover { border-color: var(--wb-accent); color: var(--wb-accent); } .arch-panel-extension-calendar-weekdays, .arch-panel-extension-calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); } .arch-panel-extension-calendar-weekdays { gap: 6px; margin-bottom: 6px; color: var(--wb-text-muted); font-size: 11px; font-weight: 700; text-transform: uppercase; } .arch-panel-extension-calendar-weekdays span { padding: 0 6px; } .arch-panel-extension-calendar-grid { gap: 6px; } .arch-panel-extension-calendar-grid.is-week { min-height: 300px; } .arch-panel-extension-calendar-day { appearance: none; position: relative; display: block; width: 100%; text-align: left; min-height: 74px; overflow: hidden; border: 1px solid var(--wb-border); border-radius: 6px; background: var(--wb-panel-soft); padding: 7px; font: inherit; cursor: pointer; } .arch-panel-extension-calendar-day.is-week-day { display: flex; flex-direction: column; min-height: 300px; padding: 0; overflow: hidden; } .arch-panel-extension-calendar-week-day-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 38px; padding: 8px 9px; border-bottom: 1px solid var(--wb-border); background: color-mix(in srgb, var(--wb-panel) 72%, var(--wb-panel-soft)); } .arch-panel-extension-calendar-day.is-week-day .arch-panel-extension-calendar-week-number { position: static; font-size: 9px; opacity: 0.76; } .arch-panel-extension-calendar-week-workloads { display: flex; flex: 1; flex-direction: column; gap: 7px; padding: 8px; overflow: auto; } .arch-panel-extension-calendar-week-workload { display: block; border-left: 3px solid #d94f2b; border-radius: 5px; background: rgba(217, 79, 43, 0.14); padding: 7px 8px; color: var(--wb-text); text-align: left; } .arch-panel-extension-calendar-week-workload-title, .arch-panel-extension-calendar-week-workload-meta { display: block; overflow: hidden; text-overflow: ellipsis; } .arch-panel-extension-calendar-week-workload-title { font-size: 11px; font-weight: 700; line-height: 1.25; } .arch-panel-extension-calendar-week-workload-meta { margin-top: 3px; color: var(--wb-text-secondary); font-size: 10px; line-height: 1.2; white-space: nowrap; } .arch-panel-extension-calendar-week-empty { margin: auto; color: var(--wb-text-muted); font-size: 11px; font-weight: 600; } .arch-panel-extension-calendar-day:disabled { cursor: default; } .arch-panel-extension-calendar-day.has-workload:hover { border-color: #f26c4f; background: rgba(217, 79, 43, 0.22); } .arch-panel-extension-calendar-day.is-muted { opacity: 0.42; } .arch-panel-extension-calendar-day.is-today { border-color: var(--wb-accent); box-shadow: inset 0 0 0 1px var(--wb-accent); } .arch-panel-extension-calendar-day.has-workload { border-color: rgba(217, 79, 43, 0.82); background: rgba(217, 79, 43, 0.14); } .arch-panel-extension-calendar-date { color: var(--wb-text); font-size: 12px; font-weight: 800; } .arch-panel-extension-calendar-week-number { position: absolute; right: 7px; bottom: 6px; color: var(--wb-text-muted); font-size: 9px; font-weight: 800; letter-spacing: 0.04em; opacity: 0.72; pointer-events: none; } .arch-panel-extension-calendar-workload { display: block; margin-top: 8px; color: var(--wb-text); font-size: 11px; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } .arch-panel-extension-calendar-count { position: absolute; top: 6px; right: 6px; display: flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: #d94f2b; color: #ffffff; font-size: 11px; font-weight: 800; } .arch-panel-extension-empty-state { border: 1px dashed var(--wb-border); border-radius: 8px; padding: 16px; color: var(--wb-text-muted); font-size: 13px; } .arch-panel-extension-panel-dot { width: 4px; height: 4px; border-radius: 50%; background: var(--wb-border-strong); } .arch-panel-extension-table-wrap { overflow: auto; border: 1px solid var(--wb-border); border-radius: 6px; } .arch-panel-extension-table-wrap.is-detail { max-height: calc(100vh - 220px); } .arch-panel-extension-table-wrap.is-sr-list { overflow: auto; } .arch-panel-extension-table-wrap.is-ramp-pivot { max-height: min(460px, calc(100vh - 260px)); } .arch-panel-extension-table { width: 100%; border-collapse: collapse; background: var(--wb-panel); } .arch-panel-extension-table th, .arch-panel-extension-table td { padding: 12px 14px; border-bottom: 1px solid var(--wb-row-divider); font-size: 12px; text-align: left; white-space: nowrap; } .arch-panel-extension-table th { background: var(--wb-panel-soft); color: var(--wb-text-secondary); font-weight: 600; } .arch-panel-extension-table td { color: var(--wb-text); } .arch-panel-extension-ramp-pivot-table th:first-child { min-width: 150px; position: sticky; left: 0; z-index: 1; } .arch-panel-extension-ramp-pivot-table tbody th { background: var(--wb-panel-soft); color: var(--wb-text-secondary); font-weight: 700; } .arch-panel-extension-ramp-pivot-table .is-delta-different { color: #d94f2b; font-weight: 800; } .arch-panel-extension-sr-table td { white-space: normal; vertical-align: top; } .arch-panel-extension-sr-main { width: 78%; } .arch-panel-extension-sr-side { width: 22%; text-align: right; } .arch-panel-extension-sr-line { display: flex; flex-wrap: wrap; gap: 10px 14px; margin-top: 6px; } .arch-panel-extension-sr-line.is-head { margin-top: 0; } .arch-panel-extension-sr-customer { color: var(--wb-text); font-size: 13px; } .arch-panel-extension-sr-moment { color: var(--wb-text); font-size: 18px; font-weight: 700; } .arch-panel-extension-sr-exact, .arch-panel-extension-sr-hours { margin-top: 6px; color: var(--wb-text-secondary); font-size: 12px; } .arch-panel-extension-table-empty { padding: 18px; border: 1px dashed var(--wb-border); border-radius: 8px; color: var(--wb-text-secondary); font-size: 13px; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-table { table-layout: fixed; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-col-opportunity { width: 14%; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-col-customer { width: 16%; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-col-workload { width: auto; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-col-acr { width: 11%; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-col-type { width: 11%; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-col-flag { width: 9%; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-table th:nth-child(3), .arch-panel-extension-table-wrap.is-main .arch-panel-extension-table td:nth-child(3) { white-space: normal; overflow-wrap: anywhere; word-break: break-word; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-table td:nth-child(3) .arch-panel-extension-row-link { display: block; } .arch-panel-extension-table-wrap.is-main .arch-panel-extension-table th:nth-child(2), .arch-panel-extension-table-wrap.is-main .arch-panel-extension-table td:nth-child(2) { white-space: normal; overflow-wrap: anywhere; } .arch-panel-extension-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 54px; min-height: 24px; padding: 0 10px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: 0.02em; } .arch-panel-extension-badge.is-success { background: #dcfce7; border: 1px solid #86efac; color: #166534; } .arch-panel-extension-badge.is-danger { background: #fee2e2; border: 1px solid #fca5a5; color: #991b1b; } .arch-panel-extension-action-cell { display: inline-flex; align-items: center; gap: 8px; } .arch-panel-extension-add-action-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; padding: 0; border: 1px solid var(--wb-border); border-radius: 999px; background: var(--wb-panel-soft); color: var(--wb-text); font: inherit; font-size: 18px; line-height: 1; cursor: pointer; } .arch-panel-extension-table tbody tr:hover { background: var(--wb-row-hover); } .arch-panel-extension-table th.is-numeric, .arch-panel-extension-table td.is-numeric { text-align: right; } .arch-panel-extension-row-link { appearance: none; padding: 0; border: 0; background: transparent; color: var(--wb-link); font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; text-decoration: none; } .arch-panel-extension-workload-link-cell { display: inline-flex; align-items: center; gap: 7px; } .arch-panel-extension-ramp-alert-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; padding: 0; border: 1px solid #d94f2b; border-radius: 999px; background: #fee2e2; color: #991b1b; font: inherit; font-size: 12px; font-weight: 900; line-height: 1; cursor: pointer; } .arch-panel-extension-ramp-alert-button:hover { background: #fecaca; } .arch-panel-extension-insight-list, .arch-panel-extension-stage-list, .arch-panel-extension-side-column { display: grid; gap: 14px; } .arch-panel-extension-insight { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-top: 12px; border-top: 1px solid var(--wb-divider); } .arch-panel-extension-insight:first-child { padding-top: 0; border-top: 0; } .arch-panel-extension-insight-label, .arch-panel-extension-stage-label { margin: 0 0 4px; color: var(--wb-text); font-size: 12px; font-weight: 600; } .arch-panel-extension-insight-detail, .arch-panel-extension-stage-detail { color: var(--wb-text-muted); font-size: 11px; line-height: 1.45; } .arch-panel-extension-insight-value { margin: 0; color: var(--wb-text); font-size: 16px; font-weight: 700; text-align: right; } .arch-panel-extension-stage-row { display: grid; gap: 8px; } .arch-panel-extension-stage-copy { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; } .arch-panel-extension-stage-values { display: grid; justify-items: end; gap: 2px; color: var(--wb-text-secondary); font-size: 12px; } .arch-panel-extension-stage-detail-row { color: var(--wb-text-secondary); font-size: 12px; } .arch-panel-extension-stage-bar { position: relative; height: 8px; border-radius: 999px; overflow: hidden; background: color-mix(in srgb, var(--wb-text-secondary) 14%, transparent); } .arch-panel-extension-stage-bar span { position: absolute; inset: 0 auto 0 0; border-radius: inherit; background: linear-gradient(90deg, var(--wb-accent), color-mix(in srgb, var(--wb-accent) 52%, #ffffff)); } .arch-panel-extension-detail-overlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(10, 14, 20, 0.68); backdrop-filter: blur(6px); } .arch-panel-extension-time-drawer { position: absolute; top: 0; right: 0; bottom: 0; z-index: 2; width: min(560px, calc(100vw - 32px)); display: flex; flex-direction: column; gap: 14px; padding: 18px; border-left: 1px solid var(--wb-border); background: var(--wb-panel); box-shadow: -18px 0 42px rgba(0, 0, 0, 0.28); overflow: auto; animation: arch-panel-extension-slide-in 180ms ease-out; } .arch-panel-extension-time-drawer-head { position: sticky; top: -18px; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 0 0 12px; border-bottom: 1px solid var(--wb-border); background: var(--wb-panel); } .arch-panel-extension-time-drawer-close { border-color: var(--wb-border); background: var(--wb-panel-soft); color: var(--wb-text); box-shadow: none; } .arch-panel-extension-time-drawer-close:hover { border-color: var(--wb-border-strong); background: var(--wb-row-hover); } .arch-panel-extension-time-drawer-actions { position: sticky; bottom: -18px; display: flex; justify-content: flex-end; margin: auto -18px -18px; padding: 12px 18px 18px; border-top: 1px solid var(--wb-border); background: linear-gradient(180deg, rgba(23, 30, 39, 0), var(--wb-panel) 30%); } .arch-panel-extension-time-drawer-meta { display: flex; gap: 8px; color: var(--wb-text-muted); font-size: 12px; } .arch-panel-extension-time-drawer-state, .arch-panel-extension-time-drawer-json { border: 1px solid var(--wb-border); border-radius: 8px; background: var(--wb-panel-soft); padding: 14px; } .arch-panel-extension-time-drawer-state.is-error { border-color: rgba(217, 79, 43, 0.42); } .arch-panel-extension-time-entry-group { display: grid; gap: 10px; } .arch-panel-extension-time-entry-group + .arch-panel-extension-time-entry-group { padding-top: 12px; border-top: 1px solid var(--wb-border); } .arch-panel-extension-time-entry-group-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; } .arch-panel-extension-time-entry-group-head h4 { margin: 3px 0 0; color: var(--wb-text); font-size: 16px; line-height: 1.25; } .arch-panel-extension-time-entry-group-head span { color: var(--wb-text-muted); font-size: 12px; white-space: nowrap; } .arch-panel-extension-time-entry-table-wrap { overflow: auto; border: 1px solid var(--wb-border); border-radius: 8px; } .arch-panel-extension-time-entry-table { width: 100%; border-collapse: collapse; background: var(--wb-panel); } .arch-panel-extension-time-entry-table th, .arch-panel-extension-time-entry-table td { padding: 10px 12px; border-bottom: 1px solid var(--wb-row-divider); color: var(--wb-text); font-size: 12px; text-align: left; vertical-align: top; } .arch-panel-extension-time-entry-table th { background: var(--wb-panel-soft); color: var(--wb-text-secondary); font-weight: 700; } .arch-panel-extension-time-entry-table tfoot th { border-bottom: 0; color: var(--wb-text); } .arch-panel-extension-time-entry-table .is-numeric { text-align: right; white-space: nowrap; } .arch-panel-extension-time-drawer-json summary { color: var(--wb-link); font-size: 12px; font-weight: 700; cursor: pointer; } .arch-panel-extension-time-drawer-json pre { max-height: 320px; margin: 12px 0 0; overflow: auto; color: var(--wb-text); font-size: 11px; line-height: 1.5; white-space: pre-wrap; } @keyframes arch-panel-extension-slide-in { from { transform: translateX(100%); } to { transform: translateX(0); } } .arch-panel-extension-detail-dialog { width: min(1520px, calc(100vw - 32px)); max-height: calc(100vh - 88px); display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--wb-border); border-radius: 10px; background: var(--wb-panel); box-shadow: var(--wb-shadow); padding: 18px; } .arch-panel-extension-ramp-dialog { width: min(1320px, calc(100vw - 48px)); max-height: calc(100vh - 120px); display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--wb-border); border-radius: 10px; background: var(--wb-panel); box-shadow: var(--wb-shadow); padding: 18px; } .arch-panel-extension-action-dialog { width: min(980px, calc(100vw - 32px)); max-height: calc(100vh - 88px); overflow: auto; border: 1px solid var(--wb-border); border-radius: 10px; background: var(--wb-panel); box-shadow: var(--wb-shadow); padding: 18px; } .arch-panel-extension-time-management-dialog { width: min(1760px, calc(100vw - 20px)); max-height: calc(100vh - 88px); display: flex; flex-direction: column; gap: 14px; overflow: visible; border: 1px solid var(--wb-border); border-radius: 10px; background: var(--wb-panel); box-shadow: var(--wb-shadow); padding: 18px; } .arch-panel-extension-time-management-toolbar, .arch-panel-extension-time-management-card { border: 1px solid var(--wb-border); border-radius: 8px; background: var(--wb-panel-soft); padding: 14px; } .arch-panel-extension-time-management-card { position: relative; z-index: 1; display: grid; --arch-time-management-scrollbar-gutter: 16px; gap: 4px; min-height: 0; overflow: visible; } .arch-panel-extension-time-management-card.is-error { border-color: rgba(217, 79, 43, 0.42); } .arch-panel-extension-time-management-card:has(.arch-panel-extension-combobox:focus-within) { z-index: 40; } .arch-panel-extension-time-management-toolbar { display: flex; align-items: end; gap: 14px; flex-wrap: wrap; } .arch-panel-extension-time-management-hour-indicators { display: grid; grid-template-columns: repeat(4, minmax(92px, 1fr)); gap: 8px; flex: 1 1 520px; } .arch-panel-extension-time-management-hour-indicator { display: grid; gap: 3px; min-height: 48px; align-content: center; border: 1px solid var(--wb-border); border-radius: 8px; background: var(--wb-panel); padding: 7px 10px; } .arch-panel-extension-time-management-hour-indicator span { color: var(--wb-text-muted); font-size: 10px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; } .arch-panel-extension-time-management-hour-indicator strong { color: var(--wb-text); font-size: 16px; font-weight: 800; line-height: 1.1; } .arch-panel-extension-time-management-hour-indicator .arch-panel-extension-skeleton-text { width: 72%; } .arch-panel-extension-time-management-hour-indicator .arch-panel-extension-skeleton-title { width: 42%; height: 16px; } .arch-panel-extension-date-picker { position: relative; display: inline-flex; align-items: center; gap: 5px; width: auto; } .arch-panel-extension-date-input-shell { position: relative; display: inline-flex; align-items: center; } .arch-panel-extension-date-picker-button { position: absolute; top: 50%; right: 11px; z-index: 1; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border: 0; border-radius: 5px; background: transparent; color: var(--wb-text-muted); cursor: pointer; font-size: 0; line-height: 1; padding: 0; transform: translateY(-50%); } .arch-panel-extension-date-step-button { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 32px; border: 1px solid var(--wb-border); border-radius: 7px; background: var(--wb-panel); color: var(--wb-text-muted); cursor: pointer; padding: 0; } .arch-panel-extension-date-step-button svg { width: 16px; height: 16px; fill: currentColor; pointer-events: none; } .arch-panel-extension-date-step-button:hover { border-color: var(--wb-border-strong); background: var(--wb-row-hover); color: var(--wb-text); } .arch-panel-extension-date-picker-button svg { width: 16px; height: 16px; fill: currentColor; pointer-events: none; } .arch-panel-extension-date-picker-button:hover { background: var(--wb-row-hover); color: var(--wb-text); } .arch-panel-extension-date-picker-icon { display: none; position: absolute; left: 11px; z-index: 1; color: var(--wb-text-muted); font-size: 14px; pointer-events: none; } .arch-panel-extension-date-picker input { width: 118px; min-height: 32px; padding-left: 12px; padding-right: 38px; } .arch-panel-extension-form-field .arch-panel-extension-date-picker input { min-height: 32px; padding: 0 38px 0 12px; } .arch-panel-extension-date-picker input[readonly] { cursor: default; } .arch-panel-extension-date-picker-popover { position: absolute; top: calc(100% + 8px); left: 0; z-index: 6; width: 292px; border: 1px solid var(--wb-border); border-radius: 10px; background: var(--wb-panel); box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22); padding: 12px; } .arch-panel-extension-date-picker-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; } .arch-panel-extension-date-picker-head strong { color: var(--wb-text); font-size: 13px; } .arch-panel-extension-date-picker-weekdays, .arch-panel-extension-date-picker-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; } .arch-panel-extension-date-picker-weekdays { margin-bottom: 5px; color: var(--wb-text-muted); font-size: 10px; font-weight: 800; text-align: center; } .arch-panel-extension-date-picker-day { appearance: none; min-width: 0; height: 32px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: var(--wb-text); font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; } .arch-panel-extension-date-picker-day:hover { border-color: var(--wb-border-strong); background: var(--wb-row-hover); } .arch-panel-extension-date-picker-day.is-muted { color: var(--wb-text-muted); opacity: 0.55; } .arch-panel-extension-date-picker-day.is-today { border-color: #0b5cab; } .arch-panel-extension-date-picker-day.is-selected { border-color: #0b5cab; background: #0b5cab; color: #ffffff; } .arch-panel-extension-time-management-select-grid { display: grid; grid-template-columns: minmax(240px, 1.15fr) minmax(220px, 1fr) minmax(180px, 0.8fr); gap: 12px; } .arch-panel-extension-time-management-rows { display: grid; gap: 10px; max-height: min(52vh, 520px); min-height: 0; overflow-x: hidden; overflow-y: auto; padding: 4px 0; scrollbar-gutter: stable; } .arch-panel-extension-time-management-rows:has(.arch-panel-extension-combobox:focus-within) { overflow: visible; } .arch-panel-extension-time-management-rows:has(.arch-panel-extension-combobox-option.has-tooltip:hover) { overflow: visible; } .arch-panel-extension-time-management-empty { grid-column: 1 / -1; text-align: center; } .arch-panel-extension-time-management-header-row { display: grid; grid-template-columns: minmax(420px, 3.8fr) minmax(150px, 0.95fr) minmax(138px, 0.82fr) repeat(7, minmax(52px, 0.28fr)) 34px; align-items: center; gap: 6px; padding-right: var(--arch-time-management-scrollbar-gutter); } .arch-panel-extension-time-management-column-label { color: var(--wb-text-secondary); font-size: 12px; font-weight: 600; line-height: 1.2; } .arch-panel-extension-time-management-entry-row { position: relative; display: grid; grid-template-columns: minmax(420px, 3.8fr) minmax(150px, 0.95fr) minmax(138px, 0.82fr) repeat(7, minmax(52px, 0.28fr)) 34px; align-items: start; gap: 6px; } .arch-panel-extension-time-management-entry-row:has(.arch-panel-extension-combobox:focus-within) { z-index: 60; } .arch-panel-extension-time-management-entry-row.is-compact { align-items: center; } .arch-panel-extension-time-management-entry-row.is-duplicate-highlight { border-radius: 10px; animation: arch-panel-extension-duplicate-pulse 1100ms ease-in-out 2; box-shadow: inset 0 0 0 3px rgba(217, 79, 43, 0.9), 0 0 0 2px rgba(217, 79, 43, 0.12); padding: 4px; margin: -4px 0; } .arch-panel-extension-time-management-entry-row.is-compact .arch-panel-extension-form-field { gap: 0; } @keyframes arch-panel-extension-duplicate-pulse { 0% { box-shadow: inset 0 0 0 2px rgba(217, 79, 43, 0.35), 0 0 0 0 rgba(217, 79, 43, 0.22); } 45% { box-shadow: inset 0 0 0 3px rgba(217, 79, 43, 0.95), 0 0 0 6px rgba(217, 79, 43, 0.14); } 100% { box-shadow: inset 0 0 0 3px rgba(217, 79, 43, 0.72), 0 0 0 0 rgba(217, 79, 43, 0); } } .arch-panel-extension-combobox { position: relative; z-index: 0; display: block; } .arch-panel-extension-combobox:focus-within { z-index: 70; } .arch-panel-extension-combobox input { min-height: 40px; padding-left: 12px; padding-right: 38px; border-radius: 8px; background: color-mix(in srgb, var(--wb-panel-soft) 86%, var(--wb-panel)); color: transparent; transition: border-color 140ms ease, box-shadow 140ms ease, background 140ms ease; } .arch-panel-extension-combobox input::placeholder { color: transparent; } .arch-panel-extension-combobox:focus-within input::placeholder { color: var(--wb-text-muted); } .arch-panel-extension-combobox-value { position: absolute; top: 50%; right: 38px; left: 12px; z-index: 1; overflow: hidden; color: var(--wb-text); font-size: 12px; font-weight: 700; line-height: 1.25; pointer-events: none; text-overflow: ellipsis; transform: translateY(-50%); white-space: nowrap; } .arch-panel-extension-combobox-value-text { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .arch-panel-extension-combobox:focus-within .arch-panel-extension-combobox-value { display: none; } .arch-panel-extension-combobox.is-disabled { opacity: 0.72; } .arch-panel-extension-combobox.is-disabled .arch-panel-extension-combobox-value, .arch-panel-extension-combobox.is-disabled .arch-panel-extension-combobox-arrow { color: var(--wb-text-muted); } .arch-panel-extension-combobox.is-disabled input { cursor: not-allowed; } .arch-panel-extension-combobox.is-disabled:focus-within .arch-panel-extension-combobox-menu { display: none; } .arch-panel-extension-combobox input:focus { border-color: #0b5cab; background: var(--wb-panel); box-shadow: 0 0 0 3px rgba(11, 92, 171, 0.16); color: var(--wb-text); outline: none; } .arch-panel-extension-combobox-arrow { position: absolute; top: 50%; right: 12px; z-index: 1; display: inline-flex; width: 16px; height: 16px; color: var(--wb-text-muted); pointer-events: none; transform: translateY(-50%); } .arch-panel-extension-combobox-arrow svg { width: 100%; height: 100%; fill: currentColor; } .arch-panel-extension-combobox-menu { position: absolute; top: calc(100% + 6px); bottom: auto; left: 0; right: 0; z-index: 2147483000; display: none; max-height: 260px; overflow: auto; border: 1px solid var(--wb-border-strong); border-radius: 10px; background: var(--wb-panel); box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22); padding: 6px; } .arch-panel-extension-combobox-menu.has-service-request-tooltips { right: auto; width: min(1120px, calc(100vw - 72px)); max-height: min(58vh, 430px); overscroll-behavior: contain; padding-bottom: 12px; scroll-padding-block: 10px 18px; } .arch-panel-extension-combobox:focus-within .arch-panel-extension-combobox-menu { display: grid; gap: 4px; } .arch-panel-extension-combobox-option { appearance: none; display: grid; gap: 2px; position: relative; width: 100%; min-height: 38px; border: 0; border-radius: 8px; background: transparent; color: var(--wb-text); cursor: pointer; font: inherit; line-height: 1.25; padding: 8px 10px; text-align: left; } .arch-panel-extension-combobox-option:hover, .arch-panel-extension-combobox-option:focus, .arch-panel-extension-combobox-option.is-active { outline: none; background: var(--wb-row-hover); } .arch-panel-extension-combobox-option.is-active { box-shadow: inset 3px 0 0 #0b5cab; } .arch-panel-extension-combobox-option.is-selected { background: rgba(11, 92, 171, 0.12); color: var(--wb-text); padding-right: 32px; } .arch-panel-extension-combobox-option.is-selected::after { content: "✓"; position: absolute; top: 50%; right: 11px; color: #0b5cab; font-size: 14px; font-weight: 800; transform: translateY(-50%); } .arch-panel-extension-dialog[data-theme="dark"] .arch-panel-extension-combobox-option.is-selected::after { color: #9ed4f0; } .arch-panel-extension-combobox-option-main { color: var(--wb-text); font-size: 12px; font-weight: 700; } .arch-panel-extension-combobox-option-meta { color: var(--wb-text-muted); font-size: 11px; font-weight: 600; } .arch-panel-extension-combobox-option[hidden] { display: none; } .arch-panel-extension-combobox-option.has-tooltip { position: static; } .arch-panel-extension-combobox-option.has-tooltip.is-selected::after { display: none; } .arch-panel-extension-combobox-empty { color: var(--wb-text-muted); font-size: 12px; padding: 8px 9px; } .arch-panel-extension-service-request-tooltip { --arch-tooltip-panel: var(--wb-panel, #ffffff); --arch-tooltip-border: var(--wb-border-strong, #c8c8c8); --arch-tooltip-text: var(--wb-text, #1f1f1f); --arch-tooltip-muted: var(--wb-text-muted, #6f7782); --arch-tooltip-link: var(--wb-link, #006b9a); position: fixed; top: 10px; right: auto; bottom: auto; left: 10px; z-index: 2147483647; display: grid; gap: 10px; width: 420px; max-width: min(420px, calc(100vw - 96px)); max-height: min(360px, calc(100vh - 20px)); overflow: auto; visibility: hidden; opacity: 0; pointer-events: auto; border: 1px solid var(--arch-tooltip-border); border-radius: 8px; background: var(--arch-tooltip-panel); box-shadow: 0 18px 42px rgba(0, 0, 0, 0.24); color: var(--arch-tooltip-text); padding: 12px; transform: translateY(4px); transition: opacity 120ms ease 500ms, transform 120ms ease 500ms, visibility 0ms linear 500ms; } .arch-panel-extension-combobox-option.has-tooltip > .arch-panel-extension-service-request-tooltip { display: none; } .arch-panel-extension-service-request-tooltip-portal.is-visible { visibility: visible; opacity: 1; transform: translateY(0); transition-delay: 0ms; } .arch-panel-extension-combobox-option.has-tooltip:hover .arch-panel-extension-service-request-tooltip, .arch-panel-extension-combobox-option.has-tooltip:focus .arch-panel-extension-service-request-tooltip, .arch-panel-extension-combobox-option.has-tooltip.is-tooltip-active .arch-panel-extension-service-request-tooltip { visibility: visible; opacity: 1; transform: translateY(0); transition-delay: 0ms; } .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip:hover) .arch-panel-extension-combobox-option-main, .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip:focus) .arch-panel-extension-combobox-option-main, .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip.is-tooltip-active) .arch-panel-extension-combobox-option-main { max-width: calc(100% - var(--arch-service-request-tooltip-reserved-width, 448px)); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .arch-panel-extension-service-request-tooltip-title { display: block; color: var(--arch-tooltip-text); font-size: 12px; font-weight: 800; line-height: 1.35; } .arch-panel-extension-service-request-tooltip-grid { display: grid; grid-template-columns: minmax(110px, 0.42fr) minmax(0, 1fr); gap: 7px 10px; align-items: start; } .arch-panel-extension-service-request-tooltip-label { color: var(--arch-tooltip-muted); font-size: 10px; font-weight: 800; line-height: 1.35; text-transform: uppercase; } .arch-panel-extension-service-request-tooltip-value { min-width: 0; color: var(--arch-tooltip-text); font-size: 11px; font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; } .arch-panel-extension-service-request-tooltip-excerpt { display: block; } .arch-panel-extension-service-request-tooltip-more { display: grid; gap: 6px; margin-top: 4px; } .arch-panel-extension-service-request-tooltip-more summary { width: max-content; color: var(--arch-tooltip-link); cursor: pointer; font-size: 11px; font-weight: 800; list-style: none; } .arch-panel-extension-service-request-tooltip-more summary::-webkit-details-marker { display: none; } .arch-panel-extension-service-request-tooltip-more[open] summary { margin-bottom: 2px; } .arch-panel-extension-service-request-tooltip-value:has(.arch-panel-extension-service-request-tooltip-more[open]) .arch-panel-extension-service-request-tooltip-excerpt { display: none; } @media (max-width: 1180px) { .arch-panel-extension-combobox-menu.has-service-request-tooltips { width: min(760px, calc(100vw - 48px)); } .arch-panel-extension-service-request-tooltip { right: auto; bottom: auto; left: 10px; width: min(340px, calc(100% - 24px)); transform: translateY(4px); } .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip:hover) .arch-panel-extension-combobox-option-main, .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip:focus) .arch-panel-extension-combobox-option-main, .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip.is-tooltip-active) .arch-panel-extension-combobox-option-main { max-width: calc(100% - var(--arch-service-request-tooltip-reserved-width, 368px)); } .arch-panel-extension-combobox-option.has-tooltip:hover .arch-panel-extension-service-request-tooltip, .arch-panel-extension-combobox-option.has-tooltip:focus .arch-panel-extension-service-request-tooltip, .arch-panel-extension-combobox-option.has-tooltip.is-tooltip-active .arch-panel-extension-service-request-tooltip { transform: translateY(0); } } @media (max-width: 760px) { .arch-panel-extension-combobox-menu.has-service-request-tooltips { width: min(520px, calc(100vw - 32px)); } .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip:hover) .arch-panel-extension-combobox-option-main, .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip:focus) .arch-panel-extension-combobox-option-main, .arch-panel-extension-combobox-menu.has-service-request-tooltips:has(.arch-panel-extension-combobox-option.has-tooltip.is-tooltip-active) .arch-panel-extension-combobox-option-main { max-width: 100%; } .arch-panel-extension-service-request-tooltip { right: auto; bottom: auto; left: 8px; width: min(420px, calc(100vw - 48px)); max-height: min(320px, calc(100vh - 120px)); } } .arch-panel-extension-time-management-days { display: grid; grid-template-columns: repeat(7, minmax(110px, 1fr)); gap: 8px; } .arch-panel-extension-time-management-day { display: grid; gap: 6px; padding: 7px; border: 1px solid var(--wb-border); border-radius: 8px; background: var(--wb-panel); } .arch-panel-extension-time-management-day-head { display: grid; align-content: center; justify-items: center; gap: 1px; min-height: 22px; padding: 0; color: var(--wb-text-secondary); line-height: 1.15; text-align: center; } .arch-panel-extension-time-management-day-head strong { color: var(--wb-text-secondary); font-size: 12px; font-weight: 600; } .arch-panel-extension-time-management-day-head span { color: var(--wb-text-muted); font-size: 11px; font-weight: 600; text-transform: none; } .arch-panel-extension-time-management-day input { width: 100%; min-height: 30px; border: 1px solid var(--wb-border); border-radius: 6px; background: var(--wb-panel-soft); color: var(--wb-text); font: inherit; font-size: 12px; padding: 0 6px; text-align: right; } .arch-panel-extension-time-management-delete { appearance: none; align-self: center; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid var(--wb-border); border-radius: 7px; background: var(--wb-panel); color: var(--wb-text-muted); cursor: pointer; padding: 0; } .arch-panel-extension-time-management-delete:hover, .arch-panel-extension-time-management-delete:focus-visible { border-color: rgba(217, 79, 43, 0.52); background: rgba(217, 79, 43, 0.12); color: #d94f2b; outline: none; } .arch-panel-extension-time-management-delete svg { width: 16px; height: 16px; fill: currentColor; pointer-events: none; } .arch-panel-extension-time-management-request { border-top: 1px solid var(--wb-border); padding-top: 10px; } .arch-panel-extension-time-management-request summary { color: var(--wb-link); cursor: pointer; font-size: 12px; font-weight: 700; } .arch-panel-extension-time-management-request p { margin: 10px 0 4px; color: var(--wb-text-secondary); font-size: 11px; font-weight: 800; letter-spacing: 0.02em; text-transform: uppercase; } .arch-panel-extension-time-management-request pre { max-height: 220px; margin: 8px 0 0; overflow: auto; border: 1px solid var(--wb-border); border-radius: 7px; background: var(--wb-panel); color: var(--wb-text-secondary); font-size: 11px; line-height: 1.45; padding: 10px; white-space: pre-wrap; word-break: break-all; } .arch-panel-extension-skeleton { display: block; overflow: hidden; border-radius: 6px; background: linear-gradient( 90deg, color-mix(in srgb, var(--wb-border) 70%, transparent) 0%, color-mix(in srgb, var(--wb-panel) 70%, #ffffff) 48%, color-mix(in srgb, var(--wb-border) 70%, transparent) 100% ); background-size: 220% 100%; animation: arch-panel-extension-skeleton 1.15s ease-in-out infinite; } .arch-panel-extension-skeleton-control { height: 38px; } .arch-panel-extension-skeleton-title { width: 62%; height: 14px; } .arch-panel-extension-skeleton-text { width: 46%; height: 11px; } .arch-panel-extension-skeleton-input { height: 34px; } @keyframes arch-panel-extension-skeleton { from { background-position: 120% 0; } to { background-position: -120% 0; } } .arch-panel-extension-confirm-dialog { width: min(560px, calc(100vw - 32px)); max-height: calc(100vh - 120px); overflow: auto; border: 1px solid var(--wb-border); border-radius: 10px; background: var(--wb-panel); box-shadow: var(--wb-shadow); padding: 18px; } .arch-panel-extension-detail-title { margin: 0; color: var(--wb-text); font-size: 18px; font-weight: 700; } .arch-panel-extension-detail-subtitle { margin: 0 0 14px; color: var(--wb-text-muted); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; } .arch-panel-extension-detail-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 8px; } .arch-panel-extension-detail-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; color: var(--wb-text-muted); font-size: 12px; } .arch-panel-extension-detail-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; position: sticky; bottom: 0; margin-top: 16px; padding-top: 12px; background: linear-gradient(180deg, rgba(23, 30, 39, 0), var(--wb-panel) 35%); } .arch-panel-extension-time-management-footer-actions { display: flex; align-items: center; gap: 8px; margin-right: auto; } .arch-panel-extension-time-management-save-error { margin: 0 auto 0 0; color: var(--wb-warning); font-size: 12px; font-weight: 700; } .arch-panel-extension-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 18px; } .arch-panel-extension-form-field { display: grid; gap: 6px; } .arch-panel-extension-form-field span { color: var(--wb-text-secondary); font-size: 12px; font-weight: 600; } .arch-panel-extension-form-field input, .arch-panel-extension-form-field select { width: 100%; min-height: 38px; padding: 0 12px; border: 1px solid var(--wb-border); border-radius: 6px; background: var(--wb-panel-soft); color: var(--wb-text); font: inherit; } .arch-panel-extension-form-field .arch-panel-extension-combobox input { min-height: 40px; padding: 0 38px 0 12px; border-radius: 8px; background: color-mix(in srgb, var(--wb-panel-soft) 86%, var(--wb-panel)); color: transparent; } .arch-panel-extension-form-field .arch-panel-extension-combobox input:focus { border-color: #0b5cab; background: var(--wb-panel); box-shadow: 0 0 0 3px rgba(11, 92, 171, 0.16); color: var(--wb-text); outline: none; } .arch-panel-extension-form-error { margin: 12px 0 0; color: #d94f2b; font-size: 12px; font-weight: 600; } .arch-panel-extension-sort-button { appearance: none; display: inline-flex; align-items: center; gap: 4px; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; font-weight: 600; cursor: pointer; } .arch-panel-extension-sort-button.is-numeric { justify-content: flex-end; width: 100%; } .arch-panel-extension-table-wrap.is-detail { flex: 1 1 auto; min-height: 0; max-height: calc(100vh - 270px); overflow: auto; } .arch-panel-extension-table-wrap.is-detail .arch-panel-extension-table th { position: sticky; top: 0; z-index: 3; } .arch-panel-extension-table-wrap.is-detail .arch-panel-extension-table thead { position: relative; z-index: 3; } .arch-panel-extension-table-wrap.is-detail .arch-panel-extension-table { border-collapse: separate; border-spacing: 0; } .arch-panel-extension-table-wrap.is-detail .arch-panel-extension-table { table-layout: fixed; } .arch-panel-extension-table-wrap.is-detail .arch-panel-extension-table th, .arch-panel-extension-table-wrap.is-detail .arch-panel-extension-table td { white-space: normal; vertical-align: top; overflow-wrap: anywhere; } .arch-panel-extension-state-actions { display: flex; gap: 12px; margin-top: 18px; } .arch-panel-extension-state-card.is-error { border-color: rgba(217, 79, 43, 0.42); } @media (max-width: 1280px) { .arch-panel-extension-summary-row, .arch-panel-extension-indicator-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 1100px) { .arch-panel-extension-shell-body, .arch-panel-extension-content-grid, .arch-panel-extension-status-grid, .arch-panel-extension-operations-grid { grid-template-columns: 1fr; } .arch-panel-extension-sidebar { border-right: 0; border-bottom: 1px solid var(--wb-border); } .arch-panel-extension-shell-body.is-sidebar-collapsed { grid-template-columns: 1fr; } .arch-panel-extension-sidebar.is-collapsed { min-height: 44px; padding: 8px 10px; } .arch-panel-extension-sidebar.is-collapsed .arch-panel-extension-sidebar-toggle { right: 10px; } } @media (max-width: 780px) { .arch-panel-extension-shell-header, .arch-panel-extension-page-hero { flex-direction: column; align-items: flex-start; } .arch-panel-extension-summary-row, .arch-panel-extension-indicator-grid, .arch-panel-extension-boolean-grid, .arch-panel-extension-sr-hour-grid { grid-template-columns: 1fr; } .arch-panel-extension-state-card { min-height: 260px; padding: 26px 24px; } } @media (max-width: 980px) { .arch-panel-extension-action-dialog { width: min(720px, calc(100vw - 24px)); } .arch-panel-extension-form-grid { grid-template-columns: 1fr; } }