/* Only app chrome: Filament continues to own navigation, permissions and collapse. */
:root {
    --oym-shell-surface: #ffffff;
    --oym-shell-text: var(--shift-ink, #241a17);
    --oym-shell-muted: var(--shift-muted-light, #5c514b);
    --oym-shell-line: var(--shift-brand-line, #d9cec1);
    --oym-shell-soft: #eee5d9;
    --oym-shell-selected: var(--shift-oxblood, #440808);
    --oym-shell-selected-ink: var(--shift-action-light-ink, #e6d5bd);
    --oym-shell-heading: var(--shift-oxblood, #440808);
}
html.dark {
    --oym-shell-surface: #24201e;
    --oym-shell-text: #f2e9dd;
    --oym-shell-muted: #c2b4aa;
    --oym-shell-line: #514237;
    --oym-shell-soft: #332b25;
    --oym-shell-selected: var(--shift-cream, #e6d5bd);
    --oym-shell-selected-ink: var(--shift-action-dark-ink, #440808);
    --oym-shell-heading: #ead5bc;
}
html .fi-topbar,
html .fi-sidebar,
html .fi-sidebar-header {
    background: var(--oym-shell-surface);
    color: var(--oym-shell-text);
    font-family: var(--shift-font, "Nimbus Sans", "Helvetica Neue", Arial, sans-serif);
}
html .fi-topbar { border-bottom: 1px solid var(--oym-shell-line); box-shadow: none; }
html .fi-sidebar { border-inline-end: 1px solid var(--oym-shell-line); }
html .fi-sidebar-header { box-shadow: none; }
html .fi-sidebar-nav { padding-inline: 12px; }
html .fi-sidebar-nav-groups { row-gap: 18px; }
html .fi-sidebar-group + .fi-sidebar-group { border-top: 1px solid var(--oym-shell-line); padding-top: 16px; }
html .fi-sidebar .fi-sidebar-group-label,
html .fi-sidebar .fi-sidebar-group-label .oym-nav-title {
    color: var(--oym-shell-text); font-size: 13px; font-weight: 500;
}
html .fi-sidebar .fi-sidebar-group-label .oym-nav-sub {
    color: var(--oym-shell-muted); font-size: 11px; opacity: 1; margin-top: 3px; line-height: 1.35;
}
html .fi-sidebar .fi-sidebar-item > .fi-sidebar-item-btn {
    min-height: 44px; padding: 10px 11px; border-radius: 8px;
}
html[data-oym-style] .fi-sidebar.fi-main-sidebar .fi-sidebar-item > .fi-sidebar-item-btn .fi-sidebar-item-label,
html[data-oym-style] .fi-sidebar.fi-main-sidebar .fi-sidebar-item > .fi-sidebar-item-btn .fi-sidebar-item-icon {
    color: var(--oym-shell-text) !important;
}
html .fi-sidebar .fi-sidebar-item-label { font-size: 13px; line-height: 1.35; white-space: normal; overflow-wrap: anywhere; }
html .fi-sidebar .fi-sidebar-item-icon { width: 20px; height: 20px; flex-shrink: 0; }
html .fi-sidebar .fi-sidebar-item > .fi-sidebar-item-btn:hover { background: var(--oym-shell-soft); }
html[data-oym-style] .fi-sidebar.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-btn {
    background: var(--oym-shell-selected) !important; box-shadow: none !important; border-radius: 8px !important;
}
html[data-oym-style] .fi-sidebar.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-btn .fi-sidebar-item-label,
html[data-oym-style] .fi-sidebar.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-btn .fi-sidebar-item-icon,
html[data-oym-style] .fi-sidebar.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-btn svg {
    color: var(--oym-shell-selected-ink) !important;
}
html .fi-sidebar .fi-sidebar-group-btn .fi-icon,
html .fi-sidebar .fi-sidebar-group-dropdown-trigger-btn .fi-icon { color: var(--oym-shell-muted); }
html .fi-sidebar .fi-sidebar-group-dropdown-trigger-btn:hover { background: var(--oym-shell-soft); }
html .fi-topbar .fi-topbar-collapse-sidebar-btn-ctn .fi-icon-btn {
    border: 1px solid var(--oym-shell-line); border-radius: 8px; min-width: 36px; min-height: 36px;
}
html .fi-topbar .fi-topbar-collapse-sidebar-btn-ctn .fi-icon-btn .fi-icon { color: var(--oym-shell-text); }
.oym-shell-brand { display: inline-flex; align-items: center; gap: 9px; color: var(--oym-shell-heading); white-space: nowrap; font: 600 14px/1.25 var(--shift-font, Arial, sans-serif); }
.oym-shell-brand img { width: 42px; height: 42px; object-fit: contain; flex-shrink: 0; }
/* Dark: the capy mark is dark oxblood line-art and vanishes on the dark
   sidebar — warm it to a light cream so it stays visible. */
html.dark .oym-shell-brand img { filter: brightness(0) invert(1) sepia(.28) saturate(1.35) brightness(1.02); }
.oym-shell-brand small { display: block; color: var(--oym-shell-muted); font-size: 9px; letter-spacing: 1.5px; font-weight: 400; margin-top: 4px; }
html .oym-wf {
    --wf-ink: var(--oym-shell-text); --wf-muted: var(--oym-shell-muted);
    --wf-line: var(--oym-shell-line); --wf-soft: var(--oym-shell-soft);
    --wf-sel: var(--oym-shell-selected); --wf-brass: var(--oym-shell-selected);
    font-family: var(--shift-font, Arial, sans-serif);
}
html .oym-wf .wf-step { font-size: 12px; gap: 7px; padding: 8px; border-radius: 7px; }
html .oym-wf .wf-step.current { color: var(--oym-shell-selected-ink); }
html .oym-wf .wf-step.disabled { opacity: 1; color: var(--oym-shell-muted); }
html .oym-wf .wf-icon { width: 20px; height: 20px; flex-shrink: 0; }
html .oym-wf .wf-toggle { min-height: 36px; font-weight: 500; }
html .oym-wf .wf-toggle svg { width: 16px; height: 16px; }
html .oym-wf .wf-step:focus-visible,
html .oym-wf .wf-toggle:focus-visible { outline: 2px solid var(--oym-shell-heading); outline-offset: 3px; }
@media(min-width:1024px) {
    /* Collapsed rail: each item (and its active/hover highlight) is a compact,
       centred square — not a tall pill. */
    html .fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-item > .fi-sidebar-item-btn {
        justify-content: center; width: 44px; height: 44px; min-height: 44px;
        padding: 0; margin-inline: auto; border-radius: 10px;
    }
    html .fi-sidebar:not(.fi-sidebar-open) .fi-sidebar-nav { padding-inline: 10px; }
    html nav.fi-topbar > .fi-topbar-start { margin-inline-end: 0; flex-shrink: 0; }
}
@media(max-width:1199px) {
    html .oym-wf .wf-step .wf-label { display: none; }
    html .oym-wf .wf-step.current .wf-label { display: inline; }
}
@media(max-width:1023px) {
    html nav.fi-topbar { flex-wrap: wrap; }
    html nav.fi-topbar > .oym-wf { order: 10; width: 100%; justify-content: flex-start; padding-block: 8px; }
}
@media(pointer:coarse) {
    html .oym-wf .wf-step, html .oym-wf .wf-toggle { min-height: 44px; }
}
