/* Tapestry category palette ---------------------------------------------------
   A restrained heritage palette. Every category receives one muted accent;
   Collections and Records inherit the color of their parent category.
   Neutral, danger, and secondary actions keep their semantic treatments. */

.category-theme {
    --category-accent: #6f685d;
    --category-accent-hover: #5d574e;
    --category-accent-soft: rgba(111, 104, 93, .14);
    --category-accent-border: rgba(111, 104, 93, .56);
    --category-accent-text: #fffdf7;
}

.category-theme--today {
    --category-accent: #667861;
    --category-accent-hover: #556650;
    --category-accent-soft: rgba(102, 120, 97, .15);
    --category-accent-border: rgba(102, 120, 97, .58);
}
.category-theme--household {
    --category-accent: #657487;
    --category-accent-hover: #536276;
    --category-accent-soft: rgba(101, 116, 135, .15);
    --category-accent-border: rgba(101, 116, 135, .58);
}
.category-theme--home {
    --category-accent: #7b654f;
    --category-accent-hover: #695440;
    --category-accent-soft: rgba(123, 101, 79, .15);
    --category-accent-border: rgba(123, 101, 79, .58);
}
.category-theme--family {
    --category-accent: #745f70;
    --category-accent-hover: #624f5e;
    --category-accent-soft: rgba(116, 95, 112, .15);
    --category-accent-border: rgba(116, 95, 112, .58);
}
.category-theme--people {
    --category-accent: #956c5b;
    --category-accent-hover: #805a4b;
    --category-accent-soft: rgba(149, 108, 91, .15);
    --category-accent-border: rgba(149, 108, 91, .58);
}
.category-theme--money {
    --category-accent: #917b45;
    --category-accent-hover: #796638;
    --category-accent-soft: rgba(145, 123, 69, .16);
    --category-accent-border: rgba(145, 123, 69, .60);
}
.category-theme--library {
    --category-accent: #527774;
    --category-accent-hover: #426562;
    --category-accent-soft: rgba(82, 119, 116, .15);
    --category-accent-border: rgba(82, 119, 116, .58);
}
.category-theme--lifestyle {
    --category-accent: #74764f;
    --category-accent-hover: #616340;
    --category-accent-soft: rgba(116, 118, 79, .15);
    --category-accent-border: rgba(116, 118, 79, .58);
}
.category-theme--legacy {
    --category-accent: #7c5359;
    --category-accent-hover: #694349;
    --category-accent-soft: rgba(124, 83, 89, .15);
    --category-accent-border: rgba(124, 83, 89, .58);
}
.category-theme--google {
    --category-accent: #586f82;
    --category-accent-hover: #485e70;
    --category-accent-soft: rgba(88, 111, 130, .15);
    --category-accent-border: rgba(88, 111, 130, .58);
}
.category-theme--system {
    --category-accent: #666a68;
    --category-accent-hover: #535755;
    --category-accent-soft: rgba(102, 106, 104, .15);
    --category-accent-border: rgba(102, 106, 104, .58);
}
.category-theme--steward {
    --category-accent: #876b49;
    --category-accent-hover: #72583b;
    --category-accent-soft: rgba(135, 107, 73, .16);
    --category-accent-border: rgba(135, 107, 73, .60);
}

/* The child navigation is the clearest persistent category cue. */
.category-theme .child-region strong {
    color: var(--category-accent);
}
.category-theme .child-link:hover,
.category-theme .child-link:focus-visible {
    border-color: var(--category-accent-border);
    background: var(--category-accent-soft);
}
.category-theme .child-link.selected {
    border-color: var(--category-accent);
    background: var(--category-accent);
    color: var(--category-accent-text);
}

/* Canonical primary buttons inherit the current category. */
.category-theme .workspace .t-button:not(.secondary):not(.danger):not(.ghost),
.category-theme .workspace .t-primary,
.category-theme .workspace button.primary {
    border-color: var(--category-accent);
    background: var(--category-accent);
    color: var(--category-accent-text);
}
.category-theme .workspace .t-button:not(.secondary):not(.danger):not(.ghost):hover,
.category-theme .workspace .t-button:not(.secondary):not(.danger):not(.ghost):focus-visible,
.category-theme .workspace .t-primary:hover,
.category-theme .workspace .t-primary:focus-visible,
.category-theme .workspace button.primary:hover,
.category-theme .workspace button.primary:focus-visible {
    border-color: var(--category-accent-hover);
    background: var(--category-accent-hover);
}

/* Quiet selected states may use the same family without becoming bright. */
.category-theme .workspace :is(.t-tabs button.selected, .t-personal-action.is-active) {
    border-color: var(--category-accent-border);
    background: var(--category-accent-soft);
    color: inherit;
}
