/* claude_theme */
/* ---- 令牌：覆盖核心系统变量（html:root 优先级高于 :root，与加载顺序无关） ---- */
html:root {
    --bg: #faf9f5;
    --panel: #ffffff;
    --line: #e3e0d3;
    --line-soft: #eeece2;

    --text: #141413;
    --text-muted: #5e5d59;
    --text-subtle: #87867f;
    --text-disabled: #b8b6ac;

    --brand: #c6613f;
    --brand-hover: #ae4f30;
    --brand-soft: #f6e9e2;

    --success: #3f7a4f;
    --success-soft: #e9f1ea;
    --danger: #b53333;
    --danger-soft: #fbeceb;
    --warning: #a8610f;
    --warning-soft: #fbf1e0;
    --info: #3b6ea5;
    --info-soft: #e9f0f8;

    --inverse: #1f1e1d;
    --inverse-border: #30302e;
    --inverse-text: #faf9f5;
    --color-dark-rgb: 20,20,19;
    --backdrop: rgba(var(--color-dark-rgb),.40);
    --shadow-base: rgba(20,20,19,.04);
    --shadow-medium: rgba(20,20,19,.10);
    --focus-ring: #9d4a2d;
    --focus-halo: rgba(198,97,63,.22);

    --radius: 12px;
    --radius-sm: 8px;

    --claude-theme-font-sans: -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
    --claude-theme-font-serif: "Tiempos Headline","Iowan Old Style","Source Han Serif SC","Songti SC",Georgia,"Times New Roman",serif;
    --claude-theme-font-size-title: 20px;
}

/* ---- 字体 ---- */
body { font-family: var(--claude-theme-font-sans); line-height: 1.6; letter-spacing: .005em; }

h2, h3, .brand, .post-content-title, .post-topic-title .post-title,
.admin-plugin-summary strong, .reply-panel-head h3, .quick-title {
    font-family: var(--claude-theme-font-serif);
    font-weight: 500;
    letter-spacing: -.005em;
}
h2, .brand, .post-content-title { font-size: var(--claude-theme-font-size-title); }
.brand { font-weight: 600; }
.post-content-title { line-height: 1.4; }

/* ---- 顶栏 ---- */
.top, .forum-more-region { background: var(--bg); border-bottom: 1px solid var(--line); }
.bar { height: 56px; }
.forum-link, .forum-more-toggle { border-radius: var(--radius-sm); height: 32px; }
.forum-link.active { background: var(--line-soft); }
.search-page-link { height: 34px; border-radius: 999px; }
.search-page-fake-input { padding: 0 12px; }

/* ---- 容器 ---- */
.home-shell { padding: 28px; border-radius: 16px; box-shadow: none; }
.sidebar-card, .user-card { box-shadow: none; }

/* ---- 列表 ---- */
.post-item { padding: 16px 8px; margin: 0 -8px; border-radius: var(--radius-sm); }
.post-title { font-weight: 600; }
.post-avatar { border-radius: 10px; }

/* ---- 标签页：胶囊分组 ---- */
.tab {
    padding: 4px 8px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: var(--text-muted);
}
.tab + .tab { margin-left: 0; }
.tab:first-child, .tab:not(:has(~ .tab)) { border-radius: 999px; }
.tab:hover { background: var(--line-soft); color: var(--text); }
.tab.active { background: var(--brand); border-color: var(--brand); color: var(--bg); }
.tab-bar>.tab.tab-line-start, .tab-bar>.tab.tab-line-end { border-radius: 999px; }

/* ---- 按钮 ---- */
.btn, button { border-radius: var(--radius-sm); font-weight: 500; }
.btn.alt { background: var(--panel); border: 1px solid var(--line); color: var(--text); }
.btn.alt:hover { background: var(--line-soft); border-color: var(--text-subtle); }
.btn-post { border-radius: var(--radius-sm); font-weight: 500; }

/* ---- 表单 ---- */
input, select, textarea { border-radius: var(--radius-sm); padding: 8px 12px; }
input:hover, select:hover, textarea:hover { border-color: var(--text-subtle); }
input:focus, select:focus, textarea:focus { border-color: var(--brand); box-shadow: 0 0 0 3px var(--focus-halo); }
.reply-panel textarea, .reply-panel textarea:focus { background: var(--panel); }
input[type=checkbox]:checked { border-color: var(--brand); background-color: var(--brand); }

/* ---- 弹层与提示 ---- */
.modal-panel { border-radius: 16px; box-shadow: 0 24px 64px var(--shadow-medium); }
.modal-head { padding: 16px 20px; }
.modal-head strong { font-family: var(--claude-theme-font-serif); font-size: var(--font-size-lg); font-weight: 500; }
.modal-body { padding: 20px; }

/* ---- 正文 ---- */
.post-content { line-height: 1.8; }
.post-content blockquote {
    border-left: 3px solid var(--brand);
    background: var(--bg);
    padding: 6px 12px;
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.post-content pre { border-radius: var(--radius); box-shadow: none; }
.post-content code { background: var(--line-soft); color: var(--text); }
.post-content a {
    text-decoration: underline;
    text-decoration-color: color-mix(in srgb, var(--brand) 40%, transparent);
    text-underline-offset: 3px;
}
.post-content a:hover { text-decoration-color: var(--brand); }

/* ---- 徽标、分页、后台 ---- */
.topic-badge, .notify-badge { font-weight: 600; }
.post-tag { border-radius: 999px; padding: 2px 10px; }
.user-avatar-big { background: var(--brand); }
.pagination a, .pagination .ellipsis { border-radius: var(--radius-sm); }
.pagination li.active a, .search-page-pagination li.active>span { background: var(--text); color: var(--bg); }
.list th { font-weight: 600; }
.admin-bulk-list, .main-panel>.admin-bulk-list { box-shadow: none; }
.admin-inline-ops a, .admin-inline-ops button, .ops a, .ops button { border-radius: var(--radius-sm); font-weight: 500; }
.plugin-item.admin-object-row { border-radius: var(--radius); }

/* ---- 动效：仅在用户未要求减少动效时启用 ---- */
@media (prefers-reduced-motion: no-preference) {
    .btn, button, input, select, textarea { transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease; }
}

/* ---- 窄屏 ---- */
@media (max-width: 720px) {
    .bar { height: 52px; }
    .home-shell { padding: 14px; border-radius: var(--radius); }
    h2 { font-size: var(--font-size-xl); }
    .post-item { margin: 0; padding: 14px 4px; }
}
