           /* --- Green River (绿江) 极简高端风格 --- */
           :root {
               --gr-primary: #1B4F3E;
               /* 深墨绿 */
               --gr-accent: #2E7D32;
               /* 强调绿 */
               --gr-bg: #FAFAF9;
               /* 暖白/象牙白 */
               --gr-surface: #FFFFFF;
               /* 纯白卡片 */
               --gr-text-main: #1C1C1E;
               /* 深黑 */
               --gr-text-sub: #8E8E93;
               /* 中灰 */
               --gr-border: #E5E5E5;
               /* 极细边框 */
               --gr-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
           }

           /* 全局主题 */
           .gr-theme {
               background-color: var(--gr-bg) !important;
               font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
               color: var(--gr-text-main);
           }

           /* 头部样式 - 极致简约 */
           .gr-header {
               display: flex;
               justify-content: space-between;
               align-items: center;
               padding: 15px 24px;
               padding-top: calc(15px + env(safe-area-inset-top));
               background-color: rgba(250, 250, 249, 0.95);
               /* 磨砂背景 */
               backdrop-filter: blur(20px);
               -webkit-backdrop-filter: blur(20px);
               position: sticky;
               top: 0;
               z-index: 10;
               border-bottom: 1px solid transparent;
               /* 默认无边框 */
           }

           .gr-title {
               font-family: "Georgia", serif;
               /* 衬线体增加文学感 */
               font-size: 20px;
               font-weight: 600;
               color: var(--gr-primary);
               letter-spacing: 0.5px;
           }

           .gr-icon-btn {
               background: none;
               border: none;
               color: var(--gr-text-main);
               padding: 8px;
               cursor: pointer;
               opacity: 0.7;
               transition: all 0.2s;
               display: flex;
               align-items: center;
               justify-content: center;
               border-radius: 50%;
           }

           .gr-icon-btn:hover {
               opacity: 1;
               background-color: rgba(0, 0, 0, 0.03);
           }

           /* 内容区域 */
           .gr-content-area {
               padding: 24px;
               overflow-y: auto;
               flex-grow: 1;
           }

           /* 标题与分割 */
           .gr-section-header {
               margin-bottom: 20px;
               display: flex;
               align-items: center;
           }

           .gr-section-title {
               font-size: 14px;
               font-weight: 600;
               color: var(--gr-text-sub);
               text-transform: uppercase;
               letter-spacing: 1px;
           }

           /* 书籍列表 (Grid) */
           .gr-grid-list {
               display: grid;
               grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
               gap: 20px;
           }

           /* 书籍卡片 */
           .gr-book-card {
               background: var(--gr-surface);
               border-radius: 12px;
               padding: 20px;
               box-shadow: var(--gr-shadow);
               cursor: pointer;
               transition: transform 0.2s, box-shadow 0.2s;
               border: 1px solid var(--gr-border);
               display: flex;
               flex-direction: column;
               justify-content: space-between;
               min-height: 120px;
           }

           .gr-book-card:hover {
               transform: translateY(-3px);
               box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
               border-color: var(--gr-primary);
           }

           .gr-book-title {
               font-size: 16px;
               font-weight: 600;
               color: var(--gr-text-main);
               margin-bottom: 8px;
               line-height: 1.4;
           }

           .gr-book-meta {
               font-size: 12px;
               color: var(--gr-text-sub);
               display: flex;
               align-items: center;
               gap: 5px;
           }

           /* 作者列表项 */
           .gr-author-item {
               background: var(--gr-surface);
               border-radius: 12px;
               padding: 20px;
               margin-bottom: 16px;
               box-shadow: var(--gr-shadow);
               display: flex;
               justify-content: space-between;
               align-items: center;
               border: 1px solid var(--gr-border);
           }

           .gr-author-info h3 {
               margin: 0 0 4px 0;
               font-size: 16px;
               color: var(--gr-text-main);
           }

           .gr-author-info p {
               margin: 0;
               font-size: 13px;
               color: var(--gr-text-sub);
               max-width: 250px;
               white-space: nowrap;
               overflow: hidden;
               text-overflow: ellipsis;
           }

           /* 阅读器正文 */
           .gr-reader-content {
               flex-grow: 1;
               overflow-y: auto;
               padding: 30px 24px 100px 24px;
               /* 底部留白给输入框 */
               font-family: "Georgia", "Songti SC", serif;
               /* 衬线体适合阅读 */
               font-size: 17px;
               line-height: 1.8;
               color: #333;
           }

           .gr-chapter {
               margin-bottom: 40px;
           }

           .gr-chapter-text {
               white-space: pre-wrap;
               margin-bottom: 15px;
           }

           /* 摘要折叠块 */
           .gr-summary-box {
               background-color: #F4F4F5;
               border-radius: 8px;
               padding: 12px 16px;
               margin-bottom: 20px;
               font-family: sans-serif;
           }

           .gr-summary-box summary {
               cursor: pointer;
               font-size: 13px;
               color: var(--gr-text-sub);
               font-weight: 500;
               list-style: none;
               /* 隐藏默认三角 */
               display: flex;
               align-items: center;
               gap: 6px;
           }

           .gr-summary-box summary::before {
               content: '▸';
               display: inline-block;
               transition: transform 0.2s;
           }

           .gr-summary-box[open] summary::before {
               transform: rotate(90deg);
           }

           .gr-summary-content {
               font-size: 14px;
               color: #666;
               margin-top: 10px;
               padding-top: 10px;
               border-top: 1px solid #E5E5E5;
               line-height: 1.6;
           }

           /* 底部控制栏 */
           .gr-control-panel {
               position: absolute;
               bottom: 0;
               left: 0;
               width: 100%;
               background: rgba(255, 253, 249, 0.97);
               backdrop-filter: blur(20px);
               padding: 16px 24px;
               padding-bottom: calc(16px + env(safe-area-inset-bottom));
               border-top: 1px solid var(--gr-border);
               box-shadow: 0 -8px 28px rgba(35, 42, 38, 0.06);
               box-sizing: border-box;
           }

           .gr-input-group {
               display: flex;
               gap: 12px;
               align-items: center;
           }

           .gr-input {
               flex-grow: 1;
               background: #F4F4F5;
               border: 1px solid transparent;
               border-radius: 20px;
               padding: 12px 16px;
               font-size: 15px;
               outline: none;
               transition: all 0.2s;
           }

           .gr-input:focus {
               background: #FFF;
               border-color: var(--gr-primary);
               box-shadow: 0 0 0 3px rgba(27, 79, 62, 0.1);
           }

           .gr-main-btn {
               background-color: var(--gr-primary);
               color: white;
               border: none;
               border-radius: 20px;
               padding: 10px 20px;
               font-size: 14px;
               font-weight: 600;
               cursor: pointer;
               display: flex;
               align-items: center;
               gap: 6px;
               transition: transform 0.1s, opacity 0.2s;
               flex-shrink: 0;
           }

           .gr-main-btn:active {
               transform: scale(0.96);
           }

           .gr-main-btn:disabled {
               opacity: 0.6;
               cursor: not-allowed;
           }

           /* 弹窗内表单元素 */
           .gr-form-group {
               margin-bottom: 20px;
           }

           .gr-form-group label {
               display: block;
               font-size: 13px;
               font-weight: 600;
               color: var(--gr-text-main);
               margin-bottom: 8px;
           }

           .gr-select {
               width: 100%;
               padding: 12px;
               border-radius: 10px;
               border: 1px solid #ddd;
               background: #fff;
               font-size: 15px;
               outline: none;
           }

           .gr-checkbox-list {
               max-height: 150px;
               overflow-y: auto;
               border: 1px solid #ddd;
               border-radius: 10px;
               background: #fff;
               padding: 5px;
           }

           .gr-checkbox-item {
               padding: 8px 12px;
               display: flex;
               align-items: center;
               gap: 10px;
               cursor: pointer;
               border-radius: 6px;
           }

           .gr-checkbox-item:hover {
               background-color: #F5F5F7;
           }

           .gr-checkbox-item input {
               accent-color: var(--gr-primary);
               width: 16px;
               height: 16px;
           }

           /* 暗黑模式适配 */
           #phone-screen.dark-mode .gr-theme,
           #phone-screen.dark-mode .gr-header,
           #phone-screen.dark-mode .gr-control-panel,
           #phone-screen.dark-mode .gr-book-card,
           #phone-screen.dark-mode .gr-author-item,
           #phone-screen.dark-mode .modal-content {
               background-color: #1C1C1E !important;
               color: #FFFFFF;
           }

           #phone-screen.dark-mode .gr-title,
           #phone-screen.dark-mode .gr-section-title,
           #phone-screen.dark-mode .gr-book-title,
           #phone-screen.dark-mode .gr-author-info h3,
           #phone-screen.dark-mode .gr-form-group label {
               color: #FFFFFF;
           }

           #phone-screen.dark-mode .gr-reader-content {
               color: #E0E0E0;
           }

           #phone-screen.dark-mode .gr-summary-box {
               background-color: #2C2C2E;
           }

           #phone-screen.dark-mode .gr-summary-content {
               color: #AAAAAA;
               border-top-color: #38383A;
           }

           #phone-screen.dark-mode .gr-input,
           #phone-screen.dark-mode .gr-select,
           #phone-screen.dark-mode .gr-checkbox-list {
               background-color: #2C2C2E;
               border-color: #38383A;
               color: #FFFFFF;
           }

           #phone-screen.dark-mode .gr-icon-btn {
               color: #FFFFFF;
           }

           #phone-screen.dark-mode .gr-book-card:hover {
               border-color: #2E7D32;
               /* 暗黑模式下的绿色高亮 */
           }

           /* 绿江：摘要编辑框样式 */
           .gr-summary-input {
               width: 100%;
               background-color: transparent;
               border: 1px dashed transparent;
               /* 默认无边框 */
               font-family: inherit;
               font-size: 13px;
               color: #333;
               resize: vertical;
               padding: 5px;
               box-sizing: border-box;
               transition: all 0.2s;
               min-height: 60px;
           }

           /* 当它是可编辑状态（最后一章）时 */
           .gr-summary-box.editable {
               background-color: #fffbe6;
               /* 淡黄色背景，提示这是存档区 */
               border: 1px solid #e0e0e0;
           }

           .gr-summary-box.editable .gr-summary-input {
               border-color: #ddd;
               /* 显示虚线框 */
               background-color: rgba(255, 255, 255, 0.5);
           }

           .gr-summary-box.editable .gr-summary-input:focus {
               background-color: #fff;
               border-color: var(--gr-primary);
               outline: none;
           }

           .gr-mini-btn {
               font-size: 11px;
               padding: 2px 8px;
               border-radius: 4px;
               border: 1px solid var(--gr-primary);
               background-color: var(--gr-primary);
               color: white;
               cursor: pointer;
           }

           /* --- 绿江阅读器新样式 (Jinjiang Style) --- */

           /* 1. 侧边栏 (Drawer) */
           #gr-sidebar-overlay {
               position: absolute;
               top: 0;
               left: 0;
               width: 100%;
               height: 100%;
               background: rgba(0, 0, 0, 0.3);
               backdrop-filter: blur(2px);
               z-index: 90;
               opacity: 0;
               visibility: hidden;
               transition: all 0.3s;
           }

           #gr-sidebar-overlay.visible {
               opacity: 1;
               visibility: visible;
           }

           #gr-chapter-sidebar {
               position: absolute;
               top: 0;
               left: 0;
               width: 75%;
               /* 侧边栏宽度 */
               height: 100%;
               background: var(--gr-bg);
               z-index: 100;
               transform: translateX(-100%);
               transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
               box-shadow: 2px 0 15px rgba(0, 0, 0, 0.1);
               display: flex;
               flex-direction: column;
           }

           #gr-chapter-sidebar.visible {
               transform: translateX(0);
           }

           .gr-sidebar-header {
               padding: 20px;
               padding-top: calc(20px + env(safe-area-inset-top));
               border-bottom: 1px solid var(--gr-border);
               font-weight: 600;
               display: flex;
               justify-content: space-between;
               align-items: center;
           }

           #gr-chapter-list-content {
               flex-grow: 1;
               overflow-y: auto;
               padding: 10px 0;
           }

           .gr-sidebar-item {
               padding: 15px 20px;
               border-bottom: 1px solid #f5f5f5;
               cursor: pointer;
               font-size: 14px;
               color: #333;
               transition: background 0.2s;
           }

           .gr-sidebar-item:hover {
               background-color: rgba(0, 0, 0, 0.02);
           }

           .gr-sidebar-item.active {
               color: var(--gr-primary);
               font-weight: 600;
               background-color: rgba(27, 79, 62, 0.05);
           }

           .gr-sidebar-item span {
               margin-left: 10px;
           }

           /* 2. 底部控制栏调整 */
           .gr-control-panel {
               display: flex;
               flex-direction: column;
               gap: 10px;
               /* 确保固定在底部 */
               position: absolute;
               bottom: 0;
           }

           .gr-text-btn {
               background: transparent;
               border: none;
               color: var(--gr-primary);
               font-size: 14px;
               font-weight: 600;
               padding: 10px 20px;
               cursor: pointer;
           }

           .gr-text-btn:disabled {
               color: #ccc;
               cursor: default;
           }

           /* 3. 正文区域微调 */
           .gr-reader-content {
               padding-bottom: 120px;
               /* 给底部栏留出足够空间 */
           }

           .gr-chapter-title-large {
               font-family: "Georgia", serif;
               font-size: 22px;
               font-weight: bold;
               text-align: center;
               margin: 20px 0 30px 0;
               color: #111;
           }

           /* 暗黑模式适配 */
           #phone-screen.dark-mode #gr-chapter-sidebar {
               background-color: #1c1c1e;
               border-right: 1px solid #333;
           }

           #phone-screen.dark-mode .gr-sidebar-item {
               color: #ddd;
               border-bottom-color: #2c2c2e;
           }

           #phone-screen.dark-mode .gr-sidebar-item.active {
               background-color: rgba(255, 255, 255, 0.1);
               color: #fff;
           }

           /* --- 绿江：高端摘要卡片重构 --- */

           /* 1. 卡片容器：干净、悬浮感 */
           .gr-summary-card.editable {
               background-color: #FFFFFF;
               /* 纯净白底 */
               border: 1px solid rgba(0, 0, 0, 0.05);
               /* 几乎不可见的极细边框 */
               border-radius: 12px;
               /* 更大的圆角，现代感 */
               padding: 24px;
               /* 充足的内部留白，呼吸感 */
               box-shadow: 0 8px 30px rgba(0, 0, 0, 0.04);
               /* 极轻柔的高级灰阴影 */
               margin-top: 40px;
               /* 与正文拉开更大距离，彰显重要性 */
               transition: all 0.3s ease;
           }

           /* 鼠标悬停时稍微强调一下 */
           .gr-summary-card.editable:hover {
               box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06);
               border-color: rgba(27, 79, 62, 0.1);
           }

           /* 2. 卡片头部 */
           .gr-summary-header {
               display: flex;
               justify-content: space-between;
               align-items: center;
               margin-bottom: 16px;
           }

           /* 标题：使用优雅的衬线体，品牌色 */
           .gr-summary-title {
               font-family: "Georgia", "Songti SC", serif;
               /* 衬线体 */
               color: var(--gr-primary);
               /* 深墨绿 */
               font-size: 16px;
               font-weight: 600;
               letter-spacing: 0.5px;
           }

           /* 3. 输入框本体：极简、融入背景 */
           .gr-summary-input {
               width: 100%;
               box-sizing: border-box;
               /* 关键：防止padding撑破宽度 */
               background-color: #F9F9F9;
               /* 极淡的灰，与纯白卡片形成微弱对比 */
               border: 1px solid #EAEAEA;
               /* 极细淡灰边框 */
               border-radius: 8px;
               padding: 16px;
               font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
               /* 输入内容用无衬线体更清晰 */
               font-size: 14px;
               color: #333;
               line-height: 1.7;
               resize: vertical;
               min-height: 100px;
               outline: none;
               transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
           }

           /* 输入框聚焦状态：显现品牌感 */
           .gr-summary-input:focus {
               background-color: #FFFFFF;
               /* 聚焦变纯白 */
               border-color: var(--gr-primary);
               /* 边框变品牌绿 */
               box-shadow: 0 0 0 4px rgba(27, 79, 62, 0.05);
               /* 极微弱的绿色光晕 */
           }

           .gr-summary-input::placeholder {
               color: #CCC;
           }

           /* 4. 底部提示小字：弱化处理 */
           .gr-summary-footer {
               font-size: 12px;
               color: #AAA;
               /* 更浅的灰色 */
               margin-top: 12px;
               text-align: right;
               /* 右对齐，不干扰视线 */
               font-weight: 400;
           }

           /* 保存按钮微调 */
           .gr-mini-btn.save-summary-btn {
               background-color: transparent;
               color: var(--gr-primary);
               border: 1px solid var(--gr-primary);
               padding: 6px 12px;
               font-weight: 500;
               opacity: 0;
               /* 默认隐藏，输入时JS会让它显示，这里配合JS */
               transition: all 0.2s;
           }

           /* JS控制显示时的样式 */
           .gr-mini-btn.save-summary-btn[style*="display: block"] {
               opacity: 1;
           }

           .gr-mini-btn.save-summary-btn:hover {
               background-color: var(--gr-primary);
               color: white;
           }

           /* 暗黑模式适配 */
           #phone-screen.dark-mode .gr-summary-card.editable {
               background-color: #2C2C2E;
               border-color: #3A3A3C;
           }

           #phone-screen.dark-mode .gr-summary-title {
               color: #FFFFFF;
           }

           #phone-screen.dark-mode .gr-summary-input {
               background-color: #1C1C1E;
               border-color: #3A3A3C;
               color: #EEE;
           }

           #phone-screen.dark-mode .gr-summary-input:focus {
               background-color: #000;
               border-color: var(--gr-primary);
           }

           #phone-screen.dark-mode .gr-summary-footer {
               color: #666;
           }

           /* 作者列表项的操作按钮容器 */
           .gr-author-actions {
               display: flex;
               gap: 10px;
               /* 按钮之间的间距 */
               align-items: center;
           }

/* 绿江创作与阅读增强 */
.gr-settings-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 10px;
}

.gr-settings-grid > div { min-width: 0; }

.gr-library-search { margin: 0 0 14px; }

.gr-reader-header-actions { display:flex;align-items:center;gap:4px; }
.gr-mode-toggle-btn { border:1px solid var(--gr-border);border-radius:999px;background:var(--gr-surface);color:var(--gr-primary);padding:5px 9px;font-size:11px;cursor:pointer; }
#gr-reader-screen.reading-only .top-summary,
#gr-reader-screen.reading-only .gr-summary-card,
#gr-reader-screen.reading-only #gr-creator-tools,
#gr-reader-screen.reading-only #gr-writing-controls { display:none !important; }
#gr-reader-screen.reading-only .gr-reader-content { padding-bottom:110px !important; }

.gr-book-synopsis {
    margin-top: 7px;
    color: var(--gr-text-sub);
    font-size: 12px;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.gr-book-status {
    margin-left: auto;
    padding: 2px 6px;
    border-radius: 999px;
    background: rgba(27,79,62,.08);
    color: var(--gr-primary);
    font-size: 10px;
}

.gr-book-tags { display:flex;gap:5px;flex-wrap:wrap;margin-top:7px; }
.gr-book-tags span { padding:2px 6px;border-radius:5px;background:rgba(0,0,0,.04);color:var(--gr-text-sub);font-size:10px; }

.gr-creator-tools {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    overflow-x: auto;
    padding: 0 0 8px;
    scrollbar-width: none;
}

.gr-creator-tools::-webkit-scrollbar { display: none; }

.gr-tool-btn {
    flex: 0 0 auto;
    border: 1px solid #e7e3dd;
    background: rgba(255, 255, 255, .72);
    color: #606762;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
    cursor: pointer;
}

.gr-tool-btn:hover { border-color: rgba(27,79,62,.35); color: var(--gr-primary); }

.gr-tool-btn:disabled { opacity: .55; cursor: not-allowed; }

.gr-direction-group {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 7px;
    align-items: stretch;
}

.gr-writing-mode {
    height: 100%;
    min-height: 44px;
    padding: 8px;
    font-size: 12px;
    text-align: left;
    color: var(--gr-text-main);
    cursor: pointer;
    appearance: none;
}

.gr-writing-mode::after { content: '⌄'; float: right; color: var(--gr-text-sub); }
.gr-author-select-trigger {
    text-align: left;
    color: var(--gr-text-main);
    cursor: pointer;
    appearance: none;
}
.gr-author-select-trigger::after { content: '⌄'; float: right; color: var(--gr-text-sub); }

.gr-writing-mode-modal {
    position: fixed;
    inset: 0;
    z-index: 10020;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(28, 35, 31, .22);
    backdrop-filter: blur(4px);
}

.gr-writing-mode-modal.visible { display: flex; }
.gr-writing-mode-dialog {
    width: min(360px, 100%);
    max-height: min(560px, 86vh);
    overflow: auto;
    background: #fffdf9;
    border: 1px solid rgba(27,79,62,.12);
    border-radius: 20px;
    box-shadow: 0 18px 60px rgba(25, 35, 29, .2);
}
.gr-writing-mode-dialog-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 17px 18px 13px;
    color: var(--gr-primary);
    font-family: Georgia, "Songti SC", serif;
    font-size: 16px;
    font-weight: 600;
}
.gr-writing-mode-close {
    border: 0;
    background: transparent;
    color: var(--gr-text-sub);
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}
.gr-writing-mode-options { padding: 0 10px 10px; }
.gr-writing-mode-options button {
    display: block;
    width: 100%;
    padding: 13px 12px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--gr-text-main);
    text-align: left;
    font-size: 14px;
    cursor: pointer;
}
.gr-writing-mode-options button:hover { background: rgba(27,79,62,.07); }
.gr-writing-mode-options span {
    display: block;
    margin-top: 4px;
    color: var(--gr-text-sub);
    font-size: 12px;
}

.gr-author-picker-add {
    width: 100%;
    margin-bottom: 6px;
    padding: 11px 12px;
    border: 1px dashed rgba(27,79,62,.35);
    border-radius: 12px;
    background: rgba(27,79,62,.05);
    color: var(--gr-primary);
    text-align: left;
    font-size: 14px;
    cursor: pointer;
}
.gr-author-picker-item {
    display: flex;
    align-items: center;
    gap: 8px;
    border-radius: 12px;
}
.gr-author-picker-item:hover { background: rgba(27,79,62,.06); }
.gr-author-picker-choice {
    flex: 1;
    min-width: 0;
    width: auto !important;
    padding: 12px;
    border: 0;
    background: transparent;
    color: var(--gr-text-main);
    text-align: left;
    font-size: 14px;
    cursor: pointer;
}
.gr-author-picker-choice span,
.gr-author-picker-choice small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.gr-author-picker-choice small { margin-top: 4px; color: var(--gr-text-sub); font-size: 12px; }
.gr-author-picker-edit {
    flex: 0 0 auto;
    width: auto !important;
    margin-right: 10px;
    padding: 5px 8px;
    border: 1px solid var(--gr-border);
    border-radius: 8px;
    background: var(--gr-surface);
    color: var(--gr-primary);
    font-size: 12px;
    cursor: pointer;
}
.gr-author-picker-item.selected {
    background: rgba(27,79,62,.09);
}
.gr-author-picker-item.selected .gr-author-picker-choice span::after {
    content: '✓';
    float: right;
    color: var(--gr-primary);
    font-weight: 700;
}

#gr-direction-input {
    min-height: 44px;
    max-height: 96px;
    resize: vertical;
    line-height: 1.4;
}

#gr-generate-btn.is-generating {
    background: #b54d4d;
}

.gr-chapter-editor-modal-content {
    height: 88%;
    max-width: 760px;
}

.gr-chapter-editor-textarea {
    min-height: 42vh;
    resize: vertical;
    line-height: 1.75;
}

.gr-form-hint {
    color: var(--gr-text-sub);
    font-size: 12px;
    line-height: 1.5;
}

.gr-editor-ai-tools {
    display: flex;
    gap: 6px;
    align-items: center;
    overflow-x: auto;
    padding: 2px 0 12px;
    color: var(--gr-text-sub);
    font-size: 12px;
}

.gr-editor-ai-tools span,
.gr-editor-ai-tools button { flex: 0 0 auto; }

.gr-editor-ai-tools button {
    border: 1px solid var(--gr-border);
    border-radius: 999px;
    padding: 6px 10px;
    background: var(--gr-surface);
    color: var(--gr-text-main);
    cursor: pointer;
}

.gr-editor-ai-tools button:disabled { opacity:.55; }

.gr-revision-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--gr-border);
}

.gr-revision-item > div {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.gr-revision-item span,
.gr-empty-state {
    color: var(--gr-text-sub);
    font-size: 12px;
}

.gr-diagnostic-stats {
    display: flex;
    gap: 8px;
    margin-bottom: 14px;
}

.gr-diagnostic-stats span {
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(27, 79, 62, .1);
    color: var(--gr-primary);
    font-size: 12px;
}

.gr-diagnostic-message { line-height: 1.75; }

.gr-story-character-card {
    display: grid;
    gap: 9px;
    padding: 12px;
    margin-bottom: 10px;
    border: 1px solid var(--gr-border);
    border-radius: 12px;
    background: var(--gr-surface);
}

.gr-story-character-card label {
    display: grid;
    gap: 5px;
    color: var(--gr-text-sub);
    font-size: 12px;
}

.gr-story-character-card textarea { resize: vertical; }

.gr-story-timeline {
    display: grid;
    gap: 8px;
}

.gr-story-timeline > div:not(.gr-empty-state) {
    padding: 9px 11px;
    border-left: 3px solid var(--gr-primary);
    border-radius: 0 8px 8px 0;
    background: rgba(27, 79, 62, .06);
    line-height: 1.5;
    font-size: 13px;
}

.gr-chapter-order-actions {
    display: inline-flex;
    gap: 3px;
    margin-left: auto;
}

.gr-sidebar-chapter-row > span:first-child {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gr-chapter-order-actions button {
    width: 24px;
    height: 24px;
    padding: 0;
    border: 1px solid var(--gr-border);
    border-radius: 6px;
    background: var(--gr-surface);
    color: var(--gr-text-sub);
    cursor: pointer;
}

.gr-chapter-order-actions button:disabled { opacity:.3;cursor:default; }

@media (max-width: 520px) {
    .gr-settings-grid { grid-template-columns: 1fr; }
    /* 窄屏下将输入区与操作区分层，避免按钮挤压剧情输入框 */
    #gr-writing-controls {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        align-items: stretch !important;
        gap: 8px !important;
    }

    .gr-direction-group {
        grid-column: 1 / -1;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        width: 100%;
    }

    .gr-writing-mode {
        width: 100%;
        height: auto !important;
        min-height: 42px;
        box-sizing: border-box;
    }

    #gr-direction-input {
        width: 100%;
        height: 58px;
        min-height: 58px;
        box-sizing: border-box;
    }

    #gr-reroll-btn {
        width: 46px;
        min-width: 46px;
        min-height: 46px;
        padding: 0 !important;
        justify-content: center;
        box-sizing: border-box;
    }

    #gr-generate-btn {
        width: 100%;
        min-height: 46px;
        justify-content: center;
        box-sizing: border-box;
        border-radius: 14px;
    }

    .gr-control-panel {
        padding: 12px 14px;
        padding-bottom: calc(12px + env(safe-area-inset-bottom));
        border-radius: 18px 18px 0 0;
    }
}

           /* 如果之前没有定义 gr-input，补充一下以防万一 */
           .gr-input {
               width: 100%;
               padding: 12px;
               border-radius: 10px;
               border: 1px solid #ddd;
               background: #f9f9f9;
               font-size: 15px;
               outline: none;
               box-sizing: border-box;
           }

           .gr-input:focus {
               background: #fff;
               border-color: #1B4F3E;
           }

           /* ========================================== */
           /* ▼▼▼ 绿江 (Green River) 风格终极修正 ▼▼▼ */
           /* ========================================== */

           /* 1. 顶栏布局与宽度统一 (对齐QQ风格) */
           .gr-header {
               /* 1. 布局与尺寸：强制占满宽度 */
               display: flex !important;
               justify-content: space-between !important;
               align-items: center !important;
               width: 100% !important;
               box-sizing: border-box !important;

               /* 2. 高度核心修复：对齐 QQ 头部高度 */
               /* QQ 头部样式为: padding: 15px 20px; padding-top: 45px; */
               padding: 15px 20px !important;
               padding-top: 45px !important;
               /* 关键：强制预留 45px 状态栏高度 */

               /* 3. 定位与外观 */
               position: sticky !important;
               top: 0 !important;
               z-index: 100 !important;
               background-color: rgba(250, 250, 249, 0.98) !important;
               border-bottom: 1px solid #E5E5E5 !important;
               flex-shrink: 0 !important;
               /* 防止被内容挤压 */
           }

           /* 确保标题字体与 QQ 头部大小相近，但保持绿江风格 */
           .gr-title {
               font-family: "Georgia", "Songti SC", serif !important;
               font-size: 20px !important;
               /* 稍微大一点点，显得更有文学感，位置居中 */
               font-weight: 700 !important;
               color: #1B4F3E !important;
               /* 绝对定位居中 (可选，如果想要绝对居中对齐请解开下面注释，否则保持 Flex 居中) */
               /* position: absolute;
    left: 50%;
    transform: translateX(-50%);
    */
           }

           /* 修复右侧按钮容器，确保横向排列 */
           .gr-header-actions {
               display: flex !important;
               flex-direction: row !important;
               gap: 15px !important;
               align-items: center !important;
               /* 确保它在最上层，如果使用了标题绝对定位 */
               z-index: 10 !important;
           }

           /* 修正按钮本身的大小和对齐 */
           .gr-header .gr-icon-btn {
               width: 32px !important;
               height: 32px !important;
               padding: 6px !important;
               margin: 0 !important;
               display: flex !important;
               align-items: center;
               justify-content: center;
               /* 去掉可能导致换行的属性 */
               flex: none !important;
           }

           /* 3. 作者列表项内按钮强制横向 */
           .gr-author-actions {
               display: flex !important;
               flex-direction: row !important;
               align-items: center !important;
               gap: 10px !important;
           }

           /* 4. 绿江专属模态窗样式 (统一为“添加书”的高端风格) */
           #gr-author-editor-modal .modal-content {
               background-color: #FAFAF9 !important;
               /* 暖白背景 */
               border-radius: 16px !important;
               box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1) !important;
               padding: 0 !important;
               overflow: hidden !important;
           }

           /* 弹窗头部 */
           #gr-author-editor-modal .modal-header {
               background: transparent !important;
               border-bottom: none !important;
               padding: 25px 25px 10px 25px !important;
               justify-content: flex-start !important;
               /* 标题靠左或居中，这里选靠左更像书 */
           }

           #gr-author-editor-modal .modal-header span {
               font-family: "Georgia", "Songti SC", serif !important;
               color: #1B4F3E !important;
               /* 墨绿色 */
               font-size: 22px !important;
               font-weight: 700 !important;
           }

           /* 弹窗主体 */
           #gr-author-editor-modal .modal-body {
               padding: 10px 25px 30px 25px !important;
           }

           /* 输入框组 */
           #gr-author-editor-modal .form-group {
               margin-bottom: 20px !important;
           }

           /* 标签 */
           #gr-author-editor-modal label {
               color: #1B4F3E !important;
               font-size: 14px !important;
               font-weight: 600 !important;
               margin-bottom: 8px !important;
               display: block !important;
               opacity: 0.8;
           }

           /* 输入框本体 */
           #gr-author-editor-modal input,
           #gr-author-editor-modal textarea {
               background-color: #FFFFFF !important;
               border: 1px solid #E5E5E5 !important;
               border-radius: 10px !important;
               padding: 15px !important;
               font-size: 16px !important;
               color: #333 !important;
               width: 100% !important;
               box-sizing: border-box !important;
               font-family: -apple-system, sans-serif !important;
               transition: all 0.2s !important;
           }

           #gr-author-editor-modal input:focus,
           #gr-author-editor-modal textarea:focus {
               border-color: #1B4F3E !important;
               box-shadow: 0 0 0 3px rgba(27, 79, 62, 0.05) !important;
               outline: none !important;
           }

           /* 弹窗底部 */
           #gr-author-editor-modal .modal-footer {
               border-top: 1px solid #E5E5E5 !important;
               padding: 15px 25px !important;
               background-color: #FFFFFF !important;
               gap: 15px !important;
           }

           /* 按钮 */
           #gr-author-editor-modal .modal-footer button {
               border-radius: 25px !important;
               padding: 12px 0 !important;
               font-size: 15px !important;
               font-weight: 600 !important;
               border: none !important;
           }

           #gr-author-editor-modal .modal-footer .cancel {
               background-color: #F5F5F7 !important;
               color: #8E8E93 !important;
               width: 30% !important;
           }

           #gr-author-editor-modal .modal-footer .save {
               background-color: #1B4F3E !important;
               color: #FFFFFF !important;
               width: 70% !important;
               box-shadow: 0 4px 15px rgba(27, 79, 62, 0.2) !important;
           }

