.fi-sidebar.fi-main-sidebar {
    background-color: #a64d31;
    border-inline-end: 1px solid #80371f;
    box-shadow: none;
    color: #fff4ec;
}
.dark .fi-sidebar.fi-main-sidebar {
    background-color: #a64d31;
    border-inline-end-color: #80371f;
    box-shadow: none;
}
.dark .fi-topbar .fi-logo {
    filter: brightness(0) invert(1);
}
.fi-sidebar.fi-main-sidebar .fi-sidebar-group-label {
    color: #fff4ec;
    font-weight: 700;
    letter-spacing: .015em;
}
.fi-sidebar.fi-main-sidebar .fi-sidebar-group-btn {
    border-radius: .625rem;
    color: #fff4ec;
}
.fi-sidebar.fi-main-sidebar .fi-sidebar-group-btn:hover,
.fi-sidebar.fi-main-sidebar .fi-sidebar-item-btn:hover {
    background-color: rgb(255 240 227 / .15);
}
.fi-sidebar.fi-main-sidebar .fi-sidebar-item-btn { color: #fff4ec; }
.fi-sidebar.fi-main-sidebar .fi-sidebar-item-icon { color: currentColor; }
.fi-sidebar.fi-main-sidebar .fi-sidebar-item.fi-active > .fi-sidebar-item-btn {
    background-color: #6f2d1b;
    box-shadow: none;
    color: #fff4ec;
}

.malo-nav-source-hidden { display: none !important; }
.malo-nav-toolbar { padding: .25rem .5rem .45rem; }
.malo-nav-search { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: .75rem; border: 1px solid rgb(209 213 219 / .7); border-radius: .75rem; padding: .55rem .7rem; font-size: .82rem; font-weight: 600; color: rgb(75 85 99); background: rgb(255 255 255 / .75); }
.dark .malo-nav-search { border-color: rgb(75 85 99 / .8); background: rgb(17 24 39 / .55); color: rgb(209 213 219); }
.malo-nav-kbd { flex: 0 0 auto; font-size: .64rem; line-height: 1; font-weight: 500; color: rgb(156 163 175); background: transparent; border: 0; box-shadow: none; padding: 0; }
.malo-nav-section { padding: .05rem .35rem; }
.malo-nav-heading { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .5rem .5rem .35rem; color: rgb(107 114 128); font-size: .71rem; font-weight: 700; text-transform: uppercase; letter-spacing: .045em; }
.malo-nav-heading:not(:disabled)::after { content: '›'; font-size: .9rem; color: rgb(156 163 175); transform: rotate(0deg); transition: transform .16s ease; }
.malo-nav-section.is-open > .malo-nav-heading:not(:disabled)::after { transform: rotate(90deg); }
.malo-nav-body { display: grid; gap: .12rem; padding-bottom: .28rem; }
.malo-nav-row { display: flex; align-items: center; gap: .3rem; border-radius: .55rem; }
.malo-nav-row:hover { background: rgb(243 244 246 / .85); }
.dark .malo-nav-row:hover { background: rgb(55 65 81 / .55); }
.malo-nav-link { min-width: 0; flex: 1 1 auto; display: block; padding: .45rem .55rem; border-radius: .55rem; font-size: .82rem; line-height: 1.15rem; color: rgb(75 85 99); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dark .malo-nav-link { color: rgb(209 213 219); }
.malo-nav-link.is-active { color: rgb(5 150 105); font-weight: 700; background: rgb(236 253 245); }
.dark .malo-nav-link.is-active { color: rgb(110 231 183); background: rgb(6 78 59 / .35); }
.malo-nav-pin { flex: 0 0 auto; width: 1.55rem; height: 1.55rem; display: grid; place-items: center; border-radius: .45rem; color: rgb(156 163 175); font-size: .82rem; }
.malo-nav-pin:hover { color: rgb(5 150 105); background: rgb(229 231 235 / .8); }
.malo-nav-palette[hidden] { display: none; }
.malo-nav-palette { position: fixed; inset: 0; z-index: 10000; display: flex; justify-content: center; align-items: flex-start; padding: 12vh 1rem 1rem; background: rgb(17 24 39 / .42); backdrop-filter: blur(2px); }
.malo-nav-palette-panel { width: min(42rem, 100%); overflow: hidden; border-radius: 1rem; border: 1px solid rgb(229 231 235); background: white; box-shadow: 0 24px 70px rgb(0 0 0 / .22); }
.dark .malo-nav-palette-panel { border-color: rgb(75 85 99); background: rgb(17 24 39); }
.malo-nav-palette-top { display: flex; align-items: center; gap: .65rem; padding: .8rem .9rem; border-bottom: 1px solid rgb(229 231 235); }
.dark .malo-nav-palette-top { border-color: rgb(55 65 81); }
.malo-nav-palette-top input { flex: 1; border: 0; outline: 0; box-shadow: none; background: transparent; font-size: 1rem; color: inherit; }
.malo-nav-palette-results { max-height: 55vh; overflow: auto; padding: .45rem; }
.malo-nav-palette-results .malo-nav-row.is-selected { background: rgb(236 253 245); }
.dark .malo-nav-palette-results .malo-nav-row.is-selected { background: rgb(6 78 59 / .35); }
@media (max-width: 640px) { .malo-nav-palette { padding-top: 5vh; } }

/* The terracotta sidebar keeps a flat, legible surface in both appearance modes. */
.fi-sidebar.fi-main-sidebar .malo-nav-search {
    border-color: #f5d4c2;
    background: #fff4ec;
    color: #4c2418;
}
.fi-sidebar.fi-main-sidebar .malo-nav-kbd,
.fi-sidebar.fi-main-sidebar .malo-nav-pin { color: #ffe1d0; }
.fi-sidebar.fi-main-sidebar .malo-nav-search .malo-nav-kbd { color: #6f2d1b; }
.fi-sidebar.fi-main-sidebar .malo-nav-heading,
.fi-sidebar.fi-main-sidebar .malo-nav-heading:not(:disabled)::after { color: #fff4ec; }
.fi-sidebar.fi-main-sidebar .malo-nav-section.is-open > .malo-nav-heading { background: #c16547; color: #1a100d; border-radius: .55rem; }
.fi-sidebar.fi-main-sidebar .malo-nav-section.is-open > .malo-nav-heading::after { color: #1a100d; }
.fi-sidebar.fi-main-sidebar .malo-nav-row:hover,
.fi-sidebar.fi-main-sidebar .malo-nav-pin:hover { background: rgb(255 240 227 / .15); }
.fi-sidebar.fi-main-sidebar .malo-nav-link { color: #fff4ec; }
.fi-sidebar.fi-main-sidebar .malo-nav-link.is-active {
    color: #fff4ec;
    background: #6f2d1b;
}
.fi-sidebar.fi-main-sidebar .malo-nav-pin:hover { color: #fff4ec; }
.fi-sidebar.fi-main-sidebar :is(.malo-nav-search, .malo-nav-heading, .malo-nav-link, .malo-nav-pin, .malo-nav-admin a):focus-visible {
    outline: 2px solid #ffe5d4;
    outline-offset: 2px;
}
.fi-sidebar.fi-main-sidebar .malo-nav-fixed .malo-nav-link,
.fi-sidebar.fi-main-sidebar .malo-nav-admin a {
    color: #fff4ec;
    font-weight: 700;
}
.fi-sidebar.fi-main-sidebar .fi-sidebar-nav { padding-bottom: 0; }
.fi-sidebar.fi-main-sidebar .fi-sidebar-nav-groups { flex: 1 0 auto; }
.malo-nav-fixed, .malo-nav-admin { padding: .2rem .35rem; }
.malo-nav-admin { position: sticky; bottom: 0; z-index: 2; margin-top: auto; border-top: 1px solid #fff; background: #a64d31; padding-block: .45rem max(.65rem, env(safe-area-inset-bottom)); }
.malo-nav-admin a { display: flex; align-items: center; gap: .55rem; padding: .65rem .55rem; border-radius: .55rem; font-size: .83rem; text-transform: uppercase; letter-spacing: .04em; }
.malo-nav-admin a::before { content: '⚙︎'; flex: 0 0 auto; font-size: 1rem; line-height: 1; }
.malo-nav-admin a:hover { background: rgb(255 240 227 / .15); }
.malo-nav-empty-state { padding: .35rem .55rem .55rem; color: #fff4ec; font-size: .72rem; }
.malo-nav-section { position: relative; display: grid; grid-template-columns: 1.35rem minmax(0, 1fr); }
.malo-nav-grip { position: relative; z-index: 1; grid-column: 1; grid-row: 1; align-self: center; justify-self: center; width: 1.35rem; height: 1.35rem; display: grid; place-items: center; cursor: grab; color: #ffe5d4; }
.malo-nav-grip::before { content: ''; width: 10px; height: 15px; background-image: radial-gradient(circle, currentColor 1px, transparent 1.1px); background-size: 5px 5px; }
.malo-nav-grip:active { cursor: grabbing; }
.malo-nav-grip:focus-visible { outline: 2px solid #ffe5d4; border-radius: .25rem; }
.malo-nav-section.is-drag-over { outline: 2px dashed #ffe5d4; border-radius: .6rem; }
.malo-nav-section .malo-nav-heading { grid-column: 1 / -1; grid-row: 1; justify-content: flex-start; padding-block: .425rem; padding-left: 1.7rem; }
.malo-nav-section .malo-nav-heading::after { margin-left: auto; }
.malo-nav-section .malo-nav-body { grid-column: 1 / -1; }
.malo-nav-ai-link { display: flex; align-items: center; gap: .5rem; }
.malo-nav-ai-icon { width: 1.9rem; height: 1.5rem; flex: 0 0 auto; overflow: visible; filter: drop-shadow(0 0 5px rgb(108 220 255 / .45)); }
.malo-nav-ai-icon path { fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3.8; }
.malo-nav-ai-loop { stroke: #77d8ff; }
.malo-nav-ai-trace { stroke: #effdff; stroke-dasharray: 10 200; animation: malo-ai-flow 4s linear infinite; }
@keyframes malo-ai-flow { to { stroke-dashoffset: -210; } }
@media (prefers-reduced-motion: reduce) { .malo-nav-ai-trace { animation: none; stroke-dasharray: 10 200; } }
.fi-main.malo-admin-main { display: grid; grid-template-columns: minmax(11rem, 13rem) minmax(0, 1fr); align-items: start; gap: 1.25rem; max-width: none; }
.fi-main.malo-admin-main > :not(.malo-admin-column) { min-width: 0; grid-column: 2; }
.malo-admin-column { grid-column: 1; grid-row: 1 / span 20; position: sticky; top: 5rem; display: grid; gap: .6rem; padding: .9rem; border: 1px solid #e8c7b8; border-radius: .85rem; background: #fff8f3; }
.dark .malo-admin-column { border-color: #804832; background: #3f241d; }
.malo-admin-column-title { color: #70341f; font-size: .95rem; font-weight: 800; }
.dark .malo-admin-column-title { color: #fff4ec; }
.malo-admin-category { display: grid; gap: .08rem; }
.malo-admin-category h2 { padding: .45rem .4rem .15rem; color: #85452e; font-size: .7rem; font-weight: 800; text-transform: uppercase; letter-spacing: .035em; }
.dark .malo-admin-category h2 { color: #f7d2be; }
.malo-admin-category a { display: block; padding: .38rem .45rem; border-radius: .45rem; color: #633220; font-size: .78rem; line-height: 1.15rem; }
.dark .malo-admin-category a { color: #fff4ec; }
.malo-admin-category a:hover, .malo-admin-category a.is-active { background: #f6dacc; color: #6f2d1b; }
.dark .malo-admin-category a:hover, .dark .malo-admin-category a.is-active { background: #6f2d1b; color: #fff4ec; }
@media (max-width: 900px) {
    .fi-main.malo-admin-main { display: block; }
    .malo-admin-column { position: static; display: flex; flex-wrap: wrap; margin-bottom: 1rem; }
    .malo-admin-category { min-width: 9rem; }
}
