lirony's picture
Initial public commit
a6bdbe4
/**
* Copyright 2025 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
.page.interview-page {
height: 100%;
max-height: 100%;
}
.interview-container {
padding: 20px;
font-family: Arial, sans-serif;
background-color: #f5f5f5;
}
.interview-split-container {
display: flex;
flex-direction: row;
height: 100%;
}
.interview-left-section {
border-right: 2px solid #e0e0e0;
display: flex;
flex-direction: row;
min-width: 550px;
max-width: 600px;
}
.toggle-icon {
vertical-align: text-top;
}
.interview-page .header2 span {
font-size: 14px;
font-weight: 100;
vertical-align: text-top;
animation: fadeIn 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.interview-right-section {
display: flex;
flex-direction: column;
width: 60%;
min-width: 550px;
flex-grow: 2;
padding-left: 20px;
justify-content: space-between;
height: 100%;
gap: 5px;
}
.interview-header-panel {
flex: 0 0 320px;
display: flex;
flex-direction: column;
justify-content: flex-start;
padding: 32px 24px 0 0;
box-sizing: border-box;
background: #f5f5f5;
}
.interview-chat-panel {
flex: 1 1 0;
display: flex;
flex-direction: column;
justify-content: flex-start;
min-width: 0;
min-height: 0;
}
.chat-container {
flex: 1;
overflow-y: auto;
display: flex;
flex-direction: column;
gap: 10px;
width: 100%;
padding-right: 20px;
}
.chat-header {
display: flex;
justify-content: space-between;
gap: 10px;
margin-top: 20px;
margin: 20px 30px 0 30px;
width: -webkit-fill-available;
}
.chat-message-wrapper {
display: flex;
align-items: center;
gap: 10px;
}
/* Fade-in animation for new chat messages */
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
.chat-message-wrapper.fade-in {
animation: fadeIn 0.5s ease;
}
.chat-message-wrapper.patient {
align-self: end;
}
.chat-bubble {
padding: 10px 15px;
font-size: 16px;
line-height: 1.4;
flex: 1;
}
.patient .chat-bubble {
background-color: #eaeaea;
margin-right: 5px;
border-radius: 8px;
background: #F5F5F5;
}
.chat-avatar {
width: 30px;
height: 30px;
object-fit: cover;
border-radius: 50%;
background-color: #E8DEF8;
}
.interviewer .chat-avatar {
padding: 5px;
}
.patient .chat-avatar {
width: 40px;
height: 40px;
border-color: rgb(47, 95, 207);
}
.report-content {
padding: 20px;
overflow-y: auto;
flex: 1 1 0;
min-height: 0;
border-radius: 28px;
border: 2px solid #E9E9E9;
box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
.report-content pre {
white-space: pre-wrap; /* CSS3 */
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
}
.thinking .chat-bubble {
display: flex;
flex-direction: column;
gap: 10px;
background-color: #E8DEF8;
padding: 20px;
border-radius: 8px;
min-width: 40px;
min-height: 40px;
position: relative;
color: #555;
border: none;
font-weight: 100;
}
.thinking-header {
font-weight: 500;
}
.chat-waiting-indicator {
color: #888;
font-size: 20px;
text-align: center;
margin: 60px 0;
font-style: italic;
opacity: 0.8;
}
.evaluate-button {
background-color: #C8B3FD;
color: #4E3B7B;
border-radius: 8px;
border-style: none;
padding: 6px;
font-size: 16px;
}
@keyframes fadeInOpacity {
0% { opacity: 0; font-size: 0; }
20% { opacity: 0; font-size: 1em; }
100% { opacity: 1; font-size: 1em; }
}
/* New keyframes to unset text color after a delay */
@keyframes unsetColor {
to { color: unset; }
}
.add {
color: green;
animation: fadeInOpacity 1s forwards, unsetColor 0s forwards 5s;
}
@keyframes removeAnim {
0% { opacity: 1; font-size: 1em; }
80% { opacity: 0; font-size: 1em; }
99% { font-size: 0.2em; }
100% { opacity: 0; font-size: 0; display: none; }
}
.remove {
color: red;
text-decoration: line-through;
animation: removeAnim 1s forwards 5s;
}
.warning-icon {
color: #444746;
}
.disclaimer-container {
border-radius: 8px;
background: #FEF7E0;
display: flex;
align-items: center;
gap: 20px;
padding: 13px;
font-size: 12px;
width: 100%;
}
.helpful {
border-radius: 14.272px;
background: #C4EED0;
mix-blend-mode: multiply;
display: inline-block;
padding: 0 5px;
}
.missing {
border-radius: 14.272px;
background: #FFE07C;
mix-blend-mode: multiply;
display: inline-block;
padding: 0 5px;
}
.evaluation-text {
font-style: italic;
padding-bottom: 30px;
}
.evaluation-text::after {
content: "***";
}