Safety Through Structure, Not Aspiration | Built with Claude Code
diff --git a/public/faq.html b/public/faq.html
index 96bbfc8c..1fd6024b 100644
--- a/public/faq.html
+++ b/public/faq.html
@@ -41,7 +41,7 @@
a:focus:not(:focus-visible) { outline: none; }
a:focus-visible { outline: 3px solid #3b82f6; outline-offset: 2px; }
- /* FAQ expandable sections */
+ /* FAQ expandable sections (modal) */
.faq-item { transition: all 0.2s ease; }
.faq-question { cursor: pointer; user-select: none; }
.faq-answer {
@@ -56,6 +56,85 @@
}
.faq-item.open .faq-arrow { transform: rotate(180deg); }
+ /* Inline FAQ expandable sections (main page) */
+ .inline-faq-item { transition: all 0.2s ease; }
+ .inline-faq-question { cursor: pointer; user-select: none; }
+ .inline-faq-answer {
+ max-height: 0;
+ overflow: hidden;
+ transition: max-height 0.3s ease-out;
+ }
+ .inline-faq-item.open .inline-faq-answer { max-height: none; }
+ .inline-faq-item.open .faq-arrow { transform: rotate(180deg); }
+
+ /* Inline FAQ Answer Prose Styling */
+ .inline-faq-answer-content {
+ line-height: 1.75;
+ color: #374151;
+ }
+ .inline-faq-answer-content h1, .inline-faq-answer-content h2, .inline-faq-answer-content h3 {
+ font-weight: 700;
+ color: #111827;
+ margin-top: 2em;
+ margin-bottom: 1em;
+ line-height: 1.3;
+ }
+ .inline-faq-answer-content h1 { font-size: 1.875rem; }
+ .inline-faq-answer-content h2 { font-size: 1.5rem; }
+ .inline-faq-answer-content h3 { font-size: 1.25rem; }
+ .inline-faq-answer-content p { margin-bottom: 1.25em; }
+ .inline-faq-answer-content strong { font-weight: 700; color: #111827; }
+ .inline-faq-answer-content ul, .inline-faq-answer-content ol {
+ margin: 1.25em 0;
+ padding-left: 1.75em;
+ list-style-position: outside;
+ }
+ .inline-faq-answer-content ul { list-style-type: disc; }
+ .inline-faq-answer-content ol { list-style-type: decimal; }
+ .inline-faq-answer-content li { margin-bottom: 0.5em; padding-left: 0.375em; }
+ .inline-faq-answer-content li::marker { color: #3b82f6; font-weight: 600; }
+ .inline-faq-answer-content a {
+ color: #2563eb;
+ text-decoration: underline;
+ font-weight: 500;
+ transition: color 0.2s;
+ }
+ .inline-faq-answer-content a:hover { color: #1d4ed8; }
+ .inline-faq-answer-content code {
+ background-color: #f3f4f6;
+ padding: 0.125rem 0.375rem;
+ border-radius: 0.25rem;
+ font-size: 0.875em;
+ font-family: 'Monaco', 'Courier New', monospace;
+ color: #dc2626;
+ font-weight: 600;
+ }
+ .inline-faq-answer-content pre {
+ background-color: #1e293b;
+ border-radius: 0.5rem;
+ padding: 1.25rem;
+ margin: 1.5em 0;
+ overflow-x: auto;
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
+ }
+ .inline-faq-answer-content pre code {
+ background: none;
+ padding: 0;
+ border-radius: 0;
+ color: #e2e8f0;
+ font-size: 0.875rem;
+ font-weight: normal;
+ line-height: 1.6;
+ display: block;
+ }
+ .inline-faq-answer-content blockquote {
+ border-left: 4px solid #3b82f6;
+ padding-left: 1rem;
+ margin: 1.5em 0;
+ font-style: italic;
+ color: #6b7280;
+ }
+
/* Search highlighting */
.highlight { background-color: #fef08a; padding: 0 2px; }
@@ -186,6 +265,31 @@
list-style: none;
margin-left: -1.75em;
}
+
+ /* Modal styles */
+ #search-modal, #search-tips-modal {
+ display: none;
+ }
+
+ #search-modal.show, #search-tips-modal.show {
+ display: flex !important;
+ }
+
+ /* Smooth modal animations */
+ #search-modal > div, #search-tips-modal > div {
+ animation: slideUp 0.3s ease-out;
+ }
+
+ @keyframes slideUp {
+ from {
+ transform: translateY(20px);
+ opacity: 0;
+ }
+ to {
+ transform: translateY(0);
+ opacity: 1;
+ }
+ }
@@ -201,93 +305,103 @@
Frequently Asked Questions
-
+
Common questions about Tractatus framework implementation, performance, and architecture
-
-
-