:root {
  --blue: #ef741a;
  --blue-dark: #d85c08;
  --purple: #f28b35;
  --ink: #353b45;
  --muted: #68717f;
  --line: #eadfd6;
  --canvas: #fcfaf8;
  --sileo-orange: #ef741a;
  --sileo-orange-dark: #cc5208;
  --sileo-charcoal: #3d434e;
  --sileo-tint: #fff3e9;
  --sileo-border: #f3d2bb;
}

body { color: var(--sileo-charcoal); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline-color: #fbb881; }

/* Shared workspace chrome */
.dashboard-page, .projects-page, .project-create-page, .owner-project-page { background: #fcfaf8; color: var(--sileo-charcoal); }
.sidebar, .topbar, .dashboard-footer { border-color: var(--line); }
.nav-item.active { background: var(--sileo-tint); color: var(--sileo-orange-dark); }
.nav-item.active:before { background: var(--sileo-orange); }
.nav-item:not(.future):hover, .logout-link:hover { background: #fff5ec; color: var(--sileo-orange-dark); }
.nav-heading { color: #7d7780; }
.nav-item.future { color: #777d86; }
.sidebar-help { background: linear-gradient(145deg, #fff6ee, #f7f4f1); border-color: #f3dfce; }
.help-icon { color: var(--sileo-orange); }
.sidebar-help p { color: #686f79; }
.topbar-location a, .projects-page .topbar-location a, .project-create-page .topbar-location a { color: var(--sileo-orange-dark); }
.topbar-location strong, .page-heading h1, .projects-page-head h1, .project-form-head h1 { color: var(--sileo-charcoal); }
.profile-avatar { background: #fff1e6; color: var(--sileo-orange-dark); }
.preview-badge { background: var(--sileo-tint); border-color: var(--sileo-border); color: var(--sileo-orange-dark); }
.preview-badge span { background: var(--sileo-orange); }
.welcome-banner { background: linear-gradient(110deg, #454b56, #535965 60%, #dc681a); }
.welcome-banner p { color: #f2e6dc; }
.art-board i { background: #f4e5d8; }
.art-board i:nth-child(1) { background: #f7b47f; }
.art-board i:nth-child(2) { background: #f6ddc8; }
.art-board i:nth-child(3) { background: #e4c8b2; }
.art-board i:nth-child(4) { background: #d7e9df; }
.metric-icon.purple, .mini-empty-icon.purple { background: #f8e8dc; color: #c86220; }
.form-icon, .metric-icon.blue, .empty-icon { background: var(--sileo-tint); color: var(--sileo-orange); }
.primary-button { background: var(--sileo-orange); box-shadow: 0 8px 18px #ef741a30; }
.primary-button:hover { background: var(--sileo-orange-dark); }

/* Login and privacy */
.login-page, .privacy-page { color: var(--sileo-charcoal); background: #fcfaf8; }
.pms-login-shell { background: radial-gradient(circle at 31% 48%, #ffe8d5b3, transparent 34%), linear-gradient(112deg, #fffefd, #fff8f1 67%, #fcfaf8); }
.pms-login-orbit { border-color: #f4cba97a; }
.pms-story-kicker { border-color: var(--sileo-border); background: #fffaf6; color: var(--sileo-orange-dark); }
.pms-story-copy h1, .pms-login-card h2, .pms-privacy-card h1 { color: var(--sileo-charcoal); }
.pms-story-copy h1 span { color: var(--sileo-orange-dark); background: linear-gradient(100deg, #e15e0a, #ff9a36, #e15e0a); background-size: 200% 100%; background-clip: text; -webkit-background-clip: text; }
.pms-story-copy p, .pms-login-subtitle, .pms-privacy-card p { color: #646d79; }
.analysis-panel, .pms-login-card, .pms-privacy-card { border-color: #f0dac9; box-shadow: 0 18px 45px #bc7b4720; }
.analysis-panel-header strong, .analysis-item-copy strong { color: var(--sileo-charcoal); }
.analysis-eyebrow, .analysis-spark, .analysis-float span { color: var(--sileo-orange); }
.analysis-progress .analysis-item-icon { background: var(--sileo-tint); color: var(--sileo-orange); }
.analysis-team .analysis-item-icon { background: #f2efed; color: #59616b; }
.analysis-trend path { stroke: var(--sileo-orange); }
.analysis-capacity-mark i { background: #e6b48f; }
.analysis-capacity-mark i:nth-child(2) { background: #f59b52; }
.analysis-capacity-mark i:nth-child(3) { background: #f8d2af; }
.pms-login-form label:not(.pms-remember) { color: var(--sileo-charcoal); }
.pms-field, .pms-captcha-box, .pms-captcha-box .pms-captcha-input { border-color: #e6d4c5; }
.pms-field:focus-within, .pms-captcha-input:focus { border-color: var(--sileo-orange); box-shadow: 0 0 0 3px #ffe6d2; }
.pms-forgot, .pms-preview-link, .pms-footer-links a, .pms-privacy-card p a, .pms-privacy-back { color: var(--sileo-orange-dark); }
.pms-refresh-captcha:hover { background: var(--sileo-tint); color: var(--sileo-orange-dark); }
.pms-remember input { accent-color: var(--sileo-orange); }
.pms-signin-button { background: linear-gradient(90deg, #dc5d0c, #ff8a25); box-shadow: 0 8px 17px #ef741a35; }
.privacy-page { background: linear-gradient(115deg, #fffefd, #fff4ea); }

/* Project overview and creation */
.project-add-icon, .project-close { color: var(--sileo-orange-dark); border-color: var(--sileo-border); }
.project-add-icon:hover, .project-close:hover { background: var(--sileo-tint); border-color: #f3b481; }
.projects-stat-icon.blue, .projects-empty-icon, .project-row-mark, .project-step-icon.blue, .project-live-icon { background: var(--sileo-tint); color: var(--sileo-orange); }
.projects-stat-icon.purple, .project-step-icon.purple { background: #f8e9de; color: #c96020; }
.projects-board-count, .project-checklist-note, .project-live-note { background: var(--sileo-tint); color: var(--sileo-orange-dark); }
.project-identity-mark { background: linear-gradient(135deg, #f28a2f, #e15d14); }
.project-section[open] summary { background: #fff7f0; }
.project-stepper, .project-identity-card, .project-section, .project-checklist { border-color: #efdccc; }
.project-stepper-kicker, .project-stepper-progress strong, .project-inline-add, .project-live-top { color: var(--sileo-orange-dark); }
.project-progress-track span, .project-stepper-nav button.active .project-check-number { background: var(--sileo-orange); }
.project-stepper-nav button.active { background: var(--sileo-tint); border-color: #f0b884; box-shadow: 0 4px 13px #d5773219; }
.project-stepper-nav button.active .project-check-number { border-color: var(--sileo-orange); color: #fff; }
.project-stepper-nav button:hover { border-color: #eda971; }
.project-next, .create-primary-button { background: var(--sileo-orange); border-color: var(--sileo-orange); color: #fff; box-shadow: 0 7px 15px #ef741a25; }
.project-next:hover, .create-primary-button:hover { background: var(--sileo-orange-dark); border-color: var(--sileo-orange-dark); }
.project-field input:focus, .project-field select:focus, .project-field textarea:focus, .project-dynamic-card input:focus, .project-dynamic-card select:focus,
.create-field input:focus, .create-field select:focus, .create-field textarea:focus, .create-row input:focus, .create-row select:focus,
.create-member-row input:focus, .create-member-row select:focus, .create-document-fields input:focus, .create-document-fields select:focus,
.create-milestones .create-row textarea:focus, .create-searchable-select .create-select-search:focus, .owner-project-page .create-row textarea:focus { border-color: var(--sileo-orange); box-shadow: 0 0 0 3px #ffe8d5; }
.create-text-button, .create-eyebrow, .create-modal-eyebrow, .create-documents-heading>span, .create-documents-footer #documentCount,
.create-date-control button, .create-document-drop span, .create-document-drop u, .create-document-icon { color: var(--sileo-orange-dark); }
.create-searchable-select .create-select-option:hover, .create-searchable-select .create-select-option.active { background: var(--sileo-tint); color: var(--sileo-orange-dark); }
.project-create-page .create-heading { border-color: var(--sileo-border); background: linear-gradient(110deg, #fffefd, #fff4e9); }
.project-create-page .create-heading h1 { color: transparent; background: linear-gradient(100deg, #3d434e 10%, #dc6617 55%, #f9983b 78%, #3d434e 100%); background-size: 220% 100%; background-clip: text; -webkit-background-clip: text; }
.project-create-page .create-heading:before { border-color: #f3c6a066; box-shadow: 0 0 0 48px #f7d5b325, 0 0 0 105px #f8e4d115; }
.create-hero-art i { border-color: #f2c69f; background: linear-gradient(135deg, #fffefa, #ffe0c3b8); box-shadow: 0 12px 15px #b6743825; }
.create-hero-art i:nth-child(3) { background: linear-gradient(135deg, #fff, #ffd8b4); }
.create-hero-art span { border-color: var(--sileo-orange); }
.create-document-drop { border-color: #efbb92; background: #fffaf6; }

/* Owner intake stepper and checklist */
.owner-stepper { border-color: #f1d6c0; border-top-color: var(--sileo-orange); background: linear-gradient(120deg, #fff 15%, #fff4ea); }
.owner-stepper-heading h1 { color: var(--sileo-charcoal); }
.owner-step-counter, .owner-step-number, .owner-checklist-icon, .owner-section-icon { background: var(--sileo-tint); color: var(--sileo-orange-dark); border-color: var(--sileo-border); }
.owner-stepper-track { background: #f7e3d2; }
.owner-stepper-track span { background: linear-gradient(90deg, #e9660b, #ff9942); }
.owner-stepper-nav button { border-color: #ead8c9; color: #59616b; }
.owner-stepper-nav button:not(:last-child)::after { color: var(--sileo-orange); }
.owner-stepper-nav button:hover { border-color: #eda971; }
.owner-stepper-nav button.active { border-color: #eda971; background: var(--sileo-tint); box-shadow: 0 4px 13px #d5773219, inset 0 0 0 1px #f7d0b3; }
.owner-stepper-nav button.active .owner-step-number { border-color: var(--sileo-orange); background: var(--sileo-orange); color: #fff; }
.owner-checklist { border-color: #efdccc; }
.owner-checklist-ring { background: conic-gradient(var(--sileo-orange) var(--progress), #f4e7dc 0); box-shadow: 0 0 0 6px #fff, 0 0 0 7px #f0dccc; }
.owner-checklist-list button:hover, .owner-checklist-list button.active { background: var(--sileo-tint); }
.owner-checklist-list button:not(:last-child)::after { border-color: #edb889; }
.owner-check-arrow, .owner-checklist-note span { color: var(--sileo-orange-dark); }
.owner-checklist-note { background: #fff6ee; color: #685b52; }
.owner-project-page .dashboard-footer { border-color: #eedfd1; }

/* Supporting documents: type and attachment share one row. */
.create-document-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 14px; align-items: start; }
.create-document-row-head { grid-column: 1 / -1; }
.create-document-row .create-document-fields,
.create-document-row:not(.has-custom-name) .create-document-fields,
.owner-project-page .create-document-row .create-document-fields,
.owner-project-page .create-document-row:not(.has-custom-name) .create-document-fields { grid-template-columns: minmax(0, 1fr); }
.create-document-file { min-width: 0; }
.create-document-file-label { display: block; margin-bottom: 5px; color: #354866; font-size: 10px; font-weight: 600; }
.create-document-file .create-document-drop,
.create-document-file .create-document-selected { margin-top: 0; min-height: 34px; }
.create-document-file .create-document-drop:focus-visible { outline-color: #fbb881; }
@media (max-width: 650px) {
  .create-document-row { grid-template-columns: minmax(0, 1fr); row-gap: 10px; }
  .create-document-row-head { grid-column: 1; }
}

.create-document-fields [data-document-type-select][hidden],
.create-document-fields [data-custom-document-name][hidden] { display: none; }
.create-custom-document-control { display: flex; align-items: flex-end; gap: 7px; }
.create-custom-document-control label { flex: 1; }
.create-custom-document-control button { flex: none; min-height: 34px; padding: 0 11px; border: 1px solid var(--sileo-border); border-radius: 5px; background: #fff7f0; color: var(--sileo-orange-dark); font-size: 10px; font-weight: 700; }
.create-custom-document-control button:hover { background: #ffe9d7; }
.create-document-selected { gap: 8px; }
.create-document-selected>span:nth-child(2) { min-width: 0; }
.create-document-selected .create-document-review { display: inline-flex; align-items: center; justify-content: center; flex: none; min-height: 28px; padding: 0 12px; border: 1px solid var(--sileo-orange); border-radius: 5px; background: var(--sileo-orange); color: #fff; box-shadow: 0 2px 5px #e7651826; font-family: inherit; font-size: 11px; font-weight: 700; line-height: 1; white-space: nowrap; cursor: pointer; transition: background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.create-document-selected .create-document-review:hover { border-color: var(--sileo-orange-dark); background: var(--sileo-orange-dark); box-shadow: 0 3px 8px #e7651838; transform: translateY(-1px); }
.create-document-selected .create-document-review[data-reselect-file] { border-color: #eeb489; background: #fff7f0; color: var(--sileo-orange-dark); box-shadow: none; }
.create-document-selected .create-document-review[data-reselect-file]:hover { border-color: var(--sileo-orange); background: #ffead9; box-shadow: 0 2px 6px #e7651820; }
.create-document-selected .create-document-review:focus-visible { outline: 2px solid var(--sileo-orange-dark); outline-offset: 2px; }
.create-document-selected button[data-remove-file],
.create-document-selected button[data-remove-document-file] { flex: none; }

body.document-review-open { overflow: hidden; }
.document-review-backdrop { position: fixed; inset: 0; z-index: 1500; display: flex; align-items: center; justify-content: center; padding: 18px; background: #23262dc2; }
.document-review-backdrop[hidden], .document-review-backdrop [hidden] { display: none; }
.document-review-dialog { display: flex; flex-direction: column; width: min(1500px, 100%); max-height: calc(100vh - 36px); overflow: hidden; border: 1px solid #f0d6c0; border-radius: 6px; background: #fff; box-shadow: 0 24px 75px #15181f66; }
.document-review-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 16px 20px; border-bottom: 1px solid #f0e2d6; }
.document-review-header span { color: var(--sileo-orange-dark); font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.document-review-header h2 { max-width: 100%; margin: 4px 0 0; overflow-wrap: anywhere; color: var(--sileo-charcoal); font-size: 16px; }
.document-review-header button { width: 29px; height: 29px; flex: none; border: 1px solid #ead9cd; border-radius: 6px; background: #fff; color: #52606b; font-size: 22px; line-height: 1; }
.document-review-dialog iframe { width: 100%; height: min(68vh, 650px); min-height: 320px; border: 0; background: #f7f5f3; }
.document-review-pdf-help { margin: 0; padding: 8px 20px; border-top: 1px solid #f0e2d6; color: #52606b; font-size: 11px; }
.document-review-office { padding: 55px 24px; text-align: center; }
.document-review-office strong { color: var(--sileo-charcoal); font-size: 16px; }
.document-review-office p { max-width: 450px; margin: 9px auto 0; color: #66717b; font-size: 12px; }
.document-review-actions { display: flex; justify-content: flex-end; gap: 9px; padding: 12px 20px; border-top: 1px solid #f0e2d6; }
.document-review-actions a, .document-review-actions button { display: inline-flex; align-items: center; justify-content: center; min-height: 33px; padding: 0 13px; border: 1px solid var(--sileo-border); border-radius: 6px; background: #fff; color: var(--sileo-orange-dark); font-size: 11px; font-weight: 700; text-decoration: none; cursor: pointer; }
.document-review-actions a { border-color: var(--sileo-orange); background: var(--sileo-orange); color: #fff; }
.document-review-actions a:hover { background: var(--sileo-orange-dark); }
