NitterCorpusStyles

拾荒小猫无限卡槽控制矩阵 - 究极宽体平铺自适应样式库

此腳本不應該直接安裝,它是一個供其他腳本使用的函式庫。欲使用本函式庫,請在腳本 metadata 寫上: // @require https://update.greatest.deepsurf.us/scripts/579921/1835583/NitterCorpusStyles.js

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         NitterCorpusStyles
// @version      1.2.5_Styles
// @description  拾荒小猫无限卡槽控制矩阵 - 究极宽体平铺自适应样式库
// @author       Gemini Collaborator
// @grant        none
// ==/UserScript==

(function(window) {
    'use strict';
    window.NitterCorpusStyles = {
        inject() {
            if (document.getElementById('rp-core-styles')) return;
            const style = document.createElement('style');
            style.id = 'rp-core-styles';
            style.innerHTML = `
                #rp-toast-container { position: fixed; top: 20px; right: 20px; z-index: 100000; font-family: monospace; pointer-events: none; }
                .rp-toast { background: #1e1e2e; color: #cdd6f4; border-left: 4px solid #a6e3a1; padding: 10px 14px; margin-bottom: 8px; border-radius: 4px; box-shadow: 0 4px 12px rgba(0,0,0,0.5); font-size: 11px; min-width: 200px; max-width: 350px; opacity: 0; transform: translateX(50px); transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); pointer-events: auto; }
                .rp-toast.show { opacity: 1; transform: translateX(0); }
                
                /* 右侧对齐,自适应 1800px 究极体,保留左侧 200px 绝对呼吸区 */
                #rp-mega-drawer { position: fixed; top: 0; right: 0; width: 1800px; max-width: calc(100vw - 220px); height: 100vh; background: rgba(17,17,27,0.85); backdrop-filter: blur(8px); z-index: 99998; font-family: monospace; display: flex; align-items: center; justify-content: flex-end; }
                #rp-mega-drawer.hidden { display: none !important; }
                
                /* 上下平铺大网格 */
                .mega-layout { width: 100%; height: 98vh; background: #1e1e2e; border: 1px solid #45475a; border-radius: 12px; display: grid; grid-template-rows: 1.3fr 1fr; overflow: hidden; box-shadow: 0 20px 50px rgba(0,0,0,0.8); margin-right: 10px; box-sizing: border-box; }
                
                /* 左右平铺改用弹性比例分配,彻底消灭 350px 堆叠与右侧留白 */
                .mega-top-split { display: flex; width: 100%; height: 100%; overflow: hidden; border-bottom: 1px solid #45475a; }
                
                /* 左上侧栏:槽位、总线、历史面板全堆在左边 */
                .mega-sidebar-left { flex: 0 0 380px; background: #181825; border-right: 1px solid #45475a; padding: 16px; display: flex; flex-direction: column; gap: 12px; overflow-y: auto; box-sizing: border-box; }
                /* 右上侧栏:长文本专属轰炸区,横向拉满 */
                .mega-sidebar-right { flex: 1; background: #1e1e2e; padding: 16px; display: flex; flex-direction: column; gap: 12px; overflow-y: auto; box-sizing: border-box; }
                /* 下层主作业区 */
                .mega-main-bottom { padding: 16px; display: flex; flex-direction: column; gap: 8px; background: #11111b; box-sizing: border-box; }
                
                .slot-header-area { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #313244; padding-bottom: 6px; }
                .btn-create-slot { background: #b4befe; color: #11111b; border: none; padding: 4px 8px; font-size: 11px; font-weight: bold; border-radius: 4px; cursor: pointer; }
                .slot-container { flex: 1; min-height: 120px; overflow-y: auto; display: flex; flex-direction: column; gap: 6px; padding-right: 2px; }
                
                .mega-btn { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 8px 12px; font-size: 12px; border-radius: 6px; cursor: pointer; text-align: left; transition: all 0.2s; }
                .slot-active { background: #f5c2e7 !important; color: #11111b !important; font-weight: bold; }
                
                /* 外部资产流框架 */
                .api-flow-wrapper { background: #11111b; border: 1px solid #313244; border-radius: 8px; padding: 12px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
                /* 资产文本框纵向完全占满右侧,给足全量单文本角色卡操作纵深 */
                .mega-api-textarea { width: 100%; flex: 1; min-height: 300px; background: #181825; color: #cca7ef; border: 1px solid #45475a; border-radius: 6px; resize: none; font-size: 12px; padding: 10px; box-sizing: border-box; line-height: 1.42; font-family: monospace; }
                
                /* 响应式防御:改用 Flex Wrap 配合不换行,文字绝不变扁、绝不溢出 */
                .api-sub-grid { display: flex; flex-wrap: wrap; gap: 6px; }
                .api-sub-btn { flex: 1; min-width: 110px; border: none; color: #11111b; font-size: 11px; font-weight: bold; height: 28px; border-radius: 5px; cursor: pointer; text-align: center; line-height: 28px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
                
                .sandbox-row { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
                .micro-deck-btn { flex: 1; min-width: 65px; border: none; color: #11111b; font-size: 11px; font-weight: bold; height: 26px; border-radius: 4px; cursor: pointer; text-align: center; white-space: nowrap; }
                .btn-deck-grey { background: #313244 !important; color: #585b70 !important; cursor: not-allowed !important; }
                
                .cloud-matrix-box { display: flex; flex-direction: column; gap: 6px; background: #181825; padding: 10px; border-radius: 6px; border: 1px dashed #45475a; }
                .cloud-matrix-grid { display: flex; flex-wrap: wrap; gap: 6px; }
                .cloud-btn { flex: 1; min-width: 90px; border: none; color: #11111b; font-size: 11px; font-weight: bold; height: 26px; border-radius: 4px; cursor: pointer; display: flex; align-items: center; justify-content: center; white-space: nowrap; }

                /* 历史面板移至左侧,高度紧凑化 */
                .history-panel-wrapper { background: #11111b; border: 1px solid #313244; border-radius: 6px; padding: 8px; display: flex; flex-direction: column; height: 130px; box-sizing: border-box; }
                .history-list-scroll { flex: 1; overflow-y: auto; display: flex; flex-direction: column; gap: 4px; }
                .history-item-row { display: flex; justify-content: space-between; background: #181825; padding: 4px 8px; font-size: 11px; color: #a6e3a1; border-radius: 4px; cursor: pointer; white-space: nowrap; }
                
                .mega-matrix-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
                .matrix-btn { background: #313244; color: #cdd6f4; border: 1px solid #45475a; font-size: 11px; height: 26px; border-radius: 4px; cursor: pointer; font-weight: bold; white-space: nowrap; }

                .mega-textarea { flex: 1; background: #181825; color: #a6e3a1; border: 1px solid #45475a; border-radius: 8px; padding: 12px; font-family: monospace; font-size: 13px; line-height: 1.5; resize: none; box-sizing: border-box; }
                .rp-drawer-btn { width: 100%; margin-top: 4px; height: 24px; background: #b4befe; color: #11111b; border: none; font-size: 10px; font-weight: bold; border-radius: 4px; cursor: pointer; }
            `;
            document.head.appendChild(style);
            if (!document.getElementById('rp-toast-container')) {
                const tContainer = document.createElement('div');
                tContainer.id = 'rp-toast-container';
                document.body.appendChild(tContainer);
            }
        }
    };
})(window);