/* Asana's project list: white work surface, quiet rules, dense rows and color tags. */
.order-project-workspace.order-desk-shell {
  --desk-ink: #1d1f21;
  --desk-muted: #6d6e6f;
  --desk-line: #e8e9ea;
  --desk-canvas: #fff;
  --desk-surface-muted: #f9f8f8;
  --desk-accent: #4573d2;
  --desk-accent-hover: #365fb1;
  --desk-accent-soft: #eef3fd;
  background: #fff;
}
.order-project-workspace .order-workspace-content { min-width: 0; max-width: 100%; }
.order-project-workspace .order-desk-topbar { grid-template-columns: minmax(130px,.8fr) minmax(180px,480px) auto; min-height: 64px; padding: 8px 24px; gap: 18px; border-color: #e8e9ea; background: #fff; backdrop-filter: none; }
.order-project-workspace .order-desk-brand { min-height: 44px; gap: 10px; }
.order-project-workspace .order-desk-brand > span:first-child { width: 34px; height: 34px; border-radius: 8px; background: #f0aa48; box-shadow: none; }
.order-project-workspace .order-desk-brand strong { font-size: 19px; font-weight: 500; letter-spacing: -.02em; }
.order-project-workspace .order-desk-brand small { display: none; }
.order-project-workspace .order-desk-search { height: 36px; min-height: 36px; border: 1px solid #e3e2e1; border-radius: 6px; background: #f9f8f8; box-shadow: none; }
.order-project-workspace .order-desk-search input { font-size: 13px; }
.order-project-workspace .order-desk-top-actions { gap: 8px; }
.order-project-workspace .order-desk-top-actions .order-desk-new-card { display: none; }
.order-project-workspace .order-desk-secondary-action,
.order-project-workspace .order-desk-primary-action,
.order-project-workspace .order-desk-icon-action { min-height: 34px; height: 34px; border-radius: 5px; font-size: 12px; font-weight: 400; box-shadow: none; }
.order-project-workspace .order-desk-secondary-action { color: #565759; border-color: #dedcdb; background: #fff; }
.order-project-workspace .order-desk-local-badge { color: #8b8d8f; font-size: 10px; }
.order-project-workspace .order-desk-main { min-height: calc(100dvh - 64px); padding: 0; background: #fff; }
.order-project-workspace .order-desk-layout { position: relative; display: block; width: 100%; max-width: 100%; height: auto; min-height: calc(100dvh - 64px); margin: 0; border: 0; border-radius: 0; box-shadow: none; overflow: visible; background: #fff; }
.order-project-workspace .order-desk-list-pane { width: 100%; max-width: 100%; min-width: 0; border: 0; border-radius: 0; background: #fff; overflow: visible; }
.order-project-workspace .order-desk-card-list { display: block; width: 100%; max-width: 100%; min-width: 0; padding: 0; overflow: visible; background: #fff; }
.order-project-workspace .order-desk-detail-pane { display: none; position: fixed; top: 64px; right: 0; bottom: 0; z-index: 45; width: min(var(--workspace-detail-width, 660px),calc(100vw - 24px)); max-width: 100%; height: auto; min-height: 0; border-left: 1px solid #d8d6d5; background: #fff; box-shadow: -8px 0 24px #1d1f2114; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }
.order-project-workspace .order-desk-layout.show-detail .order-desk-detail-pane { display: block; }
.order-project-workspace .order-desk-layout.show-detail .order-desk-list-pane { display: flex; }
.order-project-workspace .order-desk-back { grid-column: 1 / -1; justify-self: start; display: inline-flex; align-items: center; justify-content: center; width: auto; min-width: 44px; min-height: 44px; padding: 7px 10px; border: 0; border-radius: 4px; background: transparent; color: #565759; }
.order-project-workspace .order-desk-back:hover { background: #f3f2f2; }
.order-project-workspace .order-desk-detail-head { grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px 14px; min-height: 0; padding: 14px 24px; }
.order-project-workspace .order-desk-detail-head h1 { font-size: 23px; }
.order-project-workspace .order-desk-detail-head h2 { margin: 7px 0 5px; font-size: 22px; line-height: 1.35; overflow-wrap: anywhere; }
.order-project-workspace .order-desk-detail-head .order-desk-readonly-badge { justify-self: end; width: auto; white-space: nowrap; }
/* The drawer has a fixed narrow width even on wide desktop viewports. */
.order-project-workspace .order-desk-intake-summary { grid-template-columns: 80px minmax(0,1fr); gap: 12px 16px; padding: 16px 24px; }
.order-project-workspace .order-desk-reference-preview { width: 80px; min-height: 60px; }
.order-project-workspace .order-desk-intake-summary dl { grid-template-columns: repeat(2,minmax(0,1fr)); }
.order-project-workspace .order-desk-reference-meta { grid-column: 1 / -1; }
.order-project-workspace .order-desk-detail-pane .order-desk-primary-action,
.order-project-workspace .order-desk-detail-pane .order-desk-secondary-action,
.order-project-workspace .order-desk-detail-pane .order-desk-icon-action { min-height: 44px; height: auto; max-width: 100%; }
.order-project-workspace .order-desk-artifact-layout,
.order-project-workspace .order-desk-notes { grid-template-columns: minmax(0,1fr); }
.order-project-workspace .order-desk-preview-column > header { flex-wrap: wrap; align-items: center; }
.order-project-workspace .order-desk-preview-column > header > div:first-child { flex: 1 0 140px; }
.order-project-workspace .order-desk-preview-meta { flex-wrap: wrap; min-width: 0; }
.order-project-workspace .order-desk-version-rail { padding: 14px 0 0; border-left: 0; border-top: 1px solid var(--desk-line); }
.order-project-workspace .order-project-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 35px; padding: 3px 24px; color: #8a8c8e; border-bottom: 1px solid #f1f0ef; font-size: 11px; }
.order-project-workspace .order-project-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 16px; padding: 12px 24px; border-top: 1px solid #e8e9ea; background: #fff; color: #6d6e6f; font-size: 12px; }
.order-project-workspace .order-project-pagination[hidden] { display: none; }
.order-project-workspace .order-project-pagination > span { flex: 1 1 240px; min-width: 0; overflow-wrap: anywhere; }
.order-project-workspace .order-project-pagination > button { min-height: 44px; height: auto; max-width: 100%; padding: 8px 12px; white-space: normal; }
.order-project-workspace .order-desk-lifecycle-filters { gap: 3px; }
.order-project-workspace .order-desk-lifecycle-filters button { min-height: 28px; padding: 4px 9px; border-radius: 4px; font-weight: 400; font-size: 11px; }
.order-project-workspace .order-desk-lifecycle-filters button[aria-pressed="true"] { color: #1d1f21; border-color: #dedcdb; background: #f3f2f2; }
.order-project-workspace .order-desk-selection-controls { min-height: 29px; margin: 0; padding: 4px 24px; border-radius: 0; border-color: #e8e9ea; background: #fff; }
.order-project-workspace .order-desk-selection-controls strong { color: #77797b; font-size: 10px; font-weight: 400; }
.order-project-workspace .order-project-workflow-filters { padding: 4px 24px; border-bottom: 1px solid #f1f0ef; font-size: 11px; color: #77797b; }
.order-project-workspace .order-project-workflow-filters > summary { width: fit-content; min-height: 24px; padding: 4px 0; cursor: pointer; }
.order-project-workspace .order-desk-stage-filters { padding: 7px 0; border: 0; }
.order-project-workspace .order-desk-stage-filters button { border-radius: 5px; font-weight: 400; }
.odp-project,
.odp-detail,
.odp-editor {
  --odp-ink: #1d1f21;
  --odp-muted: #6d6e6f;
  --odp-line: #e8e9ea;
  --odp-hover: #f9f8f8;
  --odp-blue: #4573d2;
  --odp-name-width: 435px;
  color: var(--odp-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans KR", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: normal;
  box-sizing: border-box;
}
.odp-project *, .odp-detail *, .odp-editor * { box-sizing: border-box; }
.odp-project { min-width: 0; width: 100%; max-width: 100%; background: #fff; }
.odp-project button, .odp-detail button, .odp-editor button,
.odp-project input, .odp-detail input, .odp-editor input,
.odp-project select, .odp-detail select, .odp-editor select,
.odp-editor textarea { font: inherit; color: inherit; }
.odp-project button, .odp-detail button, .odp-editor button { cursor: pointer; }
.odp-project button:disabled, .odp-detail button:disabled, .odp-editor button:disabled { cursor: default; }
.odp-project svg, .odp-detail svg, .odp-editor svg { width: 18px; height: 18px; flex-shrink: 0; vertical-align: middle; }
.odp-project :is(button, input, select, summary, [tabindex]):focus-visible,
.odp-detail :is(button, input, select, textarea):focus-visible,
.odp-editor :is(button, input, select, textarea):focus-visible { outline: 2px solid #4573d2; outline-offset: 2px; }
.odp-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.odp-view-tabs { display: flex; align-items: stretch; gap: 24px; padding: 0 24px; height: 45px; border-bottom: 1px solid var(--odp-line); overflow-x: auto; }
.odp-view-tabs button { display: flex; flex-shrink: 0; align-items: center; gap: 7px; border: 0; border-bottom: 2px solid transparent; padding: 0 1px; background: none; color: var(--odp-muted); font-size: 14px; }
.odp-view-tabs button:hover { color: var(--odp-ink); }
.odp-view-tabs button[aria-pressed="true"] { color: var(--odp-ink); border-bottom-color: var(--odp-ink); }
.odp-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 12px 24px; min-height: 57px; }
.odp-toolbar-start, .odp-toolbar-end { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; min-width: 0; }
.odp-button, .odp-icon-button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 32px; padding: 5px 10px; border: 1px solid #cfcbcb; border-radius: 6px; background: #fff; white-space: nowrap; font-size: 13px; line-height: 20px; }
.odp-button:hover:not(:disabled), .odp-icon-button:hover:not(:disabled) { background: #f3f2f2; }
.odp-button.primary { background: var(--odp-blue); border-color: var(--odp-blue); color: #fff; }
.odp-button.primary:hover:not(:disabled) { background: #365fb1; }
.odp-button.completed { color: #137a56; background: #e6f5ee; border-color: #c3e5d4; }
.odp-button:disabled { opacity: .6; }
.odp-icon-button { width: 32px; padding: 5px; border-color: transparent; background: transparent; }
.odp-completion-filter select { width: auto; max-width: 155px; height: 32px; min-height: 32px; margin: 0; padding: 4px 24px 4px 8px; border: 0; border-radius: 5px; background-color: #fff; font-size: 13px; }
.odp-count { color: var(--odp-muted); font-size: 12px; white-space: nowrap; }
.odp-menu { position: relative; }
.odp-menu summary { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 32px; padding: 5px 8px; border-radius: 5px; color: var(--odp-muted); font-size: 13px; list-style: none; cursor: pointer; white-space: nowrap; }
.odp-menu summary::-webkit-details-marker { display: none; }
.odp-menu summary:hover, .odp-menu[open] summary { background: #f3f2f2; color: var(--odp-ink); }
.odp-menu-panel { position: absolute; top: calc(100% + 7px); right: 0; z-index: 18; display: flex; flex-direction: column; gap: 14px; width: 260px; max-height: min(65vh,600px); padding: 16px; overflow-y: auto; border: 1px solid #e2e0df; border-radius: 7px; background: #fff; box-shadow: 0 5px 18px #1e1f211c; }
.odp-menu-panel > label { display: flex; flex-direction: column; gap: 6px; color: var(--odp-muted); font-size: 12px; }
.odp-menu-panel select { width: 100%; min-height: 34px; padding: 6px 9px; border: 1px solid #cfcbcb; border-radius: 5px; background: #fff; font-size: 13px; color: var(--odp-ink); }
.odp-column-menu { gap: 2px; padding: 12px; }
.odp-column-menu > strong { padding: 6px 7px; font-size: 13px; font-weight: 500; }
.odp-column-menu > label { flex-direction: row; align-items: center; gap: 10px; min-height: 34px; padding: 4px 7px; color: var(--odp-ink); border-radius: 4px; cursor: pointer; }
.odp-column-menu > label:hover { background: var(--odp-hover); }
.odp-column-menu input, .odp-row-selection input { width: 15px; height: 15px; padding: 0; margin: 0; accent-color: var(--odp-blue); }
.odp-filter-count { display: grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; color: #fff; background: var(--odp-blue); font-size: 11px; }
.odp-active-dot { width: 6px; height: 6px; background: var(--odp-blue); border-radius: 50%; }
.odp-grid-scroll, .odp-gantt-scroll { width: 100%; max-width: 100%; min-width: 0; overflow: auto; overscroll-behavior-x: contain; }
.odp-grid-scroll { min-height: 320px; max-height: calc(100dvh - 210px); padding-bottom: 30px; }
.odp-table { display: block; width: max-content; min-width: 100%; border-spacing: 0; border-collapse: separate; font-size: 13px; }
.odp-table thead { position: sticky; top: 0; z-index: 9; display: block; background: #fff; }
.odp-table tbody { display: block; }
.odp-table tr { display: grid; grid-template-columns: var(--odp-columns); }
.odp-table th, .odp-table td { display: block; min-width: 0; height: 37px; margin: 0; padding: 0; border: 0; border-right: 1px solid var(--odp-line); border-bottom: 1px solid var(--odp-line); text-align: left; background: #fff; }
.odp-table thead th { display: flex; align-items: center; gap: 7px; padding: 0 12px; color: var(--odp-muted); font-weight: 400; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.odp-table thead th.odp-name-heading { position: sticky; left: 0; z-index: 3; padding-left: 57px; }
.odp-table .odp-name-td { position: sticky; left: 0; z-index: 2; }
.odp-table .odp-section-row { height: 50px; }
.odp-table .odp-section-row th { display: flex; grid-column: 1 / -1; align-items: center; height: 50px; border: 0; border-bottom: 1px solid var(--odp-line); }
.odp-section-title { position: sticky; left: 0; z-index: 3; display: flex; align-items: center; gap: 10px; width: calc(var(--odp-name-width) - 36px); height: 49px; padding: 0 12px 0 23px; border: 0; background: #fff; text-align: left; font-size: 16px !important; font-weight: 500 !important; }
.odp-section-title > span:last-child { margin-left: 3px; color: #909193; font-size: 13px; font-weight: 400; }
.odp-section-chevron { display: inline-flex; align-items: center; color: #6d6e6f; }
.odp-section-chevron svg { width: 14px; height: 14px; }
.odp-section-chevron.expanded { transform: rotate(90deg); }
.odp-section-add { position: sticky; left: calc(var(--odp-name-width) - 36px); width: 32px; height: 32px; padding: 7px; border: 0; border-radius: 4px; background: #fff; color: #6d6e6f !important; }
.odp-section-add:hover { background: #f3f2f2; }
.odp-name-cell { display: flex; align-items: center; gap: 5px; width: 100%; min-width: 0; height: 100%; padding: 0 8px 0 23px; }
.odp-row-selection { display: inline-flex; align-items: center; justify-content: center; width: 20px; flex-shrink: 0; cursor: pointer; }
.odp-complete { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 25px; height: 30px; min-width: 25px; padding: 0; flex-shrink: 0; border: 0; background: transparent; color: #b9bcc0 !important; }
.odp-complete::before { content: ""; position: absolute; width: 17px; height: 17px; border: 1.4px solid currentColor; border-radius: 50%; }
.odp-complete svg { width: 15px; height: 15px; opacity: 0; }
.odp-complete:hover:not(:disabled), .odp-complete.is-complete { color: #3aa57c !important; }
.odp-complete:hover:not(:disabled) svg, .odp-complete.is-complete svg { opacity: 1; }
.odp-complete:disabled { opacity: .75; }
.odp-task-name { display: block; flex: 1; min-width: 0; overflow: hidden; padding: 6px 2px; border: 0; background: none; color: var(--odp-ink); text-overflow: ellipsis; white-space: nowrap; font-size: 13px !important; text-align: left; }
.odp-task-name:hover { color: #305da9; }
.odp-title-edit { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 23px; height: 28px; padding: 3px; border: 0; border-radius: 3px; background: transparent; color: var(--odp-muted) !important; opacity: 0; }
.odp-title-edit svg { width: 15px; height: 15px; }
.odp-name-cell:hover .odp-title-edit, .odp-name-cell:focus-within .odp-title-edit { opacity: 1; }
.odp-title-edit:hover { background: #eeeded; }
.odp-table .odp-task-row:hover > td { background: #f9f8f8; }
.odp-table .odp-task-row.is-selected > td { background: #edf4ff; }
.odp-table .odp-task-row.is-completed .odp-task-name { color: #8c8e90; }
.odp-table .odp-empty-section td { grid-column: 1 / -1; height: 37px; color: #98999b; border-right: 0; }
.odp-empty-section td > span { position: sticky; left: 57px; display: inline-block; padding: 9px 0; font-size: 12px; }
.odp-field { display: flex; align-items: center; justify-content: flex-start; width: 100%; max-width: 100%; min-width: 0; height: 100%; padding: 0 12px; border: 0; border-radius: 0; background: transparent; text-align: left; font-size: 13px !important; overflow: hidden; }
.odp-field:hover:not(:disabled) { background: #f0efef; box-shadow: inset 0 0 0 1px #a4a5a6; }
.odp-field:disabled { color: var(--odp-ink); opacity: 1; }
.odp-text-value { display: block; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.odp-empty-value { color: #b9bbbd; }
.odp-number { display: block; width: 100%; text-align: right; font-variant-numeric: tabular-nums; font-size: 12px; white-space: nowrap; }
.odp-tags { display: flex; align-items: center; gap: 4px; width: 100%; overflow: hidden; }
.odp-tag { display: inline-flex; align-items: center; gap: 3px; flex-shrink: 0; max-width: 100%; min-height: 20px; padding: 1px 8px; border-radius: 10px; font-size: 11px; font-weight: 400; line-height: 18px; white-space: nowrap; }
.odp-tag button { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; margin-right: -4px; padding: 3px; border: 0; border-radius: 50%; background: none; color: inherit; }
.odp-tag button:hover { background: #00000012; }
.odp-tag button svg { width: 13px; height: 13px; }
.odp-assignee { display: flex; align-items: center; gap: 7px; min-width: 0; overflow: hidden; white-space: nowrap; }
.odp-avatar { display: inline-flex; align-items: center; justify-content: center; width: 23px; height: 23px; flex-shrink: 0; border-radius: 50%; color: #62404b; background: #f6d9e5; font-size: 11px; }
.odp-placeholder { color: #a2a4a7; }
.odp-placeholder svg { width: 22px; height: 22px; padding: 3px; border: 1px dashed #a2a4a7; border-radius: 50%; }
.odp-locked { display: inline-flex; align-items: center; gap: 5px; color: #96989a; font-size: 11px; }
.odp-locked svg { width: 13px; height: 13px; }
.odp-date { color: #59626b; font-size: 12px; white-space: nowrap; }
.odp-date.overdue { color: #c44343; }
.odp-muted { color: var(--odp-muted); }
.odp-is-saving, .odp-task-row.is-saving { opacity: .6; pointer-events: none; }
.odp-inline-error { display: flex; align-items: center; gap: 10px; margin: 0 24px 12px; padding: 10px 12px; border: 1px solid #f1c4c1; border-radius: 5px; background: #fff5f4; color: #a5322a; font-size: 13px; }
.odp-inline-error > span { flex: 1; }
.odp-state { display: flex; justify-content: center; align-items: center; gap: 10px; min-height: 250px; color: var(--odp-muted); }
.odp-no-matches { padding: 12px 24px; color: var(--odp-muted); background: #fafafa; font-size: 13px; }
.odp-editor { width: min(420px,calc(100vw - 32px)); max-height: calc(100dvh - 40px); padding: 0; border: 1px solid #d7d5d3; border-radius: 8px; background: #fff; box-shadow: 0 12px 50px #17191c33; overflow: auto; }
.odp-editor::backdrop { background: #1e1f213d; }
.odp-editor-form { display: flex; flex-direction: column; gap: 12px; padding: 18px; margin: 0; }
.odp-editor-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.odp-editor-heading h2 { margin: 0; font-size: 16px; font-weight: 500; }
.odp-editor input, .odp-editor select, .odp-editor textarea { display: block; width: 100%; min-height: 40px; margin: 0; padding: 9px 10px; border: 1px solid #cfcbcb; border-radius: 5px; background: #fff; font-size: 14px; }
.odp-editor textarea { resize: vertical; }
.odp-editor label { display: flex; flex-direction: column; gap: 5px; color: var(--odp-muted); font-size: 12px; }
.odp-editor input:disabled, .odp-editor select:disabled, .odp-editor textarea:disabled { background: #f5f5f5; }
.odp-selected-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; min-height: 29px; font-size: 12px; }
.odp-options { display: flex; flex-direction: column; gap: 1px; max-height: min(36vh,300px); overflow-y: auto; margin: 0 -6px; padding: 0 6px; }
.odp-option { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 35px; padding: 6px; border: 0; border-radius: 5px; background: #fff; text-align: left; }
.odp-option:hover, .odp-option[aria-pressed="true"] { background: #f4f5f7; }
.odp-option-check { display: inline-flex; width: 18px; height: 18px; flex-shrink: 0; border: 1px solid #c4c6c9; border-radius: 3px; color: var(--odp-blue); }
.odp-option-check svg { width: 16px; height: 16px; }
.odp-option-empty { padding: 10px; font-size: 13px; color: var(--odp-muted); }
.odp-editor-error { min-height: 1em; margin: 0; color: #ae352e; font-size: 12px; overflow-wrap: anywhere; }
.odp-editor-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 8px; border-top: 1px solid var(--odp-line); }
.odp-editor-actions > span { flex: 1; }
.odp-project-export :is(select, button) { min-height: 44px; }
.odp-project-export .odp-icon-button { min-width: 44px; }
.odp-project-export .odp-export-filter { flex-direction: row; align-items: center; gap: 8px; min-height: 44px; cursor: pointer; }
.odp-project-export .odp-export-filter input { width: 18px; height: 18px; min-height: 18px; padding: 0; }
.odp-project-export :is(.odp-export-description, .odp-export-status) { margin: 0; color: var(--odp-muted); font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
.odp-project-export :is(.odp-export-status, .odp-editor-error):empty { display: none; }
.odp-detail { padding: 24px; border-bottom: 1px solid var(--odp-line); background: #fff; }
.odp-detail-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; }
.odp-detail-title { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin: 22px 0; font-size: 23px; font-weight: 500; line-height: 1.35; overflow-wrap: anywhere; }
.odp-detail-title > button { flex-shrink: 0; }
.odp-detail-fields { display: flex; flex-direction: column; gap: 4px; }
.odp-detail-field-row { display: grid; grid-template-columns: 125px minmax(0,1fr); align-items: center; min-height: 33px; gap: 12px; }
.odp-detail-field-row > span { color: var(--odp-muted); font-size: 12px; overflow-wrap: anywhere; }
.odp-detail-field { min-height: 33px; height: auto; padding: 5px 6px; border-radius: 4px; }
.odp-detail-field .odp-tags { flex-wrap: wrap; }
.odp-detail-field .odp-number { text-align: left; }
.odp-detail-field .odp-text-value { white-space: pre-wrap; overflow-wrap: anywhere; }
.odp-description, .odp-subtasks { margin-top: 22px; }
.odp-description > div, .odp-subtasks-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.odp-detail h3 { margin: 0; font-size: 14px; font-weight: 500; }
.odp-detail h3 > span { padding-left: 5px; color: var(--odp-muted); font-size: 12px; }
.odp-description > p { margin: 12px 0 0; font-size: 13px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.odp-subtasks > p { font-size: 13px; }
.odp-subtask { display: flex; align-items: center; gap: 6px; min-height: 38px; border-bottom: 1px solid var(--odp-line); font-size: 13px; }
.odp-subtask > span:nth-child(2) { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.odp-subtask-done { color: #96989a; text-decoration: line-through; }
.odp-subtask-assignee, .odp-subtask time { color: var(--odp-muted); font-size: 10px; }
.odp-subtask-form { display: flex; gap: 8px; margin-top: 14px; }
.odp-subtask-form input { flex: 1; min-width: 0; min-height: 34px; padding: 7px 9px; border: 1px solid #d8d7d6; border-radius: 5px; background: #fff; font-size: 13px; }
.odp-detail-error { margin: 12px 0 0; color: #ae352e; font-size: 12px; }

@media (min-width: 1600px) {

}
@media (max-width: 900px) {
  .order-project-workspace .order-desk-topbar { padding: 8px 16px; gap: 10px; grid-template-columns: minmax(120px,.7fr) minmax(150px,1fr) auto; }
  .order-project-workspace .order-desk-local-badge { display: none; }
  .odp-project { --odp-name-width: 360px; }
  .odp-toolbar { padding: 10px 16px; }
  .odp-view-tabs { padding: 0 16px; gap: 20px; }
  .odp-toolbar-start { gap: 4px; }
  .odp-count { display: none; }
  .odp-detail { padding: 20px; }

}
@media (max-width: 600px) {
  .order-project-workspace .order-desk-topbar { grid-template-columns: minmax(0,1fr) auto; padding: 8px 12px; gap: 8px; }
  .order-project-workspace .order-desk-search { grid-column: 1 / -1; grid-row: 2; width: 100%; height: 44px; }
  .order-project-workspace .order-desk-top-actions { grid-column: 2; grid-row: 1; }
  .order-project-workspace .order-desk-brand strong { font-size: 18px; }
  .order-project-workspace .order-desk-secondary-action,
  .order-project-workspace .order-desk-icon-action { min-height: 44px; height: 44px; }
  .order-project-workspace .order-project-controls { padding: 4px 12px; min-height: 44px; }
  .order-project-workspace .order-project-pagination { padding: 12px; }
  .order-project-workspace .order-desk-lifecycle-filters button { min-height: 44px; }
  .order-project-workspace .order-desk-selection-controls { min-height: 44px; padding: 5px 12px; }
  .order-project-workspace .order-project-workflow-filters { padding: 0 12px; }
  .order-project-workspace .order-project-workflow-filters > summary { min-height: 44px; display: flex; align-items: center; }
  .order-project-workspace .order-desk-detail-pane { top: 0; bottom: 0; width: 100%; z-index: 60; border: 0; box-shadow: none; }
  .order-project-workspace .order-desk-detail-head { padding: 12px 14px; }
  .order-project-workspace .order-desk-intake-summary { grid-template-columns: 64px minmax(0,1fr); padding: 12px 14px; gap: 11px; }
  .order-project-workspace .order-desk-reference-preview { width: 64px; min-height: 48px; }
  .odp-project { --odp-name-width: 280px; }
  .odp-view-tabs { height: 48px; gap: 18px; padding: 0 14px; }
  .odp-view-tabs button { min-height: 44px; font-size: 13px; }
  .odp-toolbar { display: block; padding: 8px 12px; }
  .odp-toolbar-start, .odp-toolbar-end { justify-content: flex-start; gap: 5px; }
  .odp-toolbar-end { margin-top: 3px; }
  .odp-button, .odp-icon-button, .odp-menu summary, .odp-completion-filter select { min-height: 44px; }
  .odp-icon-button { width: 44px; }
  .odp-menu summary { padding: 8px 12px; }
  .odp-menu-panel { left: 0; right: auto; max-width: calc(100vw - 32px); }
  .odp-toolbar-end .odp-menu:last-child .odp-menu-panel { left: auto; right: -20px; }
  .odp-menu-panel > label { min-height: 44px; }
  .odp-menu-panel select { min-height: 44px; }
  .odp-grid-scroll { max-height: calc(100dvh - 265px); min-height: 350px; }
  .odp-table th, .odp-table td { height: 46px; }
  .odp-name-cell { padding-left: 8px; gap: 0; }
  .odp-table thead th.odp-name-heading { padding-left: 52px; }
  .odp-complete { width: 44px; min-width: 44px; height: 44px; }
  .odp-task-name { min-height: 44px; }
  .odp-title-edit { opacity: 1; min-height: 44px; width: 44px; }
  .odp-name-cell .odp-title-edit:last-child { display: none; }
  .odp-row-selection { width: 30px; min-height: 44px; }
  .odp-section-title { padding-left: 18px; }
  .odp-section-title { width: calc(var(--odp-name-width) - 44px); }
  .odp-section-add { left: calc(var(--odp-name-width) - 44px); width: 44px; min-height: 44px; }
  .odp-empty-section td > span { left: 52px; padding: 14px 0; }

  .odp-undated { padding: 16px 12px; }
  .odp-inline-error { margin: 0 12px 10px; flex-wrap: wrap; }
  .odp-editor input, .odp-editor select, .odp-editor textarea, .odp-option { min-height: 44px; }
  .odp-selected-tags .odp-tag { min-height: 36px; }
  .odp-tag button { width: 44px; height: 44px; }
  .odp-editor { max-height: calc(100dvh - 24px); }
  .odp-editor-form { padding: 14px; }
  .odp-detail { padding: 18px 14px; }
  .odp-detail-field-row { grid-template-columns: 102px minmax(0,1fr); gap: 8px; min-height: 44px; }
  .odp-detail-field { min-height: 44px; }
  .odp-detail-title { font-size: 22px; }
  .odp-subtask { flex-wrap: wrap; }
  .odp-subtask time { font-size: 10px; }
  .odp-subtask-form input { min-height: 44px; }

}
@media (prefers-reduced-motion: reduce) {
  .odp-project *, .odp-detail *, .odp-editor * { scroll-behavior: auto; transition: none; animation: none; }
}

/* Preserved v39 records retain their original financial and free-text meaning. */
.odp-legacy-record { margin: 16px; border: 1px solid #ddd; border-radius: 8px; padding: 12px; }
.odp-legacy-record summary { min-height: 44px; display: list-item; align-content: center; cursor: pointer; font-weight: 600; }
.odp-legacy-record summary:focus-visible { outline: 2px solid #3978d4; outline-offset: 2px; }
.odp-legacy-record p { font-size: 12px; line-height: 1.6; color: #555; }
.odp-legacy-record dl { margin: 0; }
.odp-legacy-record dl > div { display: grid; grid-template-columns: minmax(0, 130px) minmax(0, 1fr); gap: 12px; padding: 6px 0; font-size: 12px; }
.odp-legacy-record dt { color: #555; }
.odp-legacy-record dd { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }

/* Direct table editing and anchored choice lists. */
.odp-cell-editor { display: flex; align-items: center; flex-wrap: wrap; gap: 4px; width: 100%; min-width: 0; min-height: 100%; padding: 4px 6px; background: #fff; outline: 2px solid #4573c4; outline-offset: -2px; }
.odp-name-cell > .odp-cell-editor { flex: 1; width: auto; }
.odp-cell-editor input, .odp-cell-editor textarea, .odp-cell-editor select { flex: 1; min-width: 35px; width: 100%; min-height: 30px; padding: 2px 4px; border: 0; border-radius: 0; background: #fff; color: #1e1f21; font: inherit; resize: none; outline: none; }
.odp-cell-editor textarea { height: 32px; }
.odp-cell-editor:has(textarea:focus) { min-height: 68px; position: relative; z-index: 10; }
.odp-cell-editor textarea:focus { height: 58px; }
.odp-cell-editor [aria-busy=true], .odp-cell-editor[aria-busy=true] { opacity: .75; }
.odp-cell-tags { display: flex; flex-wrap: wrap; gap: 3px; }
.odp-cell-tags:empty { display: none; }
.odp-cell-editor:has(.odp-cell-tags) { position: relative; z-index: 10; }
.odp-cell-editor:has(.odp-cell-tags) input { min-height: 24px; font-size: 12px; }
.odp-cell-dropdown { position: fixed; z-index: 110; display: flex; flex-direction: column; overflow: auto; padding: 8px; border: 1px solid #d7d9de; border-radius: 0 0 6px 6px; background: #fff; color: #1e1f21; box-shadow: 0 7px 20px #1e1f2120; font-family: inherit; font-size: 13px; }
.odp-cell-dropdown .odp-option { min-height: 44px; flex-shrink: 0; }
.odp-cell-dropdown .odp-options { max-height: 280px; min-height: 0; }
.odp-assignee-picker .odp-cell-tags { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.odp-assignee-name { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.odp-cell-dropdown .odp-option small { flex-shrink: 0; color: var(--odp-muted); }
.odp-cell-dropdown .odp-editor-error:empty { display: none; }
.odp-cell-dropdown .odp-option-check { border: 1px solid #b6bac0; border-radius: 3px; width: 18px; height: 18px; }
.odp-cell-dropdown .odp-option[aria-pressed=true] .odp-option-check { background: #4573c4; color: #fff; border-color: #4573c4; }
.odp-cell-status { margin: 6px 4px; color: #626770; font-size: 11px; }
.odp-cell-actions { display: flex; gap: 4px; flex-wrap: wrap; border-top: 1px solid #eee; padding-top: 5px; }
.odp-cell-actions .odp-button { min-height: 36px; }
.odp-cell-dropdown [hidden] { display: none !important; }
.odp-option-heading { width: 30px; min-height: 32px; padding: 0; margin-left: auto; border: 0; background: transparent; color: #656a74; cursor: pointer; }
.odp-option-heading:hover { background: #edf2fa; }
.odp-options-editor { width: min(620px, calc(100vw - 24px)); }
.odp-options-notice { padding: 12px; background: #faf5ec; color: #6f592f; font-size: 13px; line-height: 1.6; }
.odp-option-config { display: grid; grid-template-columns: 82px minmax(0,1fr) 36px 36px 36px; align-items: center; gap: 4px; margin: 7px 0; }
.odp-option-config input, .odp-option-config select { width: 100%; min-height: 40px; padding: 6px; border: 1px solid #d9dde3; border-radius: 4px; font-size: 13px; }
.odp-option-config .odp-icon-button { width: 36px; min-height: 40px; }
.odp-option-retired { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 8px 0; }
.odp-retired-options { margin-top: 18px; font-size: 13px; }
.odp-retired-options summary { padding: 8px 0; cursor: pointer; }
.odp-table .odp-new-task-row td { grid-column: 1 / -1; height: auto; background: #f5f8fe; }
.odp-new-task-row form { position: sticky; left: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; width: min(820px, calc(100vw - 70px)); padding: 14px 20px; }
.odp-new-task-row input, .odp-new-task-row select { min-width: 0; min-height: 44px; padding: 8px; border: 1px solid #b8c5da; border-radius: 4px; font: inherit; }
.odp-new-task-row input { flex: 1; min-width: 170px; }
.odp-new-task-row form > span { font-size: 12px; color: #596776; }
.odp-new-task-row p { flex-basis: 100%; margin: 0; color: #ae352e; }
.odp-option-config button:focus-visible, .odp-cell-dropdown button:focus-visible, .odp-option-heading:focus-visible { outline: 2px solid #4573c4; outline-offset: -2px; }
@media (max-width: 600px) {
  .odp-cell-editor input, .odp-cell-editor select, .odp-cell-dropdown .odp-button, .odp-option-heading { min-height: 44px; }
  .odp-option-config { grid-template-columns: 64px minmax(0,1fr) 44px 44px 44px; gap: 2px; }
  .odp-option-config .odp-icon-button { width: 44px; min-height: 44px; }
  .odp-option-config input, .odp-option-config select { min-height: 44px; }
}

.odp-project-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px 10px;background:#fff}
.odp-project-picker{display:flex;align-items:center;gap:12px;min-width:0}
.odp-project-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#f06a6a;color:white;font-size:24px;flex-shrink:0}
.odp-project-picker label{display:grid;gap:3px;min-width:0}
.odp-project-picker label>span{font-size:11px;color:#6d6e6f}
.odp-project-picker select{max-width:480px;width:100%;min-height:34px;border:0;background:#fff;font-size:17px;font-weight:600;color:#1e1f21;padding:3px 24px 3px 0}
.odp-project-actions{display:flex;flex-wrap:wrap;gap:6px}
.odp-project-summary{margin:0;padding:0 20px 12px;font-size:12px;color:#6d6e6f;background:#fff}
.odp-source-badge{font-size:11px;color:#76513d;border:1px solid #e9d8cd;border-radius:4px;padding:3px 6px;white-space:nowrap;background:#fff8f3}
.odp-assignee small{font-size:10px;color:#6d6e6f;margin-left:5px}
.odp-project-detail{padding:18px 0;border-top:1px solid #edeae9;margin:12px 0}
.odp-project-detail>div{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.odp-project-detail h3{font-size:13px;margin:0}
.odp-project-detail p{font-size:12px;color:#6d6e6f}
.odp-source-summary{font-size:12px;margin-top:14px}
.odp-project-section-form{display:grid;gap:6px;margin:12px 0;max-height:300px;overflow:auto}
.odp-project-section-form>div{display:flex;gap:6px;align-items:center}
.odp-project-section-form input{flex:1;min-width:0}
.odp-original-dialog{max-width:760px}
.odp-original-meta{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,3fr);gap:8px 18px;font-size:13px}
.odp-original-meta dt{color:#6d6e6f}.odp-original-meta dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.odp-original-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}
.odp-original-comment{padding:14px 0;border-bottom:1px solid #edeae9;font-size:13px}
.odp-original-comment time{display:block;font-size:11px;color:#6d6e6f;margin-top:4px}

@media(max-width:768px){.odp-project-bar{align-items:flex-start;flex-direction:column;padding:14px 12px 10px;gap:10px}.odp-project-picker{width:100%}.odp-project-picker label{flex:1}.odp-project-picker select{font-size:15px;max-width:100%}.odp-project-actions{width:100%}.odp-project-actions .odp-button{font-size:11px}.odp-project-summary{padding-left:12px}.odp-original-meta{grid-template-columns:100px minmax(0,1fr)}}

/* The list keeps its existing rules. Insights use their own hierarchy and surfaces. */
.odp-pending-row td { display: flex; grid-column: 1 / -1; align-items: center; gap: 12px; min-height: 42px; padding: 8px 24px; background: #f6f8fc; }
.odp-pending-row strong { max-width: 380px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 500; }
.odp-pending-row [role="status"] { color: #5a6472; font-size: 12px; }
.odp-pending-row .odp-button { min-height: 32px; }
.odp-insights { --insight-accent: #416bb3; --insight-line: #e8edf2; --insight-muted: #66717e; padding: 28px 32px 40px; min-width: 0; color: #273443; font-variant-numeric: tabular-nums; }
.odp-insights button { min-height: 44px; }
.odp-insight-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.odp-insight-eyebrow { display: block; margin-bottom: 7px; color: var(--insight-muted); font-size: 12px; font-weight: 500; }
.odp-insight-header h2 { margin: 0; font-size: 25px; line-height: 1.3; font-weight: 600; letter-spacing: -.045em; }
.odp-insight-header h2 > span { font-weight: 400; }
.odp-insight-header p { margin: 8px 0 0; color: var(--insight-muted); font-size: 12px; line-height: 1.6; }
.odp-insight-scope { flex-shrink: 0; padding: 6px 10px; border-radius: 4px; color: #5f6c7a; background: #f2f5f8; font-size: 11px; }
.odp-insight-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; flex-shrink: 0; }
.odp-insight-controls .odp-button { height: 36px; padding: 0 11px; }
.odp-insight-segment { display: flex; padding: 3px; border: 1px solid #dce3eb; border-radius: 6px; background: #f5f7f9; }
.odp-insight-segment button { padding: 0 13px; border: 0; border-radius: 3px; background: transparent; color: var(--insight-muted); font-size: 12px; }
.odp-insight-segment button[aria-pressed="true"] { color: #273443; background: #fff; box-shadow: 0 1px 3px #233a5714; font-weight: 600; }
.odp-schedule-legend { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; margin: 0 0 15px; color: var(--insight-muted); font-size: 11px; }
.odp-schedule-legend > span { display: inline-flex; align-items: center; gap: 6px; }
.odp-schedule-legend i { width: 12px; height: 7px; border-radius: 2px; }
.odp-schedule-legend i.active { background: #6384bb; }
.odp-schedule-legend i.overdue { background: #c87875; }
.odp-schedule-legend i.complete { background: #6a9d84; }
.odp-schedule-legend i.milestone { width: 7px; height: 7px; margin: 0 3px; border-radius: 0; transform: rotate(45deg); background: #6d7e98; }
.odp-schedule-today-label::before { content: ""; width: 1px; height: 11px; background: #b06736; }
.odp-gantt-scroll { max-height: min(68dvh, 640px); border: 1px solid var(--insight-line); border-radius: 6px; background: #fff; }
.odp-gantt-table { --odp-gantt-name-width: 260px; --odp-gantt-cell-width: 36px; --odp-gantt-columns: 31; width: calc(var(--odp-gantt-name-width) + var(--odp-gantt-columns) * var(--odp-gantt-cell-width)); min-width: 100%; margin: 0; border-collapse: separate; border-spacing: 0; table-layout: fixed; }
.odp-gantt-table[data-odp-gantt-mode="week"] { --odp-gantt-cell-width: 80px; }
.odp-gantt-table th, .odp-gantt-table td { height: 65px; padding: 0; border: 0; border-bottom: 1px solid #edf0f4; background: #fff; text-align: left; }
.odp-gantt-table thead th { position: sticky; top: 0; z-index: 3; height: 55px; background: #f8fafc; color: #66717e; font-size: 11px; font-weight: 500; }
.odp-gantt-table .odp-gantt-name { position: sticky; left: 0; z-index: 2; width: var(--odp-gantt-name-width); border-right: 1px solid #dfe5ed; }
.odp-gantt-table thead .odp-gantt-name { z-index: 4; padding: 0 18px; }
.odp-gantt-table .odp-gantt-name button { display: flex; flex-direction: column; justify-content: center; gap: 6px; width: 100%; min-height: 64px; padding: 10px 18px; border: 0; background: transparent; text-align: left; }
.odp-gantt-name strong { display: block; width: 100%; overflow: hidden; color: #283748; font-size: 12px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.odp-gantt-name button > span { display: block; width: 100%; overflow: hidden; color: var(--insight-muted); font-size: 10px; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.odp-gantt-name i { padding: 0 5px; color: #a7afb9; font-style: normal; }
.odp-gantt-table tbody tr:hover th, .odp-gantt-table tbody tr:hover td { background-color: #f7f9fc; }
.odp-gantt-table tbody tr.is-selected th, .odp-gantt-table tbody tr.is-selected td { background-color: #edf4ff; }
.odp-gantt-axis { display: flex; align-items: stretch; height: 55px; }
.odp-gantt-axis > span { display: flex; flex: 1 0 0; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-width: 0; border-right: 1px solid #edf0f4; color: #677485; }
.odp-gantt-axis small { height: 12px; font-size: 10px; }
.odp-gantt-axis time { font-size: 11px; }
.odp-gantt-axis .weekend { background: #f1f4f8; color: #7e8ca0; }
.odp-gantt-axis .today { color: #8e542f; background: #fcf1e5; font-weight: 600; }
.odp-gantt-track { position: relative; height: 64px; overflow: hidden; background: repeating-linear-gradient(90deg, transparent 0, transparent calc(var(--odp-gantt-cell-width) - 1px), #edf0f4 calc(var(--odp-gantt-cell-width) - 1px), #edf0f4 var(--odp-gantt-cell-width)); }
.odp-gantt-task { position: absolute; top: 10px; height: 44px; padding: 0 5px; border: 0; border-radius: 5px; background: transparent; color: #294f87 !important; text-align: center; }
.odp-gantt-task > span { display: flex; align-items: center; justify-content: center; height: 26px; overflow: hidden; border: 1px solid #bdd0e7; border-radius: 4px; background: #dce7f7; font-size: 10px; white-space: nowrap; }
.odp-gantt-task:hover > span { background: #cbdcf4; border-color: #7399ca; }
.odp-gantt-task.complete { color: #2c6549 !important; }
.odp-gantt-task.complete > span { border-color: #b8d4c5; background: #dceee3; }
.odp-gantt-task.overdue { color: #91413b !important; }
.odp-gantt-task.overdue > span { border-color: #e2bcb8; background: #f5e3e1; }
.odp-gantt-task.milestone { width: 44px !important; padding: 0; transform: translateX(-35%); }
.odp-gantt-task.milestone > span { height: 32px; border: 0; background: transparent; font-size: 20px; }
.odp-gantt-task.clipped-start > span { border-left-style: dashed; border-radius: 0 4px 4px 0; }
.odp-gantt-task.clipped-end > span { border-right-style: dashed; border-radius: 4px 0 0 4px; }
.odp-gantt-today { position: absolute; top: 0; bottom: 0; z-index: 1; width: 1px; background: #c0885d; pointer-events: none; }
.odp-gantt-outside { display: block; height: 64px; margin: 0; padding: 0 14px; border: 0; background: transparent; color: #6b7786 !important; font-size: 11px; }
.odp-insight-note { margin: 14px 0 0; color: var(--insight-muted); font-size: 11px; line-height: 1.65; }
.odp-unscheduled { margin-top: 18px; border-top: 1px solid var(--insight-line); }
.odp-unscheduled summary { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; min-height: 48px; padding: 8px 0; color: #425269; font-size: 12px; cursor: pointer; }
.odp-unscheduled summary b { font-weight: 500; }
.odp-unscheduled summary > span { margin-left: auto; color: var(--insight-muted); font-size: 11px; }
.odp-unscheduled > div { max-height: 300px; overflow-y: auto; }
.odp-unscheduled button { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 48px; padding: 8px 0; border: 0; border-bottom: 1px solid #edf0f4; background: #fff; text-align: left; }
.odp-unscheduled strong { flex: 1; min-width: 0; overflow: hidden; font-size: 12px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.odp-unscheduled button > span { color: var(--insight-muted); font-size: 11px; }
.odp-overview-top { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(260px,1fr); gap: 32px; padding-bottom: 26px; border-bottom: 1px solid var(--insight-line); }
.odp-progress-overview { padding: 24px 28px; border-radius: 8px; background: #f4f7fb; }
.odp-progress-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.odp-progress-heading h3, .odp-attention h3 { margin: 0; font-size: 13px; font-weight: 500; }
.odp-progress-heading > span { color: var(--insight-muted); font-size: 11px; }
.odp-progress-value { margin: 16px 0 18px; font-size: 54px; line-height: 1; font-weight: 600; letter-spacing: -.07em; }
.odp-progress-value > span { margin-left: 5px; color: #6e7e93; font-size: 24px; font-weight: 400; letter-spacing: 0; }
.odp-progress-track { height: 6px; overflow: hidden; border-radius: 6px; background: #dce4ee; }
.odp-progress-track > i { display: block; height: 100%; border-radius: inherit; background: var(--insight-accent); }
.odp-progress-caption { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; margin-top: 12px; color: #57677b; font-size: 11px; }
.odp-progress-caption > span { display: inline-flex; align-items: center; gap: 5px; }
.odp-progress-caption i { width: 6px; height: 6px; border-radius: 50%; background: var(--insight-accent); }
.odp-progress-caption b { color: #314b6c; font-weight: 600; }
.odp-insight-link { display: flex; align-items: center; justify-content: space-between; width: 100%; margin-top: 14px; padding: 8px 0 0; border: 0; border-top: 1px solid #dce5f0; background: transparent; color: #45678f !important; font-size: 11px; text-align: left; }
.odp-attention { align-self: center; }
.odp-attention h3 { margin-bottom: 12px; }
.odp-attention button { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 51px; padding: 12px 0; border: 0; border-bottom: 1px solid var(--insight-line); background: transparent; font-size: 12px; }
.odp-attention button > span:first-child { display: inline-flex; align-items: center; gap: 7px; flex: 1; text-align: left; }
.odp-attention button > span:last-child { color: #8b97a5; }
.odp-attention b { font-size: 20px; font-weight: 500; }
.odp-attention small { margin-left: 4px; color: var(--insight-muted); font-size: 11px; font-weight: 400; }
.odp-attention button.overdue { color: #a84e46; }
.odp-attention-dot { width: 5px; height: 5px; border-radius: 50%; background: #bd635c; }
.odp-insight-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; padding: 24px 0 28px; border-bottom: 1px solid var(--insight-line); }
.odp-insight-metric { display: flex; flex-direction: column; align-items: stretch; gap: 10px; min-width: 0; padding: 0; border: 0; background: transparent; text-align: left; }
.odp-insight-metric > span:first-child { color: #596779; font-size: 12px; }
.odp-insight-metric > strong { font-size: 30px; line-height: 1.1; font-weight: 500; letter-spacing: -.04em; }
.odp-insight-metric strong small { margin-left: 5px; color: #708095; font-size: 12px; font-weight: 400; letter-spacing: 0; }
.odp-insight-metric > span:last-child { display: flex; align-items: center; gap: 6px; color: var(--insight-muted); font-size: 10px; }
.odp-insight-metric i { font-style: normal; opacity: .7; }
.odp-insight-metric:hover strong { color: var(--insight-accent); }
.odp-overview-columns { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 34px; padding: 26px 0; border-bottom: 1px solid var(--insight-line); }
.odp-overview-columns.lower { padding-bottom: 0; border-bottom: 0; }
.odp-insight-panel { min-width: 0; }
.odp-insight-panel > header { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; margin-bottom: 18px; }
.odp-insight-panel h3 { margin: 0; font-size: 14px; font-weight: 500; letter-spacing: -.02em; }
.odp-insight-panel header > span { color: var(--insight-muted); font-size: 10px; }
.odp-section-breakdown button { display: grid; grid-template-columns: 110px minmax(0,1fr) 37px; align-items: center; gap: 12px; width: 100%; min-height: 40px; padding: 6px 0; border: 0; background: transparent; font-size: 11px; text-align: left; }
.odp-section-breakdown button > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.odp-insight-bar { display: block; height: 5px; overflow: hidden; border-radius: 4px; background: #f0f3f7; }
.odp-insight-bar i { display: block; height: 100%; border-radius: inherit; background: #7390bc; }
.odp-section-breakdown b, .odp-workload b { font-size: 12px; font-weight: 500; text-align: right; }
.odp-section-breakdown small, .odp-workload small { margin-left: 3px; color: var(--insight-muted); font-size: 10px; font-weight: 400; }
.odp-workload { max-height: 308px; overflow-y: auto; }
.odp-workload button { display: grid; grid-template-columns: 29px minmax(0,1fr) 40px; align-items: center; gap: 10px; width: 100%; min-height: 51px; padding: 8px 1px; border: 0; background: transparent; font-size: 11px; text-align: left; }
.odp-workload button > span:nth-child(2) { min-width: 0; overflow-wrap: anywhere; }
.odp-workload .odp-insight-bar { margin-top: 7px; }
.odp-insight-avatar { display: inline-flex; align-items: center; justify-content: center; width: 27px; height: 27px; border-radius: 50%; background: #eef2f7; color: #617189; font-size: 11px; }
.odp-completion-chart { margin: 0; }
.odp-completion-chart svg { display: block; width: 100%; height: auto; }
.odp-completion-chart svg text { fill: #718094; font-size: 11px; }
.odp-completion-chart circle { fill: #4d76b2; stroke: #fff; stroke-width: 1.5; }
.odp-chart-guide { stroke: #e6ecf3; stroke-width: 1; }
.odp-chart-line { fill: none; stroke: #4d76b2; stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; }
.odp-completion-chart figcaption { padding-top: 6px; color: var(--insight-muted); font-size: 10px; line-height: 1.6; }
.odp-chart-data { margin-top: 10px; }
.odp-chart-data summary { width: fit-content; padding: 10px 0; color: #58749b; font-size: 11px; cursor: pointer; }
.odp-chart-data table { width: 100%; margin-top: 8px; font-size: 11px; border-collapse: collapse; }
.odp-chart-data th, .odp-chart-data td { padding: 8px 5px; border-bottom: 1px solid var(--insight-line); text-align: right; }
.odp-chart-data th:first-child { text-align: left; font-weight: 500; }
.odp-order-totals { padding: 22px; border-radius: 7px; background: #f8fafc; }
.odp-order-totals dl { display: flex; flex-direction: column; gap: 22px; margin: 26px 0 22px; }
.odp-order-totals dt { color: var(--insight-muted); font-size: 11px; }
.odp-order-totals dd { margin: 7px 0 0; overflow-wrap: anywhere; font-size: 25px; line-height: 1.2; font-weight: 500; letter-spacing: -.025em; }
.odp-order-totals dd > small { margin-left: 6px; color: #6a7a8e; font-size: 12px; font-weight: 400; }
.odp-order-totals p { margin: 0; color: var(--insight-muted); font-size: 10px; line-height: 1.65; }
.odp-total-restricted { color: var(--insight-muted); font-size: 16px; }
.odp-insight-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 220px; gap: 8px; padding: 32px 20px; border: 1px dashed #dce4ed; border-radius: 6px; background: #fafbfd; text-align: center; }
.odp-insight-empty strong { font-size: 13px; font-weight: 500; }
.odp-insight-empty p { margin: 0; max-width: 310px; color: var(--insight-muted); font-size: 11px; line-height: 1.7; }
.odp-insight-empty.compact { min-height: 150px; padding: 20px; }
@media (max-width: 1100px) {
  .odp-insights { padding: 24px; }
  .odp-insight-header { align-items: flex-start; flex-wrap: wrap; }
  .odp-overview-top { grid-template-columns: minmax(0,1.3fr) minmax(230px,1fr); gap: 24px; }
  .odp-overview-columns { gap: 24px; }
  .odp-section-breakdown button { grid-template-columns: 93px minmax(0,1fr) 33px; gap: 9px; }
}
@media (max-width: 700px) {
  .odp-insights { padding: 21px 14px 28px; }
  .odp-insight-header { gap: 14px; margin-bottom: 19px; }
  .odp-insight-header h2 { font-size: 21px; }
  .odp-insight-header p { font-size: 11px; }
  .odp-insight-scope { display: none; }
  .odp-insight-controls { width: 100%; gap: 5px; }
  .odp-insight-segment button { padding: 0 12px; }
  .odp-insight-controls .odp-button { padding: 0 10px; }
  .odp-schedule-legend { gap: 11px 14px; font-size: 10px; }
  .odp-gantt-table { --odp-gantt-name-width: 160px; --odp-gantt-cell-width: 34px; }
  .odp-gantt-table[data-odp-gantt-mode="week"] { --odp-gantt-cell-width: 64px; }
  .odp-gantt-table thead .odp-gantt-name { padding: 0 10px; }
  .odp-gantt-table .odp-gantt-name button { padding: 8px 10px; }
  .odp-gantt-name strong { font-size: 11px; }
  .odp-unscheduled button { flex-wrap: wrap; gap: 6px; }
  .odp-unscheduled button > span:last-child { display: none; }
  .odp-overview-top { grid-template-columns: minmax(0,1fr); gap: 24px; padding-bottom: 22px; }
  .odp-progress-overview { padding: 22px; }
  .odp-progress-value { font-size: 50px; }
  .odp-insight-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 16px; padding: 23px 0; }
  .odp-insight-metric > strong { font-size: 28px; }
  .odp-overview-columns { grid-template-columns: minmax(0,1fr); gap: 26px; padding: 23px 0; }
  .odp-section-breakdown button { grid-template-columns: 104px minmax(0,1fr) 35px; }
  .odp-order-totals { padding: 21px; }
  .odp-pending-row td { flex-wrap: wrap; padding: 10px 14px; gap: 6px 10px; }
  .odp-pending-row strong { max-width: 220px; }
}

/* Project destinations extend the shared workspace navigation. */
.odp-sidebar-divider { height:1px; margin:12px 0 8px; background:#e2e6ec; }
.odp-sidebar-destination,.odp-sidebar-project { display:flex; align-items:center; gap:9px; min-width:0; text-align:left; }
.odp-sidebar-destination > span,.odp-sidebar-project > span:nth-child(2) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; flex:1; }
.odp-sidebar-destination > small,.odp-sidebar-project > small { font-size:11px; color:#667487; font-variant-numeric:tabular-nums; }
.odp-sidebar-project-icon { display:flex; color:#78b8a2; flex:none; }
.odp-sidebar-project:nth-child(4n+2) .odp-sidebar-project-icon { color:#efb257; }
.odp-sidebar-project:nth-child(4n+3) .odp-sidebar-project-icon { color:#b9a2dd; }
.odp-sidebar-project:nth-child(4n+4) .odp-sidebar-project-icon { color:#80ade0; }
.odp-sidebar-projects > p { padding:4px 10px; font-size:12px; color:#667487; }
.odp-sidebar-group-heading { position:relative; display:flex; align-items:center; justify-content:space-between; margin:12px 0 3px; padding-left:10px; min-height:44px; color:#667487; font-size:12px; }
.order-workspace-sidebar nav .odp-sidebar-group-heading > button { width:44px; min-height:44px; margin:0; padding:0; justify-content:center; font-size:21px; }
.odp-sidebar-create-menu { position:absolute; top:44px; left:0; right:0; z-index:2; padding:6px; border:1px solid #dce3ec; border-radius:6px; background:#fff; box-shadow:0 6px 20px #17233318; }
.odp-sidebar-create-menu[hidden] { display:none; }
.odp-project-heading { display:flex; align-items:center; gap:10px; min-width:0; }
.odp-project-heading > strong { font-size:18px; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.odp-sidebar-toggle { display:none; }
.odp-collection { padding:28px; }
.odp-collection > header { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:28px; }
.odp-collection > header > div > span { color:#606570; font-size:12px; }
.odp-collection h1 { margin:6px 0 8px; font-size:26px; overflow-wrap:anywhere; }
.odp-collection header p { color:#606570; font-size:13px; }
.odp-collection-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:16px; }
.odp-collection-card { display:flex; flex-direction:column; align-items:flex-start; gap:14px; padding:22px; min-height:178px; color:#22252b; background:#fff; border:1px solid #dfe2e8; border-radius:8px; text-align:left; }
.odp-collection-card:hover { border-color:#678ccd; background:#f8faff; }
.odp-collection-card:focus-visible { outline:2px solid #3c6dc0; outline-offset:2px; }
.odp-collection-card svg { width:30px; height:30px; color:#589f88; }
.odp-collection-card strong { font-size:16px; overflow-wrap:anywhere; }
.odp-collection-card > span { font-size:13px; color:#606570; }
.odp-portfolio-project-picker { padding:0; border:0; max-height:340px; overflow-y:auto; }
.odp-portfolio-project-picker legend { margin-bottom:10px; font-size:13px; font-weight:600; }
.odp-portfolio-project-picker label { display:flex; align-items:center; gap:12px; min-height:54px; padding:8px 4px; border-bottom:1px solid #eee; }
.odp-portfolio-project-picker label input { width:18px; height:18px; flex:none; }
.odp-portfolio-project-picker label > span { display:grid; gap:5px; min-width:0; }
.odp-portfolio-project-picker strong { font-weight:500; font-size:13px; overflow-wrap:anywhere; }
.odp-portfolio-project-picker small { font-size:12px; color:#606570; }
@media(max-width:900px) {
  .odp-sidebar-toggle { display:inline-flex; flex:none; min-width:44px; min-height:44px; }
  .odp-project-heading > strong { font-size:16px; }
  .odp-collection { padding:20px 16px; }
  .odp-collection > header { align-items:flex-start; flex-direction:column; }
  .odp-collection-grid { grid-template-columns:1fr; }
}


.order-desk-brand-group { display:flex; align-items:center; min-width:0; gap:8px; }

.odp-shared-calendar { padding: 12px 24px 24px; }
.odp-shared-calendar .order-calendar-layout { min-width: 0; }
.odp-add-assignee { display: inline-flex; align-items: center; gap: 5px; color: #5f7290; font-size: 11px; }
.odp-add-assignee svg { width: 14px; height: 14px; }
@media (max-width: 1100px) { .odp-shared-calendar .order-calendar-layout { grid-template-columns: minmax(0,1fr); } }
@media (max-width: 820px) { .odp-shared-calendar { padding: 12px; } }
.odp-shared-calendar { width: 100%; max-width: 100%; overflow-x: auto; }
@media (max-width: 820px) {
  .odp-shared-calendar .order-calendar-toolbar, .odp-shared-calendar .order-calendar-layout { min-width: 680px; }
  .odp-shared-calendar .order-calendar-day button { min-height: 44px; }
}
.odp-assignee-config { display: grid; grid-template-columns: minmax(0,1fr) 44px 44px 44px; align-items: center; gap: 4px; margin: 7px 0; }
.odp-assignee-config .odp-icon-button { width: 44px; min-height: 44px; }
.odp-assignee-config input { min-width: 0; min-height: 44px; }
.odp-assignee-directory .odp-options-notice { overflow-wrap: anywhere; }
.odp-assignee-directory p { margin: 0; }
.odp-assignee-directory p:empty { display: none; }
.odp-assignee-directory [hidden], .odp-editor [data-odp-assignee-retry][hidden] { display: none !important; }
.odp-assignee-directory .odp-button, .odp-assignee-directory .odp-icon-button { min-height: 44px; }
.odp-assignee-directory .odp-editor-heading .odp-icon-button { min-width: 44px; }
.odp-shared-calendar .order-calendar-day > div > button strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.odp-undated { margin: 0 24px 24px; padding: 16px; border: 1px solid #e2e6ec; border-radius: 12px; }
.odp-undated h3 { margin: 0 0 12px; font-size: 14px; }
.odp-undated > div { display: flex; flex-wrap: wrap; gap: 8px; }
.odp-undated button { max-width: 100%; min-height: 44px; padding: 8px 12px; border: 1px solid #dbe4ed; border-radius: 8px; color: #354b62; background: #f7fafc; font: inherit; text-align: left; overflow-wrap: anywhere; }
@media(max-width:768px) { .odp-undated { margin-inline: 12px; } }
