/* Joorim / lavender garden. Color-only theme inspired by the supplied reference. */
:root {
  --primary: #5953dc;
  --primary-hover: #4640be;
  --ink: #302b60;
  --lavender: #b8c2f2;
  --lavender-soft: #e8e9fc;
  --pistachio: #c1dc91;
  --pistachio-soft: #edf4df;
  --pink: #f2a4d6;
  --yellow: #eadd79;
  --green: #178567;
  --coral: #ee6866;
  --surface: #faf7f4;
  --muted: #665e7d;
  --line: #ded9eb;
  --navy: var(--ink);
  --teal: var(--primary);
  --sand: var(--pistachio);
  --ivory: #f7f3f0;
  --slate: var(--muted);
  --border: var(--line);
  --soft: var(--lavender-soft);
}

body { background: #e8eafb; color: var(--ink); }
.header { background: var(--surface); box-shadow: 0 3px 20px #302b600b; }
.nav { color: var(--ink); }
.nav a.active, .text-link { color: var(--primary); }
.btn, .search-bar .btn, .signup-btn { background: var(--primary); color: #fff; }
.btn:hover { background: var(--primary-hover); }
.btn.outline { background: transparent; border-color: #a7a0d2; color: var(--ink); }
.btn.outline:hover { background: var(--lavender-soft); }
.btn.light { background: var(--pistachio); color: var(--ink); }
.btn.light:hover { background: #d0e7a7; }
.btn.danger { background: #a3374d; color: #fff; }
.reference-hero { background: #eeeaf5; }
.reference-hero:before { background: #b8c2f224; }
.reference-hero h1 { color: var(--ink); }
.hero-copy > p { color: var(--muted); }
.panel, .card, .profile-card { background: var(--surface); border-color: #ffffffa6; }
.search-bar { background: var(--surface); border-color: var(--line); }
.activity-tile { background: var(--pistachio); border-color: transparent; box-shadow: none; }
.activity-tile:nth-child(2) { background: var(--pink); }
.activity-tile:nth-child(3) { background: var(--lavender); }
.activity-tile:nth-child(4) { background: var(--yellow); }
.activity-tile:nth-child(5) { background: #f2b6a8; }
.activity-tile:nth-child(6) { background: #9bcdb7; }
.activity-tile:hover { border-color: var(--primary); box-shadow: 0 5px 18px #5953dc18; }
.activity-tile :is(h3,b,small) { color: var(--ink); }
.activity-tile .icon { background: #ffffff80; color: var(--ink); }
.activity-tile .activity-art { border-radius: 10px; box-shadow: 0 0 0 6px var(--surface); }
.step { background: var(--pistachio-soft); }
.step:nth-child(2) { background: var(--lavender-soft); }
.step:nth-child(3) { background: #fae2f2; }
.step-number, .step:nth-child(2) .step-number { background: var(--primary); color: #fff; }
.step:nth-child(3) .step-number { background: var(--green); }
.step:not(:last-child):after { color: var(--primary); }
.step-icon { color: var(--primary); }
.people-panel .section-caption .btn { border-color: #a7a0d2; }
.trust-items a > span { background: var(--lavender-soft); color: var(--primary); }
.security, .security-banner, .wide-cta { background: var(--primary); }
.security-banner:after { background: linear-gradient(to right,#5953dcf5,#5953dcbd 55%,transparent); }
.security-banner > div > svg { background: var(--pistachio); color: var(--ink); }
.security-banner span { background: var(--pistachio); color: var(--ink); }
.security p, .safety-row small { color: #eeecff; }
.wide-cta:after { background: linear-gradient(to right,#5953dc,#5953dc99 55%,transparent); }
.wide-cta .btn.light { background: var(--pistachio); color: var(--ink); }
.stat-cards svg, .about-stat svg { color: var(--primary); background: var(--lavender-soft); }
.stat-cards > div:nth-child(2) svg { background: var(--pistachio-soft); color: #416333; }
.footer { background: var(--primary); color: #fff; border-color: transparent; }
.footer :is(p,.footer-links,.footer-activities,.footer-contact small,.footer-brand>span,.footer-bottom) { color: #f0eeff; }
.footer-bottom { border-color: #ffffff30; }
.footer a:hover { color: var(--pistachio); }
.store-buttons button { background: var(--ink); }
.mission-panel article { background: var(--lavender-soft); }
.mission-panel article:last-child { background: var(--pistachio-soft); }
.large-icon { background: var(--lavender-soft); color: var(--primary); }
.sand-icon { background: var(--pistachio-soft); color: #416333; }
.story-timeline article { background: #fae2f2; border-color: #c580ad; }
.story-timeline article:nth-child(even) { background: var(--pistachio-soft); border-color: #95b56b; }
.timeline-number { background: var(--pistachio); color: var(--ink); }
.story-timeline article:nth-child(even) .timeline-number { background: var(--primary); color: #fff; }
.contact-layout > article, .contact-layout > aside, .value-card, .about-stat { background: var(--surface); }
.contact-row, .social-box, .faq-panel details { background: var(--lavender-soft); border-color: var(--line); }
.support-topics button { background: var(--pistachio); }
.support-topics button:nth-child(2) { background: var(--pink); }
.support-topics button:nth-child(3) { background: var(--lavender); }
.support-topics button:nth-child(4) { background: var(--yellow); }
.support-topics :is(small,h3) { color: var(--ink); }
.support-topics button > span { background: #ffffff75; color: var(--ink); }
.support-topics em { color: var(--ink); }
.interest-chips > a, .interest-chips > span, .profile-detail-cards .interest-chips a { background: var(--lavender-soft); color: var(--ink); }
.interest-chips a:nth-child(3n), .interest-chips span:nth-child(3n) { background: var(--pistachio-soft); }
.quality-chips > span, .day-chips > span { background: #f0ecf4; border-color: var(--line); }
.day-chips .selected { background: var(--primary); border-color: var(--primary); color: #fff; }
.verified-note, .note-green { background: var(--pistachio-soft); color: #315e43; }
.verified-note small { color: #4c6851; }
.note-blue, .public-info { background: var(--lavender-soft); color: #514777; }
.private-info, .meeting-safety { background: #f8f0ca; }
.compat-ring { background: conic-gradient(var(--primary) 0 88%,#d9d6f4 88% 100%); }
.compat-ring:before { background: var(--surface); }
.reference-rating { color: #82701c !important; }
.reference-item { background: #f6f1f8; border-color: var(--line); }
.activity-filters a { background: var(--surface); border-color: var(--line); }
.activity-filters a.active { background: var(--primary); border-color: var(--primary); color: #fff; }
.messages { background: #eeebf6; }
.message { background: #ddd9fa; color: var(--ink); }
.message.other { background: var(--surface); }
.message small { color: #655c80; }
.review-companion, .rating-criterion, .reference-text-section { background: var(--lavender-soft); }
.rating-options .star { background: var(--surface); border-color: var(--line); color: var(--muted); }
.rating-options .star.selected { background: var(--primary); color: #fff; border-color: var(--primary); }
.private-report-box { background: #f8f0ca; }
.notice { background: var(--pistachio-soft); border-color: #c5d8a7; color: #3b6040; }
.notice.warn { background: #f8f0ca; border-color: #e2d690; color: #735824; }
.field :is(input,select,textarea), .chat-compose input { background: var(--surface); border-color: #cfc8e1; color: var(--ink); }
:is(input,textarea)::placeholder { color: #7e7595; }
:is(input,select,textarea,button,a):focus-visible { outline: 3px solid var(--primary); outline-offset: 3px; }
.demo-label { background: #faf7f4f5; border-color: #d5cde8; color: var(--muted); }
.modal-close { background: var(--lavender-soft); color: var(--ink); }

/* Personal workspace */
.dashboard-page, .owner-page { background: #e8eafb; }
.dash-sidebar, .dash-stat, .dash-card { background: var(--surface); border-color: var(--line); }
.dash-sidebar nav a { background: transparent; border-color: transparent; color: var(--muted); }
.dash-sidebar nav a:hover { background: var(--lavender-soft); color: var(--primary); }
.dash-sidebar nav a.active { background: var(--lavender-soft); color: var(--primary); border-color: #cac5f0; }
.dash-sidebar nav em { background: var(--pistachio); color: var(--ink); }
.dash-sidebar-support { background: var(--pistachio-soft); }
.dash-demo-note { background: #f8f0ca; border-color: #e5daa7; color: #735f32; }
.dash-welcome { background: var(--primary); }
.dash-welcome:after { background: linear-gradient(to left,#5953dc 12%,#5953dc77 70%); }
.dash-welcome-caption { background: #302b6080; }
.dash-eyebrow { color: var(--pistachio); }
.dash-welcome p { color: #f0eeff; }
.dash-welcome-actions .btn.light { background: var(--pistachio); color: var(--ink); }
.dash-welcome-actions .btn.outline { background: transparent; color: #fff; }
.dash-stat > span, .dash-stat.navy > span { background: var(--lavender-soft); color: var(--primary); }
.dash-stat.sand > span { background: var(--pistachio-soft); color: #476333; }
.dash-stat.slate > span { background: #fae2f2; color: #844368; }
.panel-avatar { background: linear-gradient(135deg,var(--lavender),var(--pink)); color: var(--ink); }
.dash-progress-track { background: #dedaf2; }
.dash-progress-track i { background: linear-gradient(to left,var(--primary),#a6a0ee); }
.dash-progress-list .done, .dash-progress-list .done svg { color: #36694c; }
.dash-progress-list .done svg { background: var(--pistachio-soft); }
.dash-next-feature, .dash-review-intro, .dash-avatar-editor { background: var(--lavender-soft); border-color: #d4cdef; }
.dash-row-icon, .panel-empty > svg { background: var(--lavender-soft); color: var(--primary); }
.dash-quick-access > div:last-child > a, .dash-written-review, .dash-support-draft { background: var(--surface); border-color: var(--line); color: var(--ink); }
.dash-check-chips label { background: var(--surface); border-color: var(--line); color: var(--muted); }
.dash-check-chips label:has(input:checked) { background: var(--pistachio-soft); border-color: #9cba70; color: #3d612c; }
.dash-filter-note, .dash-inline-info { background: var(--pistachio-soft); color: #3d612c; border-color: #cbdcb2; }
.dash-filter-pills a { color: var(--muted); border-color: var(--line); }
.dash-filter-pills a.active { color: var(--primary); background: var(--lavender-soft); border-color: #bcb4e9; }
.dash-request-tabs span, .dash-request-tabs .active span { background: var(--lavender-soft); color: var(--primary); }
.dash-calendar-grid button.today { background: var(--pistachio-soft); border-color: #a4bf7d; color: #416333; }
.dash-calendar-grid button:hover { background: var(--lavender-soft); }
.dash-calendar-grid button.selected { background: var(--primary); color: #fff; }
.dash-calendar-grid button i, .dash-calendar-key i { background: #a65b8b; }
.dash-chat-list, .dash-chat-window { background: var(--surface); border-color: var(--line); }
.dash-chat-search, .dash-chat-program, .dash-chat-thread.active { background: var(--lavender-soft); border-color: #d4ceec; color: var(--ink); }
.dash-message-history { background: #eeebf6; }
.dash-message-history .message { background: #ddd9fa; color: var(--ink); }
.dash-message-history .message.other { background: var(--surface); }
.dash-notification.unread { background: var(--pistachio-soft); }
.dash-notification > span { background: var(--lavender-soft); color: var(--primary); }
.dash-support-draft span { background: var(--pistachio-soft); color: #416333; }
.dashboard-shell :is(.dash-section-head p,.dash-breadcrumb,.dash-top-actions>span,.dash-stat small,.dash-progress-top>div>span,.dash-avatar-editor p,.dash-fieldset>p,.dash-form-footer>span,.dash-row-body p,.dash-row-body small,.dash-muted-note,.dash-toggle-row small,.dash-support-draft p,.dash-chat-disclaimer,.dash-account-details dt,.dash-member span:not(.panel-avatar),.dash-sidebar-label,.dash-sidebar-support p,.dash-compact-row small,.panel-empty p,.dash-notification p,.dash-notification>small,.dash-chat-thread small,.dash-chat-header small,.dash-chat-search input,.dash-calendar-grid button,.dash-calendar-key,.calendar-weekday,.dash-progress-list,.dash-account-details dd,.dash-message-history .message small,.dash-written-review>p,.dash-written-review>small,.dash-security-guides p,.dash-data-settings p) { color: var(--muted); }
.dashboard-page .field :is(input,select,textarea) { color: var(--ink); border-color: #cfc8e1; }
.dashboard-shell .dash-calendar-grid button.selected { color: #fff; }
.dashboard-shell .dash-calendar-grid button.today:not(.selected) { color: #416333; }
.panel-file-preview { background: #f2eef9; border-color: #d1c7e7; color: var(--ink); }

/* Business workspace */
.owner-sidebar { background: var(--primary); border-color: #4e47c8; color: #eeecff; }
.owner-brand > span, .owner-identity small, .owner-sidebar-bottom > span { color: #e0dcff; }
.owner-identity b { color: #fff; }
.owner-identity > span { background: #ffffff20; color: var(--pistachio); }
.owner-identity > i { color: var(--pistachio); border-color: #c1dc9180; }
.owner-sidebar nav { scrollbar-color: #aaa4ef transparent; }
.owner-sidebar nav a:not(.active), .owner-sidebar-bottom a, .owner-sidebar-bottom svg { color: #f0eeff; }
.owner-sidebar nav a:hover { background: #ffffff15; color: #fff; }
.owner-sidebar nav a.active { background: var(--pistachio); color: var(--ink); border-color: var(--pistachio); box-shadow: inset -3px 0 0 #78974e; }
.owner-sidebar nav em { background: var(--pink); color: var(--ink); }
.owner-welcome { background: linear-gradient(115deg,#756ee7,var(--primary) 60%); color: #fff; }
.owner-welcome > div:first-child > span { color: var(--pistachio); }
.owner-welcome > div:first-child > p, .owner-health-card p, .owner-health-card li { color: #f0eeff; }
.owner-welcome .btn.light { background: var(--pistachio); color: var(--ink); }
.owner-welcome .btn.outline { background: transparent; color: #fff; border-color: #ffffff70; }
.owner-health-card > span { background: #ffffff18; border-color: #ffffff40; color: var(--pistachio); }
.owner-health-card li .pending { background: var(--yellow); }
.owner-demo-banner { background: #f8f0ca; border-color: #e4d79d; color: #735824; }
.owner-demo-banner :is(span,a,svg) { color: #735824; }
.owner-card, .owner-stat { background: var(--surface); border-color: var(--line); }
.owner-stat > span, .owner-stat.navy > span { background: var(--lavender-soft); color: var(--primary); }
.owner-stat.sand > span { background: var(--pistachio-soft); color: #416333; }
.owner-stat.slate > span { background: #fae2f2; color: #844368; }
.owner-donut:before { background: var(--surface); }
.owner-todo > a > span { background: var(--pistachio-soft); color: #416333; }
.owner-table th { background: var(--lavender-soft); border-color: var(--line); }
.owner-table td, .owner-table-wrap, .owner-pagination { border-color: var(--line); }
.owner-table tbody tr:hover { background: #f0ecfa; }
.owner-mini-button, .owner-pagination a { color: var(--primary); border-color: #cfc8e9; background: var(--surface); }
.owner-mini-button:hover { background: var(--lavender-soft); }
.owner-text-button, .owner-modal-links a { color: var(--primary); }
.owner-avatar.initials { background: linear-gradient(135deg,var(--lavender),var(--pink)); color: var(--ink); }
.owner-audit-compact > span, .owner-page-grid > article > span, .owner-empty > svg { background: var(--lavender-soft); color: var(--primary); }
.owner-inline-note, .owner-bulk-bar { background: var(--pistachio-soft); border-color: #c6d9a8; }
.owner-inline-note > svg { color: #416333; }
.owner-request-summary > a { background: var(--lavender-soft); border-color: #d4cdef; }
.owner-report-counters > a { background: var(--pistachio-soft); border-color: #c6d9a8; }
.owner-report-counters > a:nth-child(1) { background: #f8f0ca; border-color: #e4d79d; }
.owner-request-summary b, .owner-report-counters b { color: var(--ink); }
.owner-activity-grid > article { background: var(--lavender-soft); border-color: #d4cdef; }
.owner-activity-grid > article:nth-child(3n+2) { background: var(--pistachio-soft); }
.owner-activity-grid > article:nth-child(3n) { background: #fae2f2; }
.owner-activity-toggle { background: var(--surface); color: var(--muted); border-color: var(--line); }
.owner-activity-toggle.on { background: var(--pistachio); border-color: #adc97b; color: #354d29; }
.owner-review-list > article, .owner-page-grid > article, .owner-connection-grid > article { background: var(--surface); border-color: var(--line); }
.owner-export-grid > button { background: var(--lavender-soft); border-color: #d4cdef; color: var(--ink); }
.owner-export-grid :is(svg,em), .owner-bars em { color: var(--primary); }
.owner-bars i { background: #e0daf3; }
.owner-bars i > b { background: linear-gradient(to left,var(--primary),#a8a2ee); }
.permission-yes { background: var(--pistachio-soft); color: #416333; }
.permission-no { color: #837b9b; }
.owner-connection-grid > article > span { background: #f8f0ca; color: #735824; }
.owner-modal-summary, .owner-case-history article, .owner-conversation-view article { background: var(--lavender-soft); border-color: #d4cdef; }
.owner-sensitive-text { background: #f8f0ca; border-color: #e4d79d; }
.owner-page :is(.owner-topbar small,.owner-topbar>div:first-child>span,.owner-section-head p,.owner-stat small,.owner-stat em,.owner-chart-legend>div,.owner-table th,.owner-table td,.owner-table td>small,.owner-source,.owner-filter-form input,.owner-filter-form select,.owner-review-list article>p,.owner-review-top small,.owner-page-grid p,.owner-page-grid small,.owner-export-grid span,.owner-connection-grid p,.owner-backup-row p,.owner-footnote,.owner-audit-compact small,.owner-todo>a small,.owner-donut small,.owner-empty p,.owner-pagination,.owner-pagination a,.owner-activity-grid p,.owner-request-summary span,.owner-report-counters span,.owner-bars span,.owner-detail-list dt,.owner-detail-list dd,.owner-modal-user p,.owner-modal-bio,.owner-modal-meta,.owner-modal-summary,.owner-sensitive-text p,.owner-case-history p,.owner-case-history small,.owner-conversation-view p,.owner-page .check-label) { color: var(--muted); }
.owner-page .owner-source { color: var(--muted) !important; }
.owner-page :is(.owner-table td>b,.owner-table-person b,.owner-chart-legend b,.owner-empty h3,.owner-modal-summary b,.owner-case-history b,.owner-conversation-view b) { color: var(--ink); }
.owner-page .owner-inline-note { color: #416333; }
.owner-page .field :is(input,select,textarea), .owner-filter-form > label, .owner-filter-form select { color: var(--ink); background: var(--surface); border-color: #cfc8e1; }
.owner-card .btn.outline, .owner-topbar .btn.outline { background: transparent; color: var(--ink); border-color: #b5acd9; }
.owner-icon-btn { background: var(--surface); color: var(--primary); border-color: var(--line); }
.owner-icon-btn > i { background: var(--coral); }
.owner-badge, .dash-status { background: #f8f0ca; color: #735824; }
.owner-badge:is(.active,.approved,.resolved,.accepted), .dash-status.accepted { background: var(--pistachio-soft); color: #326047; }
.owner-badge:is(.pending,.new,.draft) { background: #f8f0ca; color: #735824; }
.owner-badge:is(.suspended,.cancelled,.hidden), .dash-status.cancelled { background: #fbe1e4; color: #91354d; }
.owner-badge:is(.in_progress,.completed), .dash-status.completed { background: var(--lavender-soft); color: #5143a6; }
.owner-priority { color: #735824; }
.owner-priority.medium { color: #735824; }
.owner-priority.high, .owner-danger-link { color: #a3374d; }
.owner-priority.low { color: #326047; }
.site-owner-announcement { background: var(--pistachio); color: var(--ink); border-color: #acc77e; }
.site-owner-announcement small, .owner-public-review p { color: var(--muted); }
.owner-public-review b { color: var(--primary); }

@media (max-width:760px) {
  .nav { background: var(--surface); }
  .wide-cta:after { background: #5953dcd9; }
}

/* Transparent recolored brand lockup. CSS trims only the transparent canvas margin. */
.footer .footer-logo.logo-recolored { width:120px; background:var(--surface); border:8px solid var(--surface); border-radius:12px; box-sizing:content-box; }
@media(max-width:760px){.footer .footer-logo.logo-recolored{width:108px;border-width:7px;}}
