Protokoll #12413
| ID | 12413 |
|---|---|
| Zeitstempel | 2025-12-24 01:20:54.747270 |
| Client | root |
| IP | Warning: Undefined array key "request_ip" in /var/www/dev.campus.systemische-tools.de/src/View/protokoll/show.php on line 13 Deprecated: htmlspecialchars(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/dev.campus.systemische-tools.de/src/View/protokoll/show.php on line 13 |
| Modell | claude-sonnet-4-20250514 |
| Status | completed |
| Tokens | 7,997 (Input: 0, Output: 0) |
| Dauer | 83 ms |
| Request-Zeit | Warning: Undefined array key "request_timestamp" in /var/www/dev.campus.systemische-tools.de/src/View/protokoll/show.php on line 18 |
| Response-Zeit | - |
Warning: Undefined array key "error_message" in /var/www/dev.campus.systemische-tools.de/src/View/protokoll/show.php on line 22
Request
{
"event": "PreToolUse",
"tool_name": "Edit",
"tool_input": {
"file_path": "\/var\/www\/dev.campus.systemische-tools.de\/public\/css\/style.css",
"old_string": ".doc-children { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #eee; }\n.doc-children ul { list-style: disc; padding-left: 1.5rem; }\n.doc-children li { margin: 0.5rem 0; }",
"new_string": ".doc-children { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #eee; }\n.doc-children ul { list-style: disc; padding-left: 1.5rem; }\n.doc-children li { margin: 0.5rem 0; }\n\n\/* =================================================================\n Content Studio - Show Page\n ================================================================= *\/\n.info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--space-md); margin-bottom: var(--space-lg); }\n.info-card { background: var(--color-bg); border: 1px solid var(--color-border); border-radius: 8px; padding: var(--space-md); }\n.info-card h3 { margin: 0 0 var(--space-sm) 0; font-size: 0.9rem; color: var(--color-text-muted); text-transform: uppercase; letter-spacing: 0.5px; }\n.info-list { display: grid; grid-template-columns: auto 1fr; gap: var(--space-xs) var(--space-sm); margin: 0; }\n.info-list dt { color: var(--color-text-muted); font-size: 0.85rem; }\n.info-list dd { margin: 0; font-weight: 500; }\n.briefing-box { background: var(--color-bg-muted); border-radius: 8px; padding: var(--space-md); margin-bottom: var(--space-lg); line-height: 1.6; }\n\n\/* Action Cards - Vertical Stack *\/\n.action-cards {\n display: flex;\n flex-direction: column;\n gap: var(--space-md);\n margin-bottom: var(--space-lg);\n max-width: 500px;\n}\n.action-card {\n background: var(--color-bg);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-md);\n display: flex;\n flex-direction: column;\n}\n.action-card--primary {\n border-color: var(--color-primary);\n box-shadow: 0 0 0 1px var(--color-primary);\n}\n.action-card__header {\n font-weight: 600;\n font-size: 0.95rem;\n margin-bottom: var(--space-xs);\n color: var(--color-text);\n}\n.action-card__desc {\n font-size: 0.8rem;\n color: var(--color-text-muted);\n margin-bottom: var(--space-sm);\n line-height: 1.4;\n}\n.action-card__body {\n display: flex;\n flex-direction: column;\n gap: var(--space-sm);\n margin-top: auto;\n}\n.action-card__buttons {\n display: flex;\n gap: var(--space-xs);\n}\n.action-card__buttons .btn {\n flex: 1;\n}\n.action-link {\n color: var(--color-primary);\n text-decoration: none;\n}\n.action-link:hover {\n text-decoration: underline;\n}\n\n\/* Form Elements in Cards *\/\n.form-row {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n.form-label {\n font-size: 0.75rem;\n font-weight: 500;\n color: var(--color-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n.form-select {\n padding: 0.5rem 0.75rem;\n font-size: 0.85rem;\n border: 1px solid var(--color-border);\n border-radius: 4px;\n background: var(--color-bg);\n color: var(--color-text);\n width: 100%;\n}\n.btn--full {\n width: 100%;\n justify-content: center;\n}\n\n\/* Button Loading Animation *\/\n.generate-btn .btn-text,\n.critique-btn .btn-text,\n.revise-btn .btn-text { display: inline; }\n.generate-btn .btn-loading,\n.critique-btn .btn-loading,\n.revise-btn .btn-loading { display: none; gap: 3px; justify-content: center; align-items: center; }\n.generate-btn.is-loading .btn-text,\n.critique-btn.is-loading .btn-text,\n.revise-btn.is-loading .btn-text { display: none; }\n.generate-btn.is-loading .btn-loading,\n.critique-btn.is-loading .btn-loading,\n.revise-btn.is-loading .btn-loading { display: inline-flex; }\n.generate-btn .btn-loading span,\n.critique-btn .btn-loading span,\n.revise-btn .btn-loading span {\n width: 6px; height: 6px;\n background: currentColor;\n border-radius: 50%;\n animation: btn-bounce 1.4s infinite ease-in-out both;\n}\n.generate-btn .btn-loading span:nth-child(1),\n.critique-btn .btn-loading span:nth-child(1),\n.revise-btn .btn-loading span:nth-child(1) { animation-delay: -0.32s; }\n.generate-btn .btn-loading span:nth-child(2),\n.critique-btn .btn-loading span:nth-child(2),\n.revise-btn .btn-loading span:nth-child(2) { animation-delay: -0.16s; }\n.generate-btn .btn-loading span:nth-child(3),\n.critique-btn .btn-loading span:nth-child(3),\n.revise-btn .btn-loading span:nth-child(3) { animation-delay: 0s; }\n@keyframes btn-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; }\n 40% { transform: scale(1); opacity: 1; }\n}\n\n\/* Loading Box *\/\n.loading-box {\n background: var(--color-bg-muted);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-lg);\n text-align: center;\n margin: var(--space-md) 0;\n}\n.loading-spinner {\n display: inline-flex;\n gap: 4px;\n margin-bottom: var(--space-sm);\n}\n.loading-spinner span {\n width: 10px; height: 10px;\n background: var(--color-primary);\n border-radius: 50%;\n animation: btn-bounce 1.4s infinite ease-in-out both;\n}\n.loading-spinner span:nth-child(1) { animation-delay: -0.32s; }\n.loading-spinner span:nth-child(2) { animation-delay: -0.16s; }\n.loading-spinner span:nth-child(3) { animation-delay: 0s; }\n.loading-info {\n font-size: 0.85rem;\n color: var(--color-text-muted);\n margin-top: var(--space-xs);\n}\n\n\/* =================================================================\n Content Studio - Critiquing Progress\n ================================================================= *\/\n.critiquing-container {\n background: var(--color-bg-muted);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-md);\n margin: var(--space-md) 0;\n}\n.critiquing-header {\n display: flex;\n align-items: center;\n gap: var(--space-sm);\n margin-bottom: var(--space-md);\n}\n.critiquing-spinner {\n display: inline-flex;\n gap: 4px;\n}\n.critiquing-dot {\n width: 8px;\n height: 8px;\n background: var(--color-primary);\n border-radius: 50%;\n animation: critiquing-bounce 1.4s infinite ease-in-out both;\n}\n.critiquing-dot:nth-child(1) { animation-delay: -0.32s; }\n.critiquing-dot:nth-child(2) { animation-delay: -0.16s; }\n.critiquing-dot:nth-child(3) { animation-delay: 0s; }\n@keyframes critiquing-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; }\n 40% { transform: scale(1); opacity: 1; }\n}\n.critiquing-status {\n font-weight: 500;\n color: var(--color-text);\n}\n.critiquing-info {\n font-size: 0.9rem;\n color: var(--color-text-muted);\n}\n.critiquing-info ul {\n margin: var(--space-sm) 0;\n padding-left: var(--space-md);\n}\n.critiquing-info li {\n margin-bottom: 4px;\n}\n.critiquing-note {\n font-size: 0.8rem;\n font-style: italic;\n margin-top: var(--space-sm);\n}\n\n\/* =================================================================\n Content Studio - Critique Results\n ================================================================= *\/\n.critique-results {\n margin: var(--space-md) 0;\n}\n.critique-summary-box {\n padding: var(--space-md);\n border-radius: 8px;\n margin-bottom: var(--space-md);\n}\n.critique-summary-box--success {\n background: #d4edda;\n border: 1px solid #28a745;\n color: #155724;\n}\n.critique-summary-box--warning {\n background: #fff3cd;\n border: 1px solid #ffc107;\n color: #856404;\n}\n.critique-summary-title {\n font-size: 1.1rem;\n font-weight: 600;\n margin-bottom: var(--space-xs);\n}\n.critique-summary-stats {\n font-size: 0.9rem;\n margin-bottom: var(--space-sm);\n}\n.critique-summary-action {\n font-size: 0.85rem;\n opacity: 0.9;\n}\n.critique-details {\n background: var(--color-bg-muted);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-md);\n}\n.critique-details-title {\n font-weight: 600;\n margin-bottom: var(--space-sm);\n color: var(--color-text-muted);\n font-size: 0.85rem;\n text-transform: uppercase;\n}\n.critique-item {\n background: var(--color-bg);\n border: 1px solid var(--color-border);\n border-radius: 6px;\n padding: var(--space-sm);\n margin-bottom: var(--space-sm);\n}\n.critique-item:last-child {\n margin-bottom: 0;\n}\n.critique-item.passed {\n border-left: 3px solid #28a745;\n}\n.critique-item.failed {\n border-left: 3px solid #dc3545;\n}\n.critique-item-header {\n display: flex;\n align-items: center;\n gap: var(--space-sm);\n margin-bottom: var(--space-xs);\n}\n.critique-icon {\n font-size: 1rem;\n}\n.critique-item.passed .critique-icon { color: #28a745; }\n.critique-item.failed .critique-icon { color: #dc3545; }\n.critique-name {\n font-weight: 600;\n flex: 1;\n}\n.critique-rating-badge {\n background: var(--color-bg-muted);\n padding: 2px 8px;\n border-radius: 12px;\n font-size: 0.8rem;\n font-weight: 500;\n}\n.critique-text {\n font-size: 0.9rem;\n color: var(--color-text);\n line-height: 1.5;\n margin-bottom: var(--space-xs);\n}\n.critique-issues, .critique-suggestions {\n font-size: 0.85rem;\n margin-top: var(--space-xs);\n}\n.critique-issues ul, .critique-suggestions ul {\n margin: var(--space-xs) 0 0 var(--space-md);\n padding: 0;\n}\n.critique-issues li, .critique-suggestions li {\n margin-bottom: 4px;\n}"
}
}
Response
{
"tool_response": {
"filePath": "\/var\/www\/dev.campus.systemische-tools.de\/public\/css\/style.css",
"oldString": ".doc-children { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #eee; }\n.doc-children ul { list-style: disc; padding-left: 1.5rem; }\n.doc-children li { margin: 0.5rem 0; }",
"newString": ".doc-children { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #eee; }\n.doc-children ul { list-style: disc; padding-left: 1.5rem; }\n.doc-children li { margin: 0.5rem 0; }\n\n\/* =================================================================\n Content Studio - Show Page\n ================================================================= *\/\n.info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--space-md); margin-bottom: var(--space-lg); }\n.info-card { background: var(--color-bg); border: 1px solid var(--color-border); border-radius: 8px; padding: var(--space-md); }\n.info-card h3 { margin: 0 0 var(--space-sm) 0; font-size: 0.9rem; color: var(--color-text-muted); text-transform: uppercase; letter-spacing: 0.5px; }\n.info-list { display: grid; grid-template-columns: auto 1fr; gap: var(--space-xs) var(--space-sm); margin: 0; }\n.info-list dt { color: var(--color-text-muted); font-size: 0.85rem; }\n.info-list dd { margin: 0; font-weight: 500; }\n.briefing-box { background: var(--color-bg-muted); border-radius: 8px; padding: var(--space-md); margin-bottom: var(--space-lg); line-height: 1.6; }\n\n\/* Action Cards - Vertical Stack *\/\n.action-cards {\n display: flex;\n flex-direction: column;\n gap: var(--space-md);\n margin-bottom: var(--space-lg);\n max-width: 500px;\n}\n.action-card {\n background: var(--color-bg);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-md);\n display: flex;\n flex-direction: column;\n}\n.action-card--primary {\n border-color: var(--color-primary);\n box-shadow: 0 0 0 1px var(--color-primary);\n}\n.action-card__header {\n font-weight: 600;\n font-size: 0.95rem;\n margin-bottom: var(--space-xs);\n color: var(--color-text);\n}\n.action-card__desc {\n font-size: 0.8rem;\n color: var(--color-text-muted);\n margin-bottom: var(--space-sm);\n line-height: 1.4;\n}\n.action-card__body {\n display: flex;\n flex-direction: column;\n gap: var(--space-sm);\n margin-top: auto;\n}\n.action-card__buttons {\n display: flex;\n gap: var(--space-xs);\n}\n.action-card__buttons .btn {\n flex: 1;\n}\n.action-link {\n color: var(--color-primary);\n text-decoration: none;\n}\n.action-link:hover {\n text-decoration: underline;\n}\n\n\/* Form Elements in Cards *\/\n.form-row {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n.form-label {\n font-size: 0.75rem;\n font-weight: 500;\n color: var(--color-text-muted);\n text-transform: uppercase;\n letter-spacing: 0.3px;\n}\n.form-select {\n padding: 0.5rem 0.75rem;\n font-size: 0.85rem;\n border: 1px solid var(--color-border);\n border-radius: 4px;\n background: var(--color-bg);\n color: var(--color-text);\n width: 100%;\n}\n.btn--full {\n width: 100%;\n justify-content: center;\n}\n\n\/* Button Loading Animation *\/\n.generate-btn .btn-text,\n.critique-btn .btn-text,\n.revise-btn .btn-text { display: inline; }\n.generate-btn .btn-loading,\n.critique-btn .btn-loading,\n.revise-btn .btn-loading { display: none; gap: 3px; justify-content: center; align-items: center; }\n.generate-btn.is-loading .btn-text,\n.critique-btn.is-loading .btn-text,\n.revise-btn.is-loading .btn-text { display: none; }\n.generate-btn.is-loading .btn-loading,\n.critique-btn.is-loading .btn-loading,\n.revise-btn.is-loading .btn-loading { display: inline-flex; }\n.generate-btn .btn-loading span,\n.critique-btn .btn-loading span,\n.revise-btn .btn-loading span {\n width: 6px; height: 6px;\n background: currentColor;\n border-radius: 50%;\n animation: btn-bounce 1.4s infinite ease-in-out both;\n}\n.generate-btn .btn-loading span:nth-child(1),\n.critique-btn .btn-loading span:nth-child(1),\n.revise-btn .btn-loading span:nth-child(1) { animation-delay: -0.32s; }\n.generate-btn .btn-loading span:nth-child(2),\n.critique-btn .btn-loading span:nth-child(2),\n.revise-btn .btn-loading span:nth-child(2) { animation-delay: -0.16s; }\n.generate-btn .btn-loading span:nth-child(3),\n.critique-btn .btn-loading span:nth-child(3),\n.revise-btn .btn-loading span:nth-child(3) { animation-delay: 0s; }\n@keyframes btn-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; }\n 40% { transform: scale(1); opacity: 1; }\n}\n\n\/* Loading Box *\/\n.loading-box {\n background: var(--color-bg-muted);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-lg);\n text-align: center;\n margin: var(--space-md) 0;\n}\n.loading-spinner {\n display: inline-flex;\n gap: 4px;\n margin-bottom: var(--space-sm);\n}\n.loading-spinner span {\n width: 10px; height: 10px;\n background: var(--color-primary);\n border-radius: 50%;\n animation: btn-bounce 1.4s infinite ease-in-out both;\n}\n.loading-spinner span:nth-child(1) { animation-delay: -0.32s; }\n.loading-spinner span:nth-child(2) { animation-delay: -0.16s; }\n.loading-spinner span:nth-child(3) { animation-delay: 0s; }\n.loading-info {\n font-size: 0.85rem;\n color: var(--color-text-muted);\n margin-top: var(--space-xs);\n}\n\n\/* =================================================================\n Content Studio - Critiquing Progress\n ================================================================= *\/\n.critiquing-container {\n background: var(--color-bg-muted);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-md);\n margin: var(--space-md) 0;\n}\n.critiquing-header {\n display: flex;\n align-items: center;\n gap: var(--space-sm);\n margin-bottom: var(--space-md);\n}\n.critiquing-spinner {\n display: inline-flex;\n gap: 4px;\n}\n.critiquing-dot {\n width: 8px;\n height: 8px;\n background: var(--color-primary);\n border-radius: 50%;\n animation: critiquing-bounce 1.4s infinite ease-in-out both;\n}\n.critiquing-dot:nth-child(1) { animation-delay: -0.32s; }\n.critiquing-dot:nth-child(2) { animation-delay: -0.16s; }\n.critiquing-dot:nth-child(3) { animation-delay: 0s; }\n@keyframes critiquing-bounce {\n 0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; }\n 40% { transform: scale(1); opacity: 1; }\n}\n.critiquing-status {\n font-weight: 500;\n color: var(--color-text);\n}\n.critiquing-info {\n font-size: 0.9rem;\n color: var(--color-text-muted);\n}\n.critiquing-info ul {\n margin: var(--space-sm) 0;\n padding-left: var(--space-md);\n}\n.critiquing-info li {\n margin-bottom: 4px;\n}\n.critiquing-note {\n font-size: 0.8rem;\n font-style: italic;\n margin-top: var(--space-sm);\n}\n\n\/* =================================================================\n Content Studio - Critique Results\n ================================================================= *\/\n.critique-results {\n margin: var(--space-md) 0;\n}\n.critique-summary-box {\n padding: var(--space-md);\n border-radius: 8px;\n margin-bottom: var(--space-md);\n}\n.critique-summary-box--success {\n background: #d4edda;\n border: 1px solid #28a745;\n color: #155724;\n}\n.critique-summary-box--warning {\n background: #fff3cd;\n border: 1px solid #ffc107;\n color: #856404;\n}\n.critique-summary-title {\n font-size: 1.1rem;\n font-weight: 600;\n margin-bottom: var(--space-xs);\n}\n.critique-summary-stats {\n font-size: 0.9rem;\n margin-bottom: var(--space-sm);\n}\n.critique-summary-action {\n font-size: 0.85rem;\n opacity: 0.9;\n}\n.critique-details {\n background: var(--color-bg-muted);\n border: 1px solid var(--color-border);\n border-radius: 8px;\n padding: var(--space-md);\n}\n.critique-details-title {\n font-weight: 600;\n margin-bottom: var(--space-sm);\n color: var(--color-text-muted);\n font-size: 0.85rem;\n text-transform: uppercase;\n}\n.critique-item {\n background: var(--color-bg);\n border: 1px solid var(--color-border);\n border-radius: 6px;\n padding: var(--space-sm);\n margin-bottom: var(--space-sm);\n}\n.critique-item:last-child {\n margin-bottom: 0;\n}\n.critique-item.passed {\n border-left: 3px solid #28a745;\n}\n.critique-item.failed {\n border-left: 3px solid #dc3545;\n}\n.critique-item-header {\n display: flex;\n align-items: center;\n gap: var(--space-sm);\n margin-bottom: var(--space-xs);\n}\n.critique-icon {\n font-size: 1rem;\n}\n.critique-item.passed .critique-icon { color: #28a745; }\n.critique-item.failed .critique-icon { color: #dc3545; }\n.critique-name {\n font-weight: 600;\n flex: 1;\n}\n.critique-rating-badge {\n background: var(--color-bg-muted);\n padding: 2px 8px;\n border-radius: 12px;\n font-size: 0.8rem;\n font-weight: 500;\n}\n.critique-text {\n font-size: 0.9rem;\n color: var(--color-text);\n line-height: 1.5;\n margin-bottom: var(--space-xs);\n}\n.critique-issues, .critique-suggestions {\n font-size: 0.85rem;\n margin-top: var(--space-xs);\n}\n.critique-issues ul, .critique-suggestions ul {\n margin: var(--space-xs) 0 0 var(--space-md);\n padding: 0;\n}\n.critique-issues li, .critique-suggestions li {\n margin-bottom: 4px;\n}",
"originalFile": "* { margin: 0; padding: 0; box-sizing: border-box; }\nbody { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; line-height: 1.6; color: #333; }\nheader { background: #2c3e50; padding: 0; }\n\nmain { max-width: 1000px; margin: 0 auto; padding: 2rem; }\nfooter { background: #f4f4f4; padding: 1rem; text-align: center; margin-top: 2rem; }\n\nh1 { margin-bottom: 1rem; color: #2c3e50; }\nh2 { margin: 2rem 0 1rem; color: #34495e; border-bottom: 1px solid #eee; padding-bottom: 0.5rem; }\n\nsection { margin-bottom: 2rem; }\nul { padding-left: 1.5rem; margin: 0.5rem 0; }\nli { margin: 0.3rem 0; }\na { color: #3498db; }\n\ntable { width: 100%; border-collapse: collapse; margin: 1rem 0; }\nth, td { padding: 0.75rem; text-align: left; border-bottom: 1px solid #ddd; }\nth { background: #f8f9fa; font-weight: 600; }\n\npre { background: #2d2d2d; color: #f8f8f2; padding: 1rem; border-radius: 5px; overflow-x: auto; margin: 1rem 0; }\ncode { font-family: 'SF Mono', Monaco, monospace; font-size: 0.9em; }\np code { background: #f4f4f4; padding: 0.2rem 0.4rem; border-radius: 3px; }\n\n.breadcrumb { margin-bottom: 1.5rem; color: #666; }\n.breadcrumb a { color: #666; }\n\n.docs-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1.5rem; margin-top: 2rem; }\n.docs-card { display: block; padding: 1.5rem; background: #f8f9fa; border-radius: 8px; text-decoration: none; color: inherit; border: 1px solid #e9ecef; transition: box-shadow 0.2s; }\n.docs-card:hover { box-shadow: 0 4px 12px rgba(0,0,0,0.1); }\n.docs-card h2 { margin: 0 0 0.5rem; color: #2c3e50; }\n.docs-card p { color: #666; margin: 0; }\n\n.docs-toc { list-style: decimal; padding-left: 0; margin: 1.5rem 0; }\n.docs-toc-level-1 { counter-reset: section; }\n.docs-toc-level-1 > li { margin-bottom: 1.25rem; font-size: 1.1rem; font-weight: 600; }\n.docs-toc-level-1 > li > a { color: #2c3e50; }\n.docs-toc-level-2 { margin-top: 0.5rem; padding-left: 1.5rem; font-weight: normal; font-size: 1rem; }\n.docs-toc-level-2 > li { margin-bottom: 0.25rem; }\n.docs-toc-level-3 { margin-top: 0.25rem; padding-left: 1.5rem; font-size: 0.95rem; color: #666; }\n.docs-toc a { text-decoration: none; }\n.docs-toc a:hover { text-decoration: underline; }\n\n.doc-children { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #eee; }\n.doc-children ul { list-style: disc; padding-left: 1.5rem; }\n.doc-children li { margin: 0.5rem 0; }\n",
"structuredPatch": [
{
"oldStart": 43,
"oldLines": 3,
"newStart": 43,
"newLines": 316,
"lines": [
" .doc-children { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid #eee; }",
" .doc-children ul { list-style: disc; padding-left: 1.5rem; }",
" .doc-children li { margin: 0.5rem 0; }",
"+",
"+\/* =================================================================",
"+ Content Studio - Show Page",
"+ ================================================================= *\/",
"+.info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--space-md); margin-bottom: var(--space-lg); }",
"+.info-card { background: var(--color-bg); border: 1px solid var(--color-border); border-radius: 8px; padding: var(--space-md); }",
"+.info-card h3 { margin: 0 0 var(--space-sm) 0; font-size: 0.9rem; color: var(--color-text-muted); text-transform: uppercase; letter-spacing: 0.5px; }",
"+.info-list { display: grid; grid-template-columns: auto 1fr; gap: var(--space-xs) var(--space-sm); margin: 0; }",
"+.info-list dt { color: var(--color-text-muted); font-size: 0.85rem; }",
"+.info-list dd { margin: 0; font-weight: 500; }",
"+.briefing-box { background: var(--color-bg-muted); border-radius: 8px; padding: var(--space-md); margin-bottom: var(--space-lg); line-height: 1.6; }",
"+",
"+\/* Action Cards - Vertical Stack *\/",
"+.action-cards {",
"+ display: flex;",
"+ flex-direction: column;",
"+ gap: var(--space-md);",
"+ margin-bottom: var(--space-lg);",
"+ max-width: 500px;",
"+}",
"+.action-card {",
"+ background: var(--color-bg);",
"+ border: 1px solid var(--color-border);",
"+ border-radius: 8px;",
"+ padding: var(--space-md);",
"+ display: flex;",
"+ flex-direction: column;",
"+}",
"+.action-card--primary {",
"+ border-color: var(--color-primary);",
"+ box-shadow: 0 0 0 1px var(--color-primary);",
"+}",
"+.action-card__header {",
"+ font-weight: 600;",
"+ font-size: 0.95rem;",
"+ margin-bottom: var(--space-xs);",
"+ color: var(--color-text);",
"+}",
"+.action-card__desc {",
"+ font-size: 0.8rem;",
"+ color: var(--color-text-muted);",
"+ margin-bottom: var(--space-sm);",
"+ line-height: 1.4;",
"+}",
"+.action-card__body {",
"+ display: flex;",
"+ flex-direction: column;",
"+ gap: var(--space-sm);",
"+ margin-top: auto;",
"+}",
"+.action-card__buttons {",
"+ display: flex;",
"+ gap: var(--space-xs);",
"+}",
"+.action-card__buttons .btn {",
"+ flex: 1;",
"+}",
"+.action-link {",
"+ color: var(--color-primary);",
"+ text-decoration: none;",
"+}",
"+.action-link:hover {",
"+ text-decoration: underline;",
"+}",
"+",
"+\/* Form Elements in Cards *\/",
"+.form-row {",
"+ display: flex;",
"+ flex-direction: column;",
"+ gap: 4px;",
"+}",
"+.form-label {",
"+ font-size: 0.75rem;",
"+ font-weight: 500;",
"+ color: var(--color-text-muted);",
"+ text-transform: uppercase;",
"+ letter-spacing: 0.3px;",
"+}",
"+.form-select {",
"+ padding: 0.5rem 0.75rem;",
"+ font-size: 0.85rem;",
"+ border: 1px solid var(--color-border);",
"+ border-radius: 4px;",
"+ background: var(--color-bg);",
"+ color: var(--color-text);",
"+ width: 100%;",
"+}",
"+.btn--full {",
"+ width: 100%;",
"+ justify-content: center;",
"+}",
"+",
"+\/* Button Loading Animation *\/",
"+.generate-btn .btn-text,",
"+.critique-btn .btn-text,",
"+.revise-btn .btn-text { display: inline; }",
"+.generate-btn .btn-loading,",
"+.critique-btn .btn-loading,",
"+.revise-btn .btn-loading { display: none; gap: 3px; justify-content: center; align-items: center; }",
"+.generate-btn.is-loading .btn-text,",
"+.critique-btn.is-loading .btn-text,",
"+.revise-btn.is-loading .btn-text { display: none; }",
"+.generate-btn.is-loading .btn-loading,",
"+.critique-btn.is-loading .btn-loading,",
"+.revise-btn.is-loading .btn-loading { display: inline-flex; }",
"+.generate-btn .btn-loading span,",
"+.critique-btn .btn-loading span,",
"+.revise-btn .btn-loading span {",
"+ width: 6px; height: 6px;",
"+ background: currentColor;",
"+ border-radius: 50%;",
"+ animation: btn-bounce 1.4s infinite ease-in-out both;",
"+}",
"+.generate-btn .btn-loading span:nth-child(1),",
"+.critique-btn .btn-loading span:nth-child(1),",
"+.revise-btn .btn-loading span:nth-child(1) { animation-delay: -0.32s; }",
"+.generate-btn .btn-loading span:nth-child(2),",
"+.critique-btn .btn-loading span:nth-child(2),",
"+.revise-btn .btn-loading span:nth-child(2) { animation-delay: -0.16s; }",
"+.generate-btn .btn-loading span:nth-child(3),",
"+.critique-btn .btn-loading span:nth-child(3),",
"+.revise-btn .btn-loading span:nth-child(3) { animation-delay: 0s; }",
"+@keyframes btn-bounce {",
"+ 0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; }",
"+ 40% { transform: scale(1); opacity: 1; }",
"+}",
"+",
"+\/* Loading Box *\/",
"+.loading-box {",
"+ background: var(--color-bg-muted);",
"+ border: 1px solid var(--color-border);",
"+ border-radius: 8px;",
"+ padding: var(--space-lg);",
"+ text-align: center;",
"+ margin: var(--space-md) 0;",
"+}",
"+.loading-spinner {",
"+ display: inline-flex;",
"+ gap: 4px;",
"+ margin-bottom: var(--space-sm);",
"+}",
"+.loading-spinner span {",
"+ width: 10px; height: 10px;",
"+ background: var(--color-primary);",
"+ border-radius: 50%;",
"+ animation: btn-bounce 1.4s infinite ease-in-out both;",
"+}",
"+.loading-spinner span:nth-child(1) { animation-delay: -0.32s; }",
"+.loading-spinner span:nth-child(2) { animation-delay: -0.16s; }",
"+.loading-spinner span:nth-child(3) { animation-delay: 0s; }",
"+.loading-info {",
"+ font-size: 0.85rem;",
"+ color: var(--color-text-muted);",
"+ margin-top: var(--space-xs);",
"+}",
"+",
"+\/* =================================================================",
"+ Content Studio - Critiquing Progress",
"+ ================================================================= *\/",
"+.critiquing-container {",
"+ background: var(--color-bg-muted);",
"+ border: 1px solid var(--color-border);",
"+ border-radius: 8px;",
"+ padding: var(--space-md);",
"+ margin: var(--space-md) 0;",
"+}",
"+.critiquing-header {",
"+ display: flex;",
"+ align-items: center;",
"+ gap: var(--space-sm);",
"+ margin-bottom: var(--space-md);",
"+}",
"+.critiquing-spinner {",
"+ display: inline-flex;",
"+ gap: 4px;",
"+}",
"+.critiquing-dot {",
"+ width: 8px;",
"+ height: 8px;",
"+ background: var(--color-primary);",
"+ border-radius: 50%;",
"+ animation: critiquing-bounce 1.4s infinite ease-in-out both;",
"+}",
"+.critiquing-dot:nth-child(1) { animation-delay: -0.32s; }",
"+.critiquing-dot:nth-child(2) { animation-delay: -0.16s; }",
"+.critiquing-dot:nth-child(3) { animation-delay: 0s; }",
"+@keyframes critiquing-bounce {",
"+ 0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; }",
"+ 40% { transform: scale(1); opacity: 1; }",
"+}",
"+.critiquing-status {",
"+ font-weight: 500;",
"+ color: var(--color-text);",
"+}",
"+.critiquing-info {",
"+ font-size: 0.9rem;",
"+ color: var(--color-text-muted);",
"+}",
"+.critiquing-info ul {",
"+ margin: var(--space-sm) 0;",
"+ padding-left: var(--space-md);",
"+}",
"+.critiquing-info li {",
"+ margin-bottom: 4px;",
"+}",
"+.critiquing-note {",
"+ font-size: 0.8rem;",
"+ font-style: italic;",
"+ margin-top: var(--space-sm);",
"+}",
"+",
"+\/* =================================================================",
"+ Content Studio - Critique Results",
"+ ================================================================= *\/",
"+.critique-results {",
"+ margin: var(--space-md) 0;",
"+}",
"+.critique-summary-box {",
"+ padding: var(--space-md);",
"+ border-radius: 8px;",
"+ margin-bottom: var(--space-md);",
"+}",
"+.critique-summary-box--success {",
"+ background: #d4edda;",
"+ border: 1px solid #28a745;",
"+ color: #155724;",
"+}",
"+.critique-summary-box--warning {",
"+ background: #fff3cd;",
"+ border: 1px solid #ffc107;",
"+ color: #856404;",
"+}",
"+.critique-summary-title {",
"+ font-size: 1.1rem;",
"+ font-weight: 600;",
"+ margin-bottom: var(--space-xs);",
"+}",
"+.critique-summary-stats {",
"+ font-size: 0.9rem;",
"+ margin-bottom: var(--space-sm);",
"+}",
"+.critique-summary-action {",
"+ font-size: 0.85rem;",
"+ opacity: 0.9;",
"+}",
"+.critique-details {",
"+ background: var(--color-bg-muted);",
"+ border: 1px solid var(--color-border);",
"+ border-radius: 8px;",
"+ padding: var(--space-md);",
"+}",
"+.critique-details-title {",
"+ font-weight: 600;",
"+ margin-bottom: var(--space-sm);",
"+ color: var(--color-text-muted);",
"+ font-size: 0.85rem;",
"+ text-transform: uppercase;",
"+}",
"+.critique-item {",
"+ background: var(--color-bg);",
"+ border: 1px solid var(--color-border);",
"+ border-radius: 6px;",
"+ padding: var(--space-sm);",
"+ margin-bottom: var(--space-sm);",
"+}",
"+.critique-item:last-child {",
"+ margin-bottom: 0;",
"+}",
"+.critique-item.passed {",
"+ border-left: 3px solid #28a745;",
"+}",
"+.critique-item.failed {",
"+ border-left: 3px solid #dc3545;",
"+}",
"+.critique-item-header {",
"+ display: flex;",
"+ align-items: center;",
"+ gap: var(--space-sm);",
"+ margin-bottom: var(--space-xs);",
"+}",
"+.critique-icon {",
"+ font-size: 1rem;",
"+}",
"+.critique-item.passed .critique-icon { color: #28a745; }",
"+.critique-item.failed .critique-icon { color: #dc3545; }",
"+.critique-name {",
"+ font-weight: 600;",
"+ flex: 1;",
"+}",
"+.critique-rating-badge {",
"+ background: var(--color-bg-muted);",
"+ padding: 2px 8px;",
"+ border-radius: 12px;",
"+ font-size: 0.8rem;",
"+ font-weight: 500;",
"+}",
"+.critique-text {",
"+ font-size: 0.9rem;",
"+ color: var(--color-text);",
"+ line-height: 1.5;",
"+ margin-bottom: var(--space-xs);",
"+}",
"+.critique-issues, .critique-suggestions {",
"+ font-size: 0.85rem;",
"+ margin-top: var(--space-xs);",
"+}",
"+.critique-issues ul, .critique-suggestions ul {",
"+ margin: var(--space-xs) 0 0 var(--space-md);",
"+ padding: 0;",
"+}",
"+.critique-issues li, .critique-suggestions li {",
"+ margin-bottom: 4px;",
"+}"
]
}
],
"userModified": false,
"replaceAll": false
}
}