TheGreatUnknown's picture
Create styles.css
006e303 verified
/* Base Styles */
:root {
--primary: #6200ea;
--primary-dark: #3700b3;
--primary-light: #bb86fc;
--secondary: #03dac6;
--secondary-dark: #018786;
--background: #121212;
--surface: #1e1e1e;
--error: #cf6679;
--on-primary: #ffffff;
--on-secondary: #000000;
--on-background: #ffffff;
--on-surface: #ffffff;
--on-error: #000000;
--grid-color: rgba(100, 100, 255, 0.2);
--user-colors: #ff9800, #4caf50, #2196f3, #e91e63, #9c27b0, #00bcd4;
--notification-bg: rgba(0, 0, 0, 0.8);
--notification-text: white;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
color: var(--on-background);
background-color: var(--background);
line-height: 1.6;
overflow-x: hidden;
}
.container {
max-width: 100%;
margin: 0 auto;
padding: 1rem;
}
header {
text-align: center;
margin-bottom: 2rem;
padding: 1rem;
background: linear-gradient(135deg, var(--primary-dark), var(--primary));
border-radius: 8px;
}
h1 {
font-size: 2.5rem;
margin-bottom: 0.5rem;
background: linear-gradient(90deg, var(--secondary), var(--primary-light));
-webkit-background-clip: text;
background-clip: text;
color: transparent;
text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}
h2 {
font-size: 1.2rem;
color: var(--secondary);
font-weight: 400;
}
h3 {
font-size: 1.1rem;
margin-bottom: 0.8rem;
color: var(--primary-light);
border-bottom: 1px solid var(--primary);
padding-bottom: 0.3rem;
}
/* Visualization Section */
.visualization-container {
background-color: var(--surface);
border-radius: 8px;
overflow: hidden;
margin-bottom: 2rem;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}
#visualization {
height: 300px;
width: 100%;
background-color: rgba(0, 0, 0, 0.3);
position: relative;
overflow: hidden;
}
.visual-grid {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-size: 40px 40px;
background-image:
linear-gradient(to right, var(--grid-color) 1px, transparent 1px),
linear-gradient(to bottom, var(--grid-color) 1px, transparent 1px);
transform-origin: center;
transform: perspective(500px) rotateX(60deg) scale(1.5);
}
/* Control Panel */
.controls {
display: flex;
flex-wrap: wrap;
gap: 1rem;
padding: 1rem;
}
.control-panel, .info-panel {
flex: 1;
min-width: 250px;
background-color: rgba(0, 0, 0, 0.2);
padding: 1rem;
border-radius: 8px;
}
.control-group {
margin-bottom: 1.5rem;
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
}
button {
background-color: var(--primary);
color: var(--on-primary);
border: none;
padding: 0.5rem 1rem;
border-radius: 4px;
cursor: pointer;
transition: all 0.3s ease;
font-weight: 500;
}
button:hover {
background-color: var(--primary-dark);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}
.system-btn {
background-color: rgba(255, 255, 255, 0.1);
color: var(--on-background);
}
.system-btn.active {
background-color: var(--primary);
color: var(--on-primary);
box-shadow: 0 0 15px var(--primary-light);
}
.system-btn:hover {
background-color: rgba(255, 255, 255, 0.2);
}
.system-btn.active:hover {
background-color: var(--primary-dark);
}
#llmlBtn {
border-left: 3px solid #f06292;
}
#qgaBtn {
border-left: 3px solid #4fc3f7;
}
#holoBtn {
border-left: 3px solid #ffeb3b;
}
#integratedBtn {
border-left: 3px solid #66bb6a;
}
#evolveBtn {
background-color: var(--secondary);
color: var(--on-secondary);
width: 100%;
margin-bottom: 0.5rem;
}
#evolveBtn:hover {
background-color: var(--secondary-dark);
}
.slider-container {
display: flex;
align-items: center;
gap: 0.5rem;
margin-top: 0.5rem;
}
input[type="range"] {
flex: 1;
height: 0.5rem;
border-radius: 0.25rem;
background: rgba(255, 255, 255, 0.1);
outline: none;
}
.concept-input {
display: flex;
gap: 0.5rem;
}
#conceptInput {
flex: 1;
padding: 0.5rem;
border-radius: 4px;
border: none;
background-color: rgba(255, 255, 255, 0.1);
color: var(--on-surface);
}
#processBtn {
background-color: var(--secondary);
color: var(--on-secondary);
}
/* LLML Symbolic styles */
.symbolic-input {
display: flex;
flex-direction: column;
gap: 0.5rem;
}
#symbolSelector {
padding: 0.5rem;
border-radius: 4px;
border: none;
background-color: rgba(255, 255, 255, 0.1);
color: var(--on-surface);
font-family: 'Courier New', monospace;
}
.symbolic-node {
color: var(--primary-light);
font-weight: bold;
font-family: 'Courier New', monospace;
}
.operator-node {
color: var(--secondary);
font-weight: bold;
}
.quantum-node {
color: #f06292;
font-weight: bold;
}
.insight-level {
margin-top: 1rem;
padding: 0.5rem;
border-left: 3px solid var(--primary);
background-color: rgba(0, 0, 0, 0.2);
}
.insight-level h4 {
color: var(--primary-light);
margin-bottom: 0.5rem;
}
/* Triadic Architecture styles */
#sonwBtn {
border-left: 3px solid #f06292;
}
#afterthoughtBtn {
border-left: 3px solid #4fc3f7;
}
#cognitiveBtn {
border-left: 3px solid #ffeb3b;
}
#integratedBtn {
border-left: 3px solid #66bb6a;
}
/* Info Panel */
#statusDisplay {
background-color: rgba(0, 0, 0, 0.3);
padding: 0.5rem;
border-radius: 4px;
margin-bottom: 1rem;
font-family: monospace;
color: var(--secondary);
}
.metrics {
display: flex;
flex-direction: column;
gap: 0.8rem;
}
.metric {
display: flex;
flex-direction: column;
gap: 0.3rem;
}
.metric span {
font-size: 0.9rem;
}
.metric-bar {
height: 0.5rem;
background-color: rgba(255, 255, 255, 0.1);
border-radius: 2px;
overflow: hidden;
}
.bar-fill {
height: 100%;
border-radius: 2px;
transition: width 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
#symbolicBar {
background: linear-gradient(90deg, #f06292, #ff94c2);
}
#quantumBar {
background: linear-gradient(90deg, #4fc3f7, #8bf6ff);
}
#holoBar {
background: linear-gradient(90deg, #ffeb3b, #ffff72);
}
#metaBar {
background: linear-gradient(90deg, #66bb6a, #98ee99);
}
/* Output Section */
.output-container {
background-color: var(--surface);
border-radius: 8px;
padding: 1rem;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}
#output {
background-color: rgba(0, 0, 0, 0.2);
padding: 1rem;
border-radius: 4px;
min-height: 150px;
max-height: 300px;
overflow-y: auto;
font-family: 'Courier New', Courier, monospace;
line-height: 1.4;
}
#output .placeholder {
color: rgba(255, 255, 255, 0.5);
font-style: italic;
}
.concept-node {
color: var(--primary-light);
font-weight: bold;
}
.connection-node {
color: var(--secondary);
font-style: italic;
}
/* Animation Classes */
@keyframes pulse {
0% { opacity: 0.6; }
50% { opacity: 1; }
100% { opacity: 0.6; }
}
.pulsing {
animation: pulse 2s infinite;
}
@keyframes evolve {
0% { transform: scale(1); }
50% { transform: scale(1.05); }
100% { transform: scale(1); }
}
.evolving {
animation: evolve 1s ease-in-out;
}
@keyframes recursion {
0% { transform: scale(1) rotate(0deg); }
50% { transform: scale(1.05) rotate(180deg); }
100% { transform: scale(1) rotate(360deg); }
}
.recursing {
animation: recursion 3s infinite linear;
}
/* Collaborative Features */
.collaborative-controls {
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
margin-top: 0.5rem;
}
.collab-btn {
background-color: var(--secondary);
color: var(--on-secondary);
border: none;
padding: 0.5rem 1rem;
border-radius: 4px;
cursor: pointer;
transition: all 0.3s ease;
font-weight: 500;
flex: 1;
}
.collab-btn:hover {
background-color: var(--secondary-dark);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}
.user-presence {
margin-top: 0.5rem;
font-size: 0.9rem;
color: var(--secondary);
}
.researchers-list {
background-color: rgba(0, 0, 0, 0.2);
padding: 0.5rem;
border-radius: 4px;
max-height: 100px;
overflow-y: auto;
margin-bottom: 1rem;
font-size: 0.9rem;
}
.researcher {
display: flex;
align-items: center;
margin-bottom: 0.3rem;
}
.researcher-color {
width: 12px;
height: 12px;
border-radius: 50%;
margin-right: 0.5rem;
}
.researcher-name {
flex: 1;
}
.shared-analyses {
margin-top: 2rem;
}
.shared-list {
max-height: 200px;
overflow-y: auto;
background-color: rgba(0, 0, 0, 0.2);
border-radius: 4px;
padding: 0.5rem;
}
.shared-analysis {
background-color: rgba(0, 0, 0, 0.3);
padding: 0.5rem;
border-radius: 4px;
margin-bottom: 0.5rem;
}
.shared-header {
display: flex;
justify-content: space-between;
margin-bottom: 0.3rem;
font-size: 0.9rem;
color: var(--secondary);
}
.shared-content {
padding: 0.5rem;
background-color: rgba(0, 0, 0, 0.2);
border-radius: 4px;
margin-top: 0.3rem;
}
.user-cursor {
position: absolute;
width: 20px;
height: 20px;
border-radius: 50%;
pointer-events: none;
z-index: 100;
}
.notification {
position: fixed;
bottom: 20px;
right: 20px;
padding: 10px 20px;
background-color: var(--notification-bg);
color: var(--notification-text);
border-radius: 4px;
z-index: 1000;
opacity: 0;
transform: translateY(20px);
transition: opacity 0.3s, transform 0.3s;
}
.notification.show {
opacity: 1;
transform: translateY(0);
}
/* Mobile Responsiveness */
@media (max-width: 768px) {
.container {
padding: 0.5rem;
}
h1 {
font-size: 1.8rem;
}
h2 {
font-size: 1rem;
}
.controls {
flex-direction: column;
}
#visualization {
height: 200px;
}
.control-panel, .info-panel {
width: 100%;
}
.collaborative-controls {
flex-direction: column;
}
.shared-analyses {
max-height: 150px;
}
}