Spaces:
Sleeping
Sleeping
| /* MessageBubble styles */ | |
| .message-row { | |
| display: flex; | |
| align-items: flex-end; | |
| gap: 10px; | |
| margin-bottom: 20px; | |
| animation: fadeIn 300ms ease forwards; | |
| max-width: 100%; | |
| } | |
| .message-row--user { | |
| flex-direction: row-reverse; | |
| } | |
| .message-row--assistant { | |
| flex-direction: row; | |
| } | |
| /* Small avatar label for the assistant */ | |
| .message-avatar { | |
| flex-shrink: 0; | |
| width: 40px; | |
| height: 40px; | |
| border-radius: 50%; | |
| background-color: var(--color-primary); | |
| color: var(--color-white); | |
| font-size: 16px; | |
| font-weight: 700; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| margin-bottom: 24px; | |
| } | |
| /* The bubble itself */ | |
| .bubble { | |
| max-width: min(80%, 620px); | |
| padding: 18px 22px; | |
| border-radius: 18px; | |
| word-break: break-word; | |
| } | |
| .bubble--user { | |
| background-color: var(--color-primary); | |
| color: var(--color-white); | |
| border-bottom-right-radius: 4px; | |
| } | |
| .bubble--assistant { | |
| background-color: var(--color-white); | |
| color: var(--color-text); | |
| border: 1px solid var(--color-border); | |
| border-bottom-left-radius: 4px; | |
| box-shadow: 0 1px 4px var(--color-shadow); | |
| } | |
| /* User message — plain text */ | |
| .bubble__text { | |
| font-size: 20px; | |
| line-height: 1.6; | |
| margin: 0 0 8px; | |
| white-space: pre-wrap; | |
| } | |
| /* Assistant message — formatted output */ | |
| .bubble__formatted { | |
| font-size: 20px; | |
| line-height: 1.6; | |
| } | |
| .bubble__paragraph { | |
| margin: 0 0 14px; | |
| font-size: 20px; | |
| line-height: 1.6; | |
| } | |
| .bubble__paragraph:last-child { | |
| margin-bottom: 8px; | |
| } | |
| /* Bold text — key actions stand out */ | |
| .bubble__bold { | |
| font-weight: 700; | |
| color: var(--color-primary); | |
| } | |
| /* Numbered steps — big visual circles */ | |
| .bubble__step { | |
| display: flex; | |
| align-items: flex-start; | |
| gap: 14px; | |
| margin-bottom: 16px; | |
| padding: 14px 16px; | |
| background-color: #f0f4ff; | |
| border-radius: 14px; | |
| border-left: 4px solid var(--color-primary); | |
| } | |
| .bubble__step:last-of-type { | |
| margin-bottom: 14px; | |
| } | |
| .bubble__step-num { | |
| flex-shrink: 0; | |
| width: 38px; | |
| height: 38px; | |
| border-radius: 50%; | |
| background-color: var(--color-primary); | |
| color: var(--color-white); | |
| font-size: 20px; | |
| font-weight: 800; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| } | |
| .bubble__step-text { | |
| font-size: 20px; | |
| line-height: 1.5; | |
| padding-top: 6px; | |
| } | |
| .bubble__step-text .bubble__bold { | |
| font-weight: 700; | |
| color: #1a3a8a; | |
| } | |
| /* Annotated device screenshots */ | |
| .bubble__screenshots { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 12px; | |
| margin-top: 16px; | |
| margin-bottom: 12px; | |
| } | |
| .bubble__screenshot-card { | |
| flex: 1 1 200px; | |
| max-width: 280px; | |
| background: #f8f9fa; | |
| border: 2px solid var(--color-border, #e0e0e0); | |
| border-radius: 12px; | |
| overflow: hidden; | |
| box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); | |
| } | |
| .bubble__screenshot-img { | |
| width: 100%; | |
| display: block; | |
| } | |
| .bubble__screenshot-caption { | |
| font-size: 15px; | |
| color: var(--color-text-light, #666); | |
| text-align: center; | |
| padding: 8px 10px; | |
| margin: 0; | |
| border-top: 1px solid var(--color-border, #e0e0e0); | |
| background: #fff; | |
| } | |
| /* Timestamp */ | |
| .bubble__time { | |
| font-size: 16px; | |
| opacity: 0.7; | |
| display: block; | |
| } | |
| .bubble--user .bubble__time { | |
| color: var(--color-white); | |
| text-align: right; | |
| } | |
| .bubble--assistant .bubble__time { | |
| color: var(--color-text-light); | |
| } | |
| /* Safety alert banner */ | |
| .safety-alert { | |
| display: flex; | |
| align-items: flex-start; | |
| gap: 10px; | |
| background-color: var(--color-danger-light); | |
| border: 2px solid var(--color-danger); | |
| border-radius: var(--radius-md); | |
| color: var(--color-danger); | |
| font-size: 18px; | |
| font-weight: 600; | |
| padding: 14px 18px; | |
| margin-bottom: 8px; | |
| width: 100%; | |
| max-width: min(80%, 620px); | |
| box-shadow: 0 2px 8px rgba(220, 38, 38, 0.2); | |
| } | |
| .safety-alert__icon { | |
| flex-shrink: 0; | |
| width: 28px; | |
| height: 28px; | |
| border-radius: 50%; | |
| background-color: var(--color-danger); | |
| color: var(--color-white); | |
| font-size: 16px; | |
| font-weight: 900; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| } | |
| @keyframes fadeIn { | |
| from { opacity: 0; transform: translateY(8px); } | |
| to { opacity: 1; transform: translateY(0); } | |
| } | |