        /* ==========================================
           #K  The bottom bar — the app's four destinations
           ==========================================
           Migrated into the deck log on 2026-09-07. It had stayed in the outgoing world
           long after the pages under it changed: parchment #F4F2EC on a #C8C4BC line,
           warm grey words. Against the chart stock that read as a strip of a different
           material laid along the bottom of the sheet.

           It was never in the deck log's token block because it is not inside .app-frame
           — the frame carries a transform, and a position:fixed bar inside it would be
           positioned against the frame rather than the viewport. So it is named in that
           block in its own right, exactly as #toastContainer is.

           The rules moved here from 03-legacy-home-nav.css, which is a legacy part; the
           number 14 fell free when the Almanac came down the same day, and it puts the
           bar after the tokens and among the deck-log surfaces where it belongs. The one
           rule still in 24-tail.css (the narrow-screen padding) is deliberate: the tail
           wins the cascade on purpose.
           ========================================== */
        .bottom-nav {
            position: fixed;
            left: 0; right: 0; bottom: 0;
            /* 分布：等宽列会让「词间距」跟着词长变 —— BOSWELL 长，它两边就挤；
               HOME 短，它两边就空。眼睛读的是词与词之间那段空白，不是列宽。
               所以是两端对齐 + 词自身宽度，四段空白才真的相等。
               每个词左右各 11px 内边距，把最短的 HOME 也撑到 44 命中宽。 */
            height: var(--nav-h);
            /* 同纸色 + 一条界线，不是"另一块材料"。旧世界那版就是这么定的，
               这里只是换成本世界的纸和本世界的线。 */
            background: var(--log-stock);
            /* A firm rule, not the hairline: this line divides the page from the bar,
               which is a division that means something. The hairline is for rows. */
            border-top: 1px solid var(--log-rule-firm);
            display: flex;
            justify-content: space-between;
            padding: 0 8px;
            z-index: 50;
        }
        .bottom-nav-item {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0;
            padding: 0 11px;
            min-width: 44px;
            border: none;
            background: transparent;
            /* The soft pressure of the one ink: a destination you are not on is still
               a word to be read, not a disabled control. */
            color: var(--log-ink-soft);
            cursor: pointer;
        }
        /* 图标去掉。♡ ◎ ✦ 三个符号本来就不自明，换成词之后语义不用猜。
           This is now the house law rather than a local preference: in the deck log an
           action is a word in print caps, never a glyph. The SVGs are left in the markup
           because they are the fallback if the bar ever leaves this world again.
           代价记在这里：图标靠形状，眼睛不必读；文字必须读 —— 所以词都限一两个音节。 */
        .bottom-nav-item svg { display: none; }

        /* 当前项：2px 墨色顶线，压在导航自己那条 1px 分隔线上。
           文字光靠深浅不够 —— 深浅只说"这个更重要"，顶线才说"你在这儿"。 */
        .bottom-nav-item.is-current span { font-weight: 600; }
        .bottom-nav-item.is-current {
            color: var(--log-ink);
            border-top: 2px solid var(--log-ink);
            margin-top: -1px;
        }
        .bottom-nav-item span {
            /* The printed voice, at the world's floor size. Archivo Narrow is narrower
               than the face this replaced, which is what pays for the wider tracking. */
            font-family: var(--log-print);
            font-size: var(--fs-micro);
            letter-spacing: 0.14em;
            text-transform: uppercase;
            /* 常规字重。11px 加 0.14em 字距时，600 会让整排显得发黑发糊 ——
               字距已经在做"这是一排标签"这件事，字重不必再说一遍。 */
            font-weight: 400;
            white-space: nowrap;
        }
        /* Pressed: the ink goes to full pressure. Deliberately NOT magenta — magenta is
           this world's mark for an act that changes the record, and going to another
           page changes nothing. The outgoing bar used --accent here, which was the old
           world's green and carried no such rule. */
        .bottom-nav-item:active { color: var(--log-ink); }

