{
  "id": "ledger-glass",
  "version": "1.0.0",
  "name": "Ledger Glass",
  "nameZh": "账本玻璃",
  "summary": "安静的暖纸色内容面 + 只给浮层用的液态玻璃。中文优先、移动端优先、数字等宽，适合记账、看板、工具类产品。",
  "summaryEn": "Quiet warm-paper content surfaces with liquid glass reserved for floating controls. Chinese-first, mobile-first, tabular numerals; built for ledgers, dashboards and personal tools.",
  "source": {
    "product": "旅行账本",
    "url": "https://ledger.robby.wang",
    "repository": "robbywang25/travel-ledger",
    "files": [
      "nz/travel-ledger/travel-ledger.css",
      "nz/travel-ledger/liquid-glass.css"
    ],
    "theme": "classic (default)",
    "extractedAt": "2026-10-29"
  },
  "tags": [
    "liquid-glass",
    "warm",
    "mobile-first",
    "chinese-first",
    "data-dense",
    "light-dark"
  ],
  "colorSchemes": [
    "light",
    "dark"
  ],
  "tokens": {
    "colors": {
      "light": {
        "bg": "#f3f0e9",
        "bg-soft": "#eeeae1",
        "panel": "#f9fcfb",
        "panel-strong": "#fcfefd",
        "text": "#302c24",
        "muted": "#726754",
        "line": "rgba(43,78,65,.11)",
        "line-strong": "rgba(43,78,65,.22)",
        "accent": "#89661f",
        "accent-strong": "#624613",
        "on-accent": "#ffffff",
        "positive": "#26785a",
        "danger": "#a0443e",
        "glass-surface": "rgba(255,255,255,.74)",
        "glass-field": "rgba(255,255,255,.66)",
        "glass-inset": "rgba(62,105,85,.055)",
        "glass-menu": "rgba(251,254,253,.93)",
        "glass-rim": "rgba(255,255,255,.88)",
        "glass-glint": "rgba(255,255,255,.85)",
        "dock-tint": "rgba(255,255,255,.12)",
        "dock-rim": "rgba(255,255,255,.86)",
        "dock-ink": "#22372d",
        "mist-warm": "rgba(224,202,158,.28)",
        "mist-blue": "rgba(186,206,226,.25)",
        "mist-sand": "rgba(229,214,182,.24)"
      },
      "dark": {
        "bg": "#161914",
        "bg-soft": "#282d23",
        "panel": "#1b2822",
        "panel-strong": "#23322b",
        "text": "#f3f2e9",
        "muted": "#b7b8a6",
        "line": "rgba(206,231,215,.12)",
        "line-strong": "rgba(206,231,215,.25)",
        "accent": "#d5b66f",
        "accent-strong": "#f2d48b",
        "on-accent": "#231f18",
        "positive": "#77c8a1",
        "danger": "#e28d86",
        "glass-surface": "rgba(31,46,38,.86)",
        "glass-field": "rgba(17,30,23,.54)",
        "glass-inset": "rgba(6,15,10,.23)",
        "glass-menu": "rgba(35,50,42,.96)",
        "glass-rim": "rgba(219,247,230,.17)",
        "glass-glint": "rgba(239,255,244,.13)",
        "dock-tint": "rgba(15,26,21,.24)",
        "dock-rim": "rgba(238,255,247,.39)",
        "dock-ink": "#d8e8de",
        "mist-warm": "rgba(110,101,61,.17)",
        "mist-blue": "rgba(52,70,96,.2)",
        "mist-sand": "rgba(87,80,47,.12)"
      },
      "people": {
        "gold": "#d5b66f",
        "ocean": "#59a9c8",
        "fern": "#77c8a1",
        "alpine": "#8ab3d5",
        "coral": "#df8b76",
        "violet": "#a993d5",
        "slate": "#8d9aaa",
        "sky": "#82b9e7"
      }
    },
    "typography": {
      "fontFamily": "-apple-system, BlinkMacSystemFont, \"PingFang SC\", \"Microsoft YaHei\", sans-serif",
      "scale": {
        "display": {
          "fontSize": "40px",
          "fontWeight": 650,
          "lineHeight": 1.1,
          "letterSpacing": "-0.045em",
          "fontFeature": "tnum"
        },
        "title": {
          "fontSize": "20px",
          "fontWeight": 650,
          "lineHeight": 1.3,
          "letterSpacing": "-0.025em"
        },
        "heading": {
          "fontSize": "18px",
          "fontWeight": 600,
          "lineHeight": 1.35
        },
        "subheading": {
          "fontSize": "15px",
          "fontWeight": 600,
          "lineHeight": 1.45
        },
        "body": {
          "fontSize": "16px",
          "fontWeight": 400,
          "lineHeight": 1.5
        },
        "label": {
          "fontSize": "13px",
          "fontWeight": 400,
          "lineHeight": 1.5
        },
        "caption": {
          "fontSize": "12px",
          "fontWeight": 400,
          "lineHeight": 1.6
        },
        "amount": {
          "fontSize": "20px",
          "fontWeight": 600,
          "lineHeight": 1.25,
          "letterSpacing": "-0.025em",
          "fontFeature": "tnum"
        }
      }
    },
    "rounded": {
      "xs": "8px",
      "sm": "12px",
      "md": "14px",
      "lg": "16px",
      "xl": "22px",
      "dialog": "28px",
      "dock": "34px",
      "pill": "999px"
    },
    "spacing": {
      "1": "4px",
      "2": "8px",
      "3": "12px",
      "4": "16px",
      "5": "20px",
      "6": "24px",
      "tap": "44px",
      "control": "48px",
      "content-max": "920px",
      "gutter-mobile": "12px",
      "gutter-desktop": "20px"
    },
    "elevation": {
      "light": {
        "surface": "0 3px 8px rgba(36,65,52,.025), 0 14px 40px rgba(36,65,52,.055)",
        "float": "0 8px 28px rgba(31,62,49,.10), 0 2px 6px rgba(31,62,49,.045)",
        "dock": "0 14px 32px rgba(22,42,31,.15), 0 4px 10px rgba(22,42,31,.06)"
      },
      "dark": {
        "surface": "0 3px 8px #0000000c, 0 14px 40px #0000001c",
        "float": "0 8px 30px #00000040, 0 2px 7px #0000001c",
        "dock": "0 14px 32px rgba(0,0,0,.35), 0 4px 10px rgba(0,0,0,.2)"
      },
      "blur": {
        "menu": "blur(26px) saturate(1.5)",
        "dock-light": "blur(8px) saturate(1.25) brightness(1.03)",
        "dock-dark": "blur(8px) saturate(1.2) brightness(.62)"
      }
    },
    "motion": {
      "ease": "cubic-bezier(.2,.8,.2,1)",
      "duration": "180ms",
      "tab-slide": "320ms",
      "press-scale": "0.98"
    }
  },
  "components": {
    "rs-page": {
      "role": "页面底：暖纸色 + 三团雾光",
      "backgroundColor": "{colors.bg}",
      "textColor": "{colors.text}",
      "typography": "{typography.body}",
      "selectors": [
        "body",
        "body::before",
        "::selection"
      ]
    },
    "rs-note": {
      "role": "说明 / 次要文字",
      "textColor": "{colors.muted}",
      "typography": "{typography.label}",
      "selectors": [
        ".rs-note",
        ".rs-muted",
        ".rs-label"
      ]
    },
    "rs-surface": {
      "role": "内容卡片：安静、不模糊",
      "backgroundColor": "{colors.glass-surface}",
      "rounded": "{rounded.xl}",
      "padding": "16px",
      "border": "1px solid {colors.glass-rim}",
      "shadow": "{elevation.surface}",
      "selectors": [
        ".rs-surface",
        ".rs-section-heading",
        ".rs-display"
      ]
    },
    "rs-stat": {
      "role": "汇总数字块",
      "backgroundColor": "{colors.glass-field}",
      "rounded": "{rounded.lg}",
      "padding": "11px 12px",
      "typography": "{typography.amount}",
      "selectors": [
        ".rs-stat",
        ".rs-dot",
        ".rs-grid"
      ]
    },
    "rs-button-primary": {
      "role": "主操作，每屏最多一个",
      "backgroundColor": "{colors.accent-strong}",
      "textColor": "{colors.on-accent}",
      "rounded": "15px",
      "height": "48px",
      "padding": "0 20px",
      "selectors": [
        ".rs-button",
        ".rs-button--primary"
      ]
    },
    "rs-button-secondary": {
      "role": "次操作（实现上是 glass-inset 叠在页面底色上，视觉约等于 bg-soft）",
      "backgroundColor": "{colors.bg-soft}",
      "textColor": "{colors.text}",
      "rounded": "{rounded.sm}",
      "height": "44px",
      "selectors": [
        ".rs-button"
      ]
    },
    "rs-button-text": {
      "role": "行内文字操作",
      "textColor": "{colors.accent-strong}",
      "rounded": "{rounded.sm}",
      "height": "40px",
      "selectors": [
        ".rs-button",
        ".rs-button--text"
      ]
    },
    "rs-field": {
      "role": "输入框 / 下拉 / 多行",
      "backgroundColor": "{colors.glass-field}",
      "rounded": "13px",
      "height": "48px",
      "padding": "0 12px",
      "border": "1px solid {colors.line-strong}",
      "selectors": [
        ".rs-field",
        ".rs-label",
        ".rs-inset"
      ]
    },
    "rs-segmented": {
      "role": "分段切换（全部/今日、已支出/待收款）",
      "backgroundColor": "{colors.glass-inset}",
      "rounded": "15px",
      "padding": "3px",
      "selectors": [
        ".rs-segmented"
      ]
    },
    "rs-chip": {
      "role": "可选人员/筛选，用个人颜色着色",
      "backgroundColor": "{colors.glass-field}",
      "rounded": "{rounded.sm}",
      "height": "44px",
      "selectors": [
        ".rs-chip",
        ".rs-chips"
      ]
    },
    "rs-list-row": {
      "role": "长列表行：只用顶部分隔线，不加卡片",
      "padding": "8px 0",
      "border": "1px solid {colors.line} (top only)",
      "selectors": [
        ".rs-list",
        ".rs-list-row",
        ".rs-amount"
      ]
    },
    "rs-menu": {
      "role": "弹出菜单/弹窗：常规玻璃",
      "backgroundColor": "{colors.glass-menu}",
      "rounded": "20px",
      "padding": "6px",
      "shadow": "{elevation.float}",
      "backdrop": "{elevation.blur.menu}",
      "selectors": [
        ".rs-menu",
        ".rs-dialog"
      ]
    },
    "rs-dock": {
      "role": "底部浮动 Tab 栏 + 输入胶囊：透明玻璃",
      "backgroundColor": "{colors.dock-tint}",
      "rounded": "{rounded.dock}",
      "padding": "7px",
      "backdrop": "{elevation.blur.dock-light}",
      "selectors": [
        ".rs-dock",
        ".rs-tabs"
      ]
    },
    "rs-composer": {
      "role": "Dock 内的输入胶囊",
      "rounded": "27px",
      "height": "54px",
      "border": "1px solid {colors.dock-rim}",
      "selectors": [
        ".rs-composer",
        ".rs-icon-button"
      ]
    },
    "rs-positive": {
      "role": "应收 / 成功 / 结算金额",
      "textColor": "{colors.positive}",
      "typography": "{typography.amount}",
      "selectors": [
        ".rs-positive"
      ]
    },
    "rs-danger": {
      "role": "删除 / 错误",
      "textColor": "{colors.danger}",
      "selectors": [
        ".rs-danger",
        ".rs-button--danger"
      ]
    }
  }
}
