{
"tool_response": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/public\/css\/chat-redesign.css",
"oldString": "\/* Error Display *\/\n.chat-error {\n background: rgba(220, 53, 69, 0.1);\n color: #dc3545;\n padding: 12px 16px;\n border-radius: 8px;\n border: 1px solid rgba(220, 53, 69, 0.3);\n}",
"newString": "\/* Error Display *\/\n.chat-error {\n background: rgba(220, 53, 69, 0.1);\n color: #dc3545;\n padding: 12px 16px;\n border-radius: 8px;\n border: 1px solid rgba(220, 53, 69, 0.3);\n}\n\n\/* ====================================\n CONFIG PANEL\n ==================================== *\/\n\n\/* Accessibility: visually hidden but screen-reader accessible *\/\n.visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.config-panel {\n position: fixed;\n right: 0;\n top: 0;\n bottom: 0;\n width: 320px;\n background: var(--chat-sidebar-bg);\n border-left: 1px solid var(--chat-border);\n transform: translateX(100%);\n transition: transform 0.25s ease;\n z-index: 90;\n display: flex;\n flex-direction: column;\n}\n\n.config-panel--open {\n transform: translateX(0);\n}\n\n.config-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px;\n border-bottom: 1px solid var(--chat-border);\n}\n\n.config-panel__title {\n font-weight: 600;\n font-size: 15px;\n color: var(--chat-text);\n}\n\n.config-panel__close {\n background: none;\n border: none;\n font-size: 24px;\n color: var(--chat-text-secondary);\n cursor: pointer;\n padding: 4px 8px;\n line-height: 1;\n}\n\n.config-panel__close:hover {\n color: var(--chat-text);\n}\n\n.config-panel__close:focus {\n outline: 2px solid var(--chat-accent);\n outline-offset: 2px;\n}\n\n.config-panel__body {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n}\n\n.config-panel__group {\n margin-bottom: 20px;\n}\n\n.config-panel__label {\n display: block;\n font-size: 12px;\n font-weight: 500;\n color: var(--chat-text-secondary);\n margin-bottom: 6px;\n text-transform: uppercase;\n letter-spacing: 0.5px;\n}\n\n.config-panel__select {\n width: calc(100% - 36px);\n padding: 10px 12px;\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n background: var(--chat-input-bg);\n color: var(--chat-text);\n font-size: 14px;\n cursor: pointer;\n}\n\n.config-panel__select:focus {\n outline: none;\n border-color: var(--chat-accent);\n box-shadow: 0 0 0 2px rgba(13, 13, 13, 0.1);\n}\n\n.config-panel__toggle {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 38px;\n background: var(--chat-bg-secondary);\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n color: var(--chat-text-secondary);\n cursor: pointer;\n font-size: 14px;\n vertical-align: top;\n margin-left: 4px;\n}\n\n.config-panel__toggle:hover {\n background: var(--chat-hover);\n color: var(--chat-text);\n}\n\n.config-panel__toggle:focus {\n outline: 2px solid var(--chat-accent);\n outline-offset: 2px;\n}\n\n.config-panel__toggle[aria-expanded=\"true\"] {\n background: var(--chat-accent);\n color: var(--chat-bg);\n border-color: var(--chat-accent);\n}\n\n.config-panel__editor {\n margin-top: 10px;\n padding: 12px;\n background: var(--chat-bg);\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n}\n\n.config-panel__editor--hidden {\n display: none;\n}\n\n.config-panel__textarea {\n width: 100%;\n padding: 10px;\n border: 1px solid var(--chat-border);\n border-radius: 6px;\n background: var(--chat-input-bg);\n color: var(--chat-text);\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace;\n font-size: 12px;\n line-height: 1.5;\n resize: vertical;\n min-height: 120px;\n}\n\n.config-panel__textarea:focus {\n outline: none;\n border-color: var(--chat-accent);\n}\n\n.config-panel__actions {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-top: 10px;\n}\n\n.config-panel__version {\n font-size: 12px;\n color: var(--chat-text-secondary);\n font-family: 'SF Mono', 'Monaco', 'Inconsolata', monospace;\n}\n\n.config-panel__save {\n padding: 8px 16px;\n background: var(--chat-accent);\n color: var(--chat-bg);\n border: none;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: opacity 0.15s;\n}\n\n.config-panel__save:hover {\n opacity: 0.9;\n}\n\n.config-panel__save:focus {\n outline: 2px solid var(--chat-accent);\n outline-offset: 2px;\n}\n\n\/* Toggle Button (fixed position) *\/\n.config-panel__toggle-btn {\n position: fixed;\n right: 16px;\n top: 50%;\n transform: translateY(-50%);\n width: 40px;\n height: 40px;\n background: var(--chat-bg-secondary);\n border: 1px solid var(--chat-border);\n border-radius: 50%;\n color: var(--chat-text-secondary);\n cursor: pointer;\n font-size: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 80;\n transition: all 0.2s;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\n}\n\n.config-panel__toggle-btn:hover {\n background: var(--chat-bg-tertiary);\n color: var(--chat-text);\n}\n\n.config-panel__toggle-btn:focus {\n outline: 2px solid var(--chat-accent);\n outline-offset: 2px;\n}\n\n.config-panel--open ~ .config-panel__toggle-btn,\n.config-panel--open + * + .config-panel__toggle-btn {\n display: none;\n}\n\n\/* Hide toggle button when panel is open *\/\n.config-panel--open .config-panel__toggle-btn {\n display: none;\n}\n\n\/* Mobile: Full width config panel *\/\n@media (max-width: 768px) {\n .config-panel {\n width: 100%;\n }\n\n .config-panel__toggle-btn {\n right: 12px;\n bottom: 100px;\n top: auto;\n transform: none;\n }\n}",
"originalFile": "\/**\n * Chat Redesign - Standalone CSS\n * Modern, minimalistisch, Dark\/Light Mode\n *\/\n\n\/* Theme Variables *\/\n:root {\n --chat-bg: #ffffff;\n --chat-bg-secondary: #f7f7f8;\n --chat-bg-tertiary: #ececf1;\n --chat-text: #0d0d0d;\n --chat-text-secondary: #6e6e80;\n --chat-border: #e5e5e5;\n --chat-accent: #0d0d0d;\n --chat-user-bg: #0d0d0d;\n --chat-user-text: #ffffff;\n --chat-input-bg: #ffffff;\n --chat-input-border: #d9d9e3;\n --chat-sidebar-bg: #f9f9f9;\n --chat-hover: rgba(0,0,0,0.04);\n --chat-success: #10a37f;\n --chat-warning: #f5a623;\n}\n\n[data-theme=\"dark\"] {\n --chat-bg: #212121;\n --chat-bg-secondary: #2f2f2f;\n --chat-bg-tertiary: #3f3f3f;\n --chat-text: #ececec;\n --chat-text-secondary: #8e8ea0;\n --chat-border: #444654;\n --chat-accent: #ffffff;\n --chat-user-bg: #2f2f2f;\n --chat-user-text: #ececec;\n --chat-input-bg: #2f2f2f;\n --chat-input-border: #444654;\n --chat-sidebar-bg: #171717;\n --chat-hover: rgba(255,255,255,0.05);\n --chat-success: #10a37f;\n --chat-warning: #f5a623;\n}\n\n* { box-sizing: border-box; margin: 0; padding: 0; }\n\nbody {\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n background: var(--chat-bg);\n color: var(--chat-text);\n line-height: 1.5;\n}\n\n\/* Layout *\/\n.chat-layout {\n display: flex;\n height: 100vh;\n overflow: hidden;\n}\n\n\/* Sidebar *\/\n.chat-sidebar {\n width: 280px;\n background: var(--chat-sidebar-bg);\n display: flex;\n flex-direction: column;\n flex-shrink: 0;\n border-right: 1px solid var(--chat-border);\n}\n\n.chat-sidebar__header {\n padding: 12px;\n}\n\n.chat-sidebar__new {\n display: block;\n width: 100%;\n padding: 12px;\n background: transparent;\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n color: var(--chat-text);\n font-size: 14px;\n text-decoration: none;\n text-align: center;\n transition: background 0.15s;\n}\n\n.chat-sidebar__new:hover {\n background: var(--chat-hover);\n}\n\n.chat-sidebar__delete-all {\n display: block;\n width: 100%;\n margin-top: 8px;\n padding: 8px;\n background: transparent;\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n color: var(--chat-text-secondary);\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n}\n\n.chat-sidebar__delete-all:hover {\n background: rgba(220, 53, 69, 0.1);\n border-color: #dc3545;\n color: #dc3545;\n}\n\n.chat-sidebar__list {\n flex: 1;\n overflow-y: auto;\n padding: 8px;\n}\n\n\/* Session Item *\/\n.chat-session {\n display: block;\n padding: 10px 12px;\n border-radius: 8px;\n color: var(--chat-text);\n text-decoration: none;\n margin-bottom: 2px;\n position: relative;\n transition: background 0.15s;\n}\n\n.chat-session:hover {\n background: var(--chat-hover);\n}\n\n.chat-session--active {\n background: var(--chat-bg-tertiary);\n}\n\n.chat-session--empty {\n color: var(--chat-text-secondary);\n text-align: center;\n font-style: italic;\n}\n\n.chat-session__title {\n font-weight: 500;\n font-size: 14px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n padding-right: 50px;\n}\n\n.chat-session__meta {\n display: flex;\n gap: 8px;\n font-size: 12px;\n color: var(--chat-text-secondary);\n margin-top: 4px;\n flex-wrap: wrap;\n}\n\n.chat-session__cost {\n color: var(--chat-warning);\n}\n\n.chat-session__local {\n color: var(--chat-success);\n}\n\n.chat-session__actions {\n position: absolute;\n right: 8px;\n top: 50%;\n transform: translateY(-50%);\n display: flex;\n gap: 4px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n\n.chat-session:hover .chat-session__actions {\n opacity: 1;\n}\n\n.chat-session__edit,\n.chat-session__delete {\n background: none;\n border: none;\n color: var(--chat-text-secondary);\n cursor: pointer;\n font-size: 14px;\n padding: 4px;\n}\n\n.chat-session__edit:hover { color: var(--chat-accent); }\n.chat-session__delete:hover { color: #dc3545; }\n\n.chat-session__input {\n width: 100%;\n padding: 2px 4px;\n border: 1px solid var(--chat-accent);\n border-radius: 4px;\n font-size: inherit;\n font-family: inherit;\n background: var(--chat-bg);\n color: var(--chat-text);\n}\n\n\/* Overlay *\/\n.chat-overlay {\n display: none;\n position: fixed;\n inset: 0;\n background: rgba(0,0,0,0.5);\n z-index: 99;\n}\n\n.chat-overlay--visible {\n display: block;\n}\n\n\/* Main Area *\/\n.chat-main {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-width: 0;\n background: var(--chat-bg);\n}\n\n\/* Header *\/\n.chat-header {\n display: flex;\n align-items: center;\n padding: 12px 16px;\n border-bottom: 1px solid var(--chat-border);\n gap: 12px;\n}\n\n.chat-toggle {\n background: var(--chat-bg-secondary);\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n width: 40px;\n height: 40px;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--chat-text);\n flex-shrink: 0;\n}\n\n.chat-toggle:hover {\n background: var(--chat-bg-tertiary);\n}\n\n.chat-toggle svg {\n width: 20px;\n height: 20px;\n}\n\n.chat-header__logo {\n display: flex;\n align-items: center;\n margin-right: 12px;\n}\n\n.chat-header__logo img {\n height: 32px;\n width: auto;\n}\n\n.chat-header__title {\n flex: 1;\n min-width: 0;\n}\n\n.chat-header__title h1 {\n font-size: 16px;\n font-weight: 600;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.chat-header__actions {\n display: flex;\n gap: 8px;\n flex-shrink: 0;\n}\n\n\/* Buttons *\/\n.chat-btn {\n padding: 8px 12px;\n background: var(--chat-bg-secondary);\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n color: var(--chat-text);\n font-size: 13px;\n cursor: pointer;\n transition: background 0.15s;\n}\n\n.chat-btn:hover {\n background: var(--chat-bg-tertiary);\n}\n\n.chat-btn--ghost {\n background: transparent;\n}\n\n.chat-btn--icon {\n width: 40px;\n height: 40px;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 18px;\n}\n\n\/* Dropdown *\/\n.chat-dropdown {\n position: relative;\n}\n\n.chat-dropdown__menu {\n display: none;\n position: absolute;\n top: 100%;\n right: 0;\n margin-top: 4px;\n background: var(--chat-bg);\n border: 1px solid var(--chat-border);\n border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0,0,0,0.1);\n min-width: 150px;\n z-index: 50;\n}\n\n.chat-dropdown--open .chat-dropdown__menu {\n display: block;\n}\n\n.chat-dropdown__item {\n display: block;\n padding: 10px 14px;\n color: var(--chat-text);\n text-decoration: none;\n font-size: 13px;\n}\n\n.chat-dropdown__item:hover {\n background: var(--chat-hover);\n}\n\n\/* Messages *\/\n.chat-messages {\n flex: 1;\n overflow-y: auto;\n padding: 20px 0;\n}\n\n.chat-messages__inner {\n max-width: 768px;\n margin: 0 auto;\n padding: 0 24px;\n}\n\n\/* Welcome *\/\n.chat-welcome {\n text-align: center;\n padding: 60px 24px;\n color: var(--chat-text-secondary);\n}\n\n.chat-welcome h2 {\n color: var(--chat-text);\n font-size: 22px;\n font-weight: 600;\n margin: 0 0 8px;\n}\n\n.chat-welcome p {\n margin: 0;\n}\n\n.chat-welcome__logo {\n width: 80px;\n height: auto;\n margin-bottom: 16px;\n opacity: 0.9;\n}\n\n\/* Message *\/\n.chat-msg {\n padding: 16px 0;\n}\n\n.chat-msg--user {\n display: flex;\n justify-content: flex-end;\n}\n\n.chat-msg--user .chat-msg__content {\n background: var(--chat-user-bg);\n color: var(--chat-user-text);\n border-radius: 18px;\n padding: 12px 18px;\n max-width: 80%;\n}\n\n.chat-msg--assistant .chat-msg__content {\n line-height: 1.7;\n}\n\n.chat-msg__content p {\n margin: 0 0 12px;\n}\n\n.chat-msg__content p:last-child {\n margin-bottom: 0;\n}\n\n.chat-msg__content ul, .chat-msg__content ol {\n margin: 12px 0;\n padding-left: 24px;\n}\n\n.chat-msg__content li {\n margin: 6px 0;\n}\n\n.chat-msg__meta {\n margin-top: 12px;\n font-size: 12px;\n color: var(--chat-text-secondary);\n display: flex;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.chat-msg__tokens {\n background: var(--chat-bg-secondary);\n padding: 2px 8px;\n border-radius: 4px;\n}\n\n.chat-msg__cost {\n color: var(--chat-warning);\n}\n\n.chat-msg__local {\n color: var(--chat-success);\n}\n\n\/* Sources *\/\n.chat-sources {\n margin-top: 16px;\n padding-top: 12px;\n border-top: 1px solid var(--chat-border);\n}\n\n.chat-sources__toggle {\n background: none;\n border: none;\n color: var(--chat-text-secondary);\n font-size: 13px;\n cursor: pointer;\n padding: 0;\n}\n\n.chat-sources__toggle:hover {\n color: var(--chat-text);\n}\n\n.chat-sources__list {\n display: none;\n margin-top: 12px;\n flex-direction: column;\n gap: 8px;\n}\n\n.chat-sources--open .chat-sources__list {\n display: flex;\n}\n\n.chat-source {\n padding: 10px 12px;\n background: var(--chat-bg-secondary);\n border-radius: 8px;\n font-size: 13px;\n border-left: 3px solid var(--chat-accent);\n}\n\n.chat-source__header {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.chat-source__collection {\n background: var(--chat-bg-tertiary);\n padding: 2px 6px;\n border-radius: 4px;\n font-size: 11px;\n font-family: monospace;\n}\n\n.chat-source__title {\n font-weight: 500;\n}\n\n.chat-source__score {\n background: var(--chat-accent);\n color: var(--chat-bg);\n padding: 2px 6px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n margin-left: auto;\n}\n\n.chat-source__content {\n margin-top: 8px;\n font-size: 12px;\n color: var(--chat-text-secondary);\n font-style: italic;\n line-height: 1.5;\n}\n\n\/* Input Area *\/\n.chat-input-area {\n padding: 16px 24px 24px;\n border-top: 1px solid var(--chat-border);\n background: var(--chat-bg);\n}\n\n.chat-input-wrapper {\n max-width: 768px;\n margin: 0 auto;\n}\n\n.chat-form {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.c... [TRUNCATED-bb3012c55ef1c1b4]",
"structuredPatch": [
{
"oldStart": 964,
"oldLines": 3,
"newStart": 964,
"newLines": 262,
"lines": [
" border-radius: 8px;",
" border: 1px solid rgba(220, 53, 69, 0.3);",
" }",
"+",
"+\/* ====================================",
"+ CONFIG PANEL",
"+ ==================================== *\/",
"+",
"+\/* Accessibility: visually hidden but screen-reader accessible *\/",
"+.visually-hidden {",
"+ position: absolute;",
"+ width: 1px;",
"+ height: 1px;",
"+ padding: 0;",
"+ margin: -1px;",
"+ overflow: hidden;",
"+ clip: rect(0, 0, 0, 0);",
"+ white-space: nowrap;",
"+ border: 0;",
"+}",
"+",
"+.config-panel {",
"+ position: fixed;",
"+ right: 0;",
"+ top: 0;",
"+ bottom: 0;",
"+ width: 320px;",
"+ background: var(--chat-sidebar-bg);",
"+ border-left: 1px solid var(--chat-border);",
"+ transform: translateX(100%);",
"+ transition: transform 0.25s ease;",
"+ z-index: 90;",
"+ display: flex;",
"+ flex-direction: column;",
"+}",
"+",
"+.config-panel--open {",
"+ transform: translateX(0);",
"+}",
"+",
"+.config-panel__header {",
"+ display: flex;",
"+ align-items: center;",
"+ justify-content: space-between;",
"+ padding: 16px;",
"+ border-bottom: 1px solid var(--chat-border);",
"+}",
"+",
"+.config-panel__title {",
"+ font-weight: 600;",
"+ font-size: 15px;",
"+ color: var(--chat-text);",
"+}",
"+",
"+.config-panel__close {",
"+ background: none;",
"+ border: none;",
"+ font-size: 24px;",
"+ color: var(--chat-text-secondary);",
"+ cursor: pointer;",
"+ padding: 4px 8px;",
"+ line-height: 1;",
"+}",
"+",
"+.config-panel__close:hover {",
"+ color: var(--chat-text);",
"+}",
"+",
"+.config-panel__close:focus {",
"+ outline: 2px solid var(--chat-accent);",
"+ outline-offset: 2px;",
"+}",
"+",
"+.config-panel__body {",
"+ flex: 1;",
"+ overflow-y: auto;",
"+ padding: 16px;",
"+}",
"+",
"+.config-panel__group {",
"+ margin-bottom: 20px;",
"+}",
"+",
"+.config-panel__label {",
"+ display: block;",
"+ font-size: 12px;",
"+ font-weight: 500;",
"+ color: var(--chat-text-secondary);",
"+ margin-bottom: 6px;",
"+ text-transform: uppercase;",
"+ letter-spacing: 0.5px;",
"+}",
"+",
"+.config-panel__select {",
"+ width: calc(100% - 36px);",
"+ padding: 10px 12px;",
"+ border: 1px solid var(--chat-border);",
"+ border-radius: 8px;",
"+ background: var(--chat-input-bg);",
"+ color: var(--chat-text);",
"+ font-size: 14px;",
"+ cursor: pointer;",
"+}",
"+",
"+.config-panel__select:focus {",
"+ outline: none;",
"+ border-color: var(--chat-accent);",
"+ box-shadow: 0 0 0 2px rgba(13, 13, 13, 0.1);",
"+}",
"+",
"+.config-panel__toggle {",
"+ display: inline-flex;",
"+ align-items: center;",
"+ justify-content: center;",
"+ width: 32px;",
"+ height: 38px;",
"+ background: var(--chat-bg-secondary);",
"+ border: 1px solid var(--chat-border);",
"+ border-radius: 8px;",
"+ color: var(--chat-text-secondary);",
"+ cursor: pointer;",
"+ font-size: 14px;",
"+ vertical-align: top;",
"+ margin-left: 4px;",
"+}",
"+",
"+.config-panel__toggle:hover {",
"+ background: var(--chat-hover);",
"+ color: var(--chat-text);",
"+}",
"+",
"+.config-panel__toggle:focus {",
"+ outline: 2px solid var(--chat-accent);",
"+ outline-offset: 2px;",
"+}",
"+",
"+.config-panel__toggle[aria-expanded=\"true\"] {",
"+ background: var(--chat-accent);",
"+ color: var(--chat-bg);",
"+ border-color: var(--chat-accent);",
"+}",
"+",
"+.config-panel__editor {",
"+ margin-top: 10px;",
"+ padding: 12px;",
"+ background: var(--chat-bg);",
"+ border: 1px solid var(--chat-border);",
"+ border-radius: 8px;",
"+}",
"+",
"+.config-panel__editor--hidden {",
"+ display: none;",
"+}",
"+",
"+.config-panel__textarea {",
"+ width: 100%;",
"+ padding: 10px;",
"+ border: 1px solid var(--chat-border);",
"+ border-radius: 6px;",
"+ background: var(--chat-input-bg);",
"+ color: var(--chat-text);",
"+ font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Code', monospace;",
"+ font-size: 12px;",
"+ line-height: 1.5;",
"+ resize: vertical;",
"+ min-height: 120px;",
"+}",
"+",
"+.config-panel__textarea:focus {",
"+ outline: none;",
"+ border-color: var(--chat-accent);",
"+}",
"+",
"+.config-panel__actions {",
"+ display: flex;",
"+ align-items: center;",
"+ justify-content: space-between;",
"+ margin-top: 10px;",
"+}",
"+",
"+.config-panel__version {",
"+ font-size: 12px;",
"+ color: var(--chat-text-secondary);",
"+ font-family: 'SF Mono', 'Monaco', 'Inconsolata', monospace;",
"+}",
"+",
"+.config-panel__save {",
"+ padding: 8px 16px;",
"+ background: var(--chat-accent);",
"+ color: var(--chat-bg);",
"+ border: none;",
"+ border-radius: 6px;",
"+ font-size: 13px;",
"+ font-weight: 500;",
"+ cursor: pointer;",
"+ transition: opacity 0.15s;",
"+}",
"+",
"+.config-panel__save:hover {",
"+ opacity: 0.9;",
"+}",
"+",
"+.config-panel__save:focus {",
"+ outline: 2px solid var(--chat-accent);",
"+ outline-offset: 2px;",
"+}",
"+",
"+\/* Toggle Button (fixed position) *\/",
"+.config-panel__toggle-btn {",
"+ position: fixed;",
"+ right: 16px;",
"+ top: 50%;",
"+ transform: translateY(-50%);",
"+ width: 40px;",
"+ height: 40px;",
"+ background: var(--chat-bg-secondary);",
"+ border: 1px solid var(--chat-border);",
"+ border-radius: 50%;",
"+ color: var(--chat-text-secondary);",
"+ cursor: pointer;",
"+ font-size: 20px;",
"+ display: flex;",
"+ align-items: center;",
"+ justify-content: center;",
"+ z-index: 80;",
"+ transition: all 0.2s;",
"+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);",
"+}",
"+",
"+.config-panel__toggle-btn:hover {",
"+ background: var(--chat-bg-tertiary);",
"+ color: var(--chat-text);",
"+}",
"+",
"+.config-panel__toggle-btn:focus {",
"+ outline: 2px solid var(--chat-accent);",
"+ outline-offset: 2px;",
"+}",
"+",
"+.config-panel--open ~ .config-panel__toggle-btn,",
"+.config-panel--open + * + .config-panel__toggle-btn {",
"+ display: none;",
"+}",
"+",
"+\/* Hide toggle button when panel is open *\/",
"+.config-panel--open .config-panel__toggle-btn {",
"+ display: none;",
"+}",
"+",
"+\/* Mobile: Full width config panel *\/",
"+@media (max-width: 768px) {",
"+ .config-panel {",
"+ width: 100%;",
"+ }",
"+",
"+ .config-panel__toggle-btn {",
"+ right: 12px;",
"+ bottom: 100px;",
"+ top: auto;",
"+ transform: none;",
"+ }",
"+}"
]
}
],
"userModified": false,
"replaceAll": false
}
}