Files
BreakEscape/css/phone.css.old
Z. Cliffe Schreuders 01010e7e20 refactor: Remove old phone-messages minigame and transition to phone-chat
- Deleted `phone-messages-minigame.js` and archived related CSS.
- Updated `interactions.js` to exclusively use phone-chat with runtime conversion.
- Enhanced error handling for phone interactions.
- Marked completion of old phone minigame removal in implementation log.
- Added detailed cleanup summary documentation.
2025-10-30 10:16:31 +00:00

506 lines
10 KiB
CSS

/* Phone Messages Minigame Styles */
.phone-image-section {
display: flex;
align-items: center;
gap: 20px;
padding: 20px;
margin-bottom: 20px;
}
.phone-image {
width: 80px;
height: 80px;
object-fit: contain;
image-rendering: pixelated;
image-rendering: -moz-crisp-edges;
image-rendering: crisp-edges;
border: 2px solid rgba(255, 255, 255, 0.3);
background: rgba(0, 0, 0, 0.3);
}
.phone-info h4 {
font-family: 'Press Start 2P', monospace;
font-size: 20px;
margin: 0 0 10px 0;
color: #3498db;
}
.phone-info p {
font-size: 20px;
margin: 0;
color: #ecf0f1;
line-height: 1.4;
}
.phone-messages-container {
display: flex;
flex-direction: column;
height: 500px;
width: 100%;
max-width: 400px;
margin: 0 auto;
background: #a0a0ad;
clip-path: polygon(
0px calc(100% - 10px),
2px calc(100% - 10px),
2px calc(100% - 6px),
4px calc(100% - 6px),
4px calc(100% - 4px),
6px calc(100% - 4px),
6px calc(100% - 2px),
10px calc(100% - 2px),
10px 100%,
calc(100% - 10px) 100%,
calc(100% - 10px) calc(100% - 2px),
calc(100% - 6px) calc(100% - 2px),
calc(100% - 6px) calc(100% - 4px),
calc(100% - 4px) calc(100% - 4px),
calc(100% - 4px) calc(100% - 6px),
calc(100% - 2px) calc(100% - 6px),
calc(100% - 2px) calc(100% - 10px),
100% calc(100% - 10px),
100% 10px,
calc(100% - 2px) 10px,
calc(100% - 2px) 6px,
calc(100% - 4px) 6px,
calc(100% - 4px) 4px,
calc(100% - 6px) 4px,
calc(100% - 6px) 2px,
calc(100% - 10px) 2px,
calc(100% - 10px) 0px,
10px 0px,
10px 2px,
6px 2px,
6px 4px,
4px 4px,
4px 6px,
2px 6px,
2px 10px,
0px 10px
);
box-shadow: 0 0 20px rgba(0, 255, 0, 0.3);
font-family: 'VT323', monospace;
}
.phone-screen {
flex: 1;
background: #5fcf69;
display: flex;
flex-direction: column;
position: relative;
color: #000;
margin: 10px;
overflow: hidden;
clip-path: polygon(0px calc(100% - 10px), 2px calc(100% - 10px), 2px calc(100% - 6px), 4px calc(100% - 6px), 4px calc(100% - 4px), 6px calc(100% - 4px), 6px calc(100% - 2px), 10px calc(100% - 2px), 10px 100%, calc(100% - 10px) 100%, calc(100% - 10px) calc(100% - 2px), calc(100% - 6px) calc(100% - 2px), calc(100% - 6px) calc(100% - 4px), calc(100% - 4px) calc(100% - 4px), calc(100% - 4px) calc(100% - 6px), calc(100% - 2px) calc(100% - 6px), calc(100% - 2px) calc(100% - 10px), 100% calc(100% - 10px), 100% 10px, calc(100% - 2px) 10px, calc(100% - 2px) 6px, calc(100% - 4px) 6px, calc(100% - 4px) 4px, calc(100% - 6px) 4px, calc(100% - 6px) 2px, calc(100% - 10px) 2px, calc(100% - 10px) 0px, 10px 0px, 10px 2px, 6px 2px, 6px 4px, 4px 4px, 4px 6px, 2px 6px, 2px 10px, 0px 10px) !important;
}
.phone-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 10px 15px;
background: rgba(0, 0, 0, 0.1);
border-bottom: 2px solid #333;
color: #000;
flex-shrink: 0;
}
.signal-bars {
display: flex;
gap: 2px;
align-items: end;
}
.signal-bars .bar {
width: 3px;
background: #000;
/* border-radius: 1px; */
}
.signal-bars .bar:nth-child(1) { height: 4px; }
.signal-bars .bar:nth-child(2) { height: 6px; }
.signal-bars .bar:nth-child(3) { height: 8px; }
.signal-bars .bar:nth-child(4) { height: 10px; }
.battery {
color: #000;
/* font-size: 10px; */
font-family: 'VT323', monospace;
font-weight: bold;
}
.messages-list {
flex: 1;
overflow-y: auto;
overflow-x: hidden;
padding: 10px;
color: #000;
scrollbar-width: none;
cursor: grab;
}
.messages-list::-webkit-scrollbar {
display: none;
}
.message-item {
display: flex;
align-items: center;
padding: 12px;
margin-bottom: 8px;
background: rgba(0, 0, 0, 0.1);
border: 2px solid rgba(0, 0, 0, 0.3);
/* border-radius: 8px; */
cursor: pointer;
transition: all 0.3s ease;
position: relative;
color: #000;
}
.message-item:hover {
background: rgba(0, 0, 0, 0.2);
border-color: rgba(0, 0, 0, 0.5);
transform: translateX(5px);
}
.message-item.voice {
border-left: 4px solid #ff6b35;
}
.message-item.text {
border-left: 4px solid #000;
}
.message-preview {
flex: 1;
min-width: 0;
}
.message-sender {
font-weight: bold;
color: #000;
/* font-size: 18px; */
margin-bottom: 4px;
font-family: 'VT323', monospace;
}
.message-text {
color: #333;
/* font-size: 11px; */
line-height: 1.3;
margin-bottom: 4px;
font-family: 'VT323', monospace;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.message-time {
color: #666;
/* font-size: 10px; */
font-family: 'VT323', monospace;
}
.message-status {
width: 8px;
height: 8px;
border-radius: 50%;
margin-left: 8px;
}
.message-status.unread {
background: #000;
box-shadow: 0 0 6px rgba(0, 0, 0, 0.6);
}
.message-status.read {
background: #666;
}
.no-messages {
display: flex;
align-items: center;
justify-content: center;
height: 200px;
color: #666;
font-size: 18px;
font-family: 'VT323', monospace;
}
.message-detail {
flex: 1;
display: flex;
flex-direction: column;
padding: 15px;
color: #000;
overflow-y: scroll;
scrollbar-width: none;
cursor: grab;
}
.message-detail::-webkit-scrollbar {
display: none;
}
.message-header {
display: flex;
align-items: center;
margin-bottom: 15px;
padding-bottom: 10px;
border-bottom: 2px solid #333;
}
.back-btn {
background: #333;
color: #5fcf69;
border: 2px solid #555;
padding: 8px 12px;
/* border-radius: 5px; */
cursor: pointer;
font-family: 'VT323', monospace;
/* font-size: 11px; */
margin-right: 15px;
transition: all 0.3s ease;
font-weight: bold;
}
.back-btn:hover {
background: #555;
border-color: #5fcf69;
box-shadow: 0 0 5px rgba(95, 207, 105, 0.5);
}
.message-info {
flex: 1;
}
.sender {
display: block;
color: #000;
font-weight: bold;
/* font-size: 18px; */
margin-bottom: 4px;
font-family: 'VT323', monospace;
}
.timestamp {
color: #666;
/* font-size: 11px; */
font-family: 'VT323', monospace;
}
.message-content {
flex: 1;
background: rgba(0, 0, 0, 0.1);
padding: 15px;
color: #000;
line-height: 1.5;
font-family: 'VT323', monospace;
white-space: pre-wrap;
overflow-y: auto;
overflow-x: hidden;
margin-bottom: 15px;
scrollbar-width: none;
}
.message-content::-webkit-scrollbar {
display: none;
}
/* Voice message display styling */
.voice-message-display {
display: flex;
flex-direction: column;
align-items: center;
gap: 15px;
}
.audio-controls {
display: flex;
align-items: center;
gap: 10px;
cursor: pointer;
transition: transform 0.2s ease;
padding: 5px;
/* border-radius: 8px; */
}
.audio-controls:hover {
transform: scale(1.5);
background: rgba(0, 0, 0, 0.1);
}
.audio-sprite {
height: 32px;
width: auto;
image-rendering: pixelated !important;
image-rendering: -moz-crisp-edges;
image-rendering: crisp-edges;
image-rendering: -webkit-optimize-contrast;
}
.play-button {
color: #000;
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
font-weight: bold;
font-family: 'VT323', monospace;
}
.transcript {
text-align: center;
background: rgba(0, 0, 0, 0.1);
padding: 10px;
/* border-radius: 5px; */
border: 2px solid #333;
width: 100%;
font-family: 'VT323', monospace;
/* font-size: 11px; */
line-height: 1.4;
}
.transcript strong {
color: #000;
font-weight: bold;
}
/* Phone observations styling */
.phone-observations {
margin-top: 20px;
padding: 15px;
background: #f0f0f0;
/* border-radius: 8px; */
border: 2px solid #333;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.observations-content h4 {
margin: 0 0 8px 0;
color: #000;
/* font-size: 18px; */
font-weight: bold;
font-family: 'VT323', monospace;
}
.observations-content p {
margin: 0;
color: #000;
/* font-size: 11px; */
line-height: 1.4;
font-family: 'VT323', monospace;
}
.message-actions {
display: flex;
gap: 10px;
justify-content: center;
}
.phone-controls {
display: flex;
justify-content: center;
gap: 15px;
padding: 15px;
background: rgba(0, 0, 0, 0.1);
border-top: 2px solid #333;
}
.control-btn {
background: #333;
color: #5fcf69;
border: 2px solid #555;
padding: 10px 15px;
/* border-radius: 8px; */
cursor: pointer;
font-family: 'VT323', monospace;
/* font-size: 11px; */
transition: all 0.3s ease;
min-width: 80px;
font-weight: bold;
}
.control-btn:hover {
background: #555;
border-color: #5fcf69;
box-shadow: 0 0 10px rgba(95, 207, 105, 0.5);
transform: translateY(-1px);
}
.control-btn:active {
background: #666;
transform: translateY(0px);
}
.control-btn:disabled {
background: #222;
color: #666;
border-color: #444;
cursor: not-allowed;
}
/* Voice playback note styling */
.voice-note {
color: #666 !important;
/* font-size: 10px !important; */
text-align: center !important;
margin-top: 10px !important;
font-family: 'Courier New', monospace !important;
background: rgba(0, 0, 0, 0.1);
padding: 5px;
/* border-radius: 3px; */
border: 2px solid #333;
}
/* Voice controls styling */
.voice-controls {
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
padding: 10px 15px;
background: rgba(0, 0, 0, 0.1);
border-top: 1px solid #333;
font-family: 'VT323', monospace;
/* font-size: 11px; */
}
.voice-controls label {
color: #000;
font-weight: bold;
}
.voice-select {
background: #333;
color: #5fcf69;
border: 2px solid #555;
padding: 5px 8px;
/* border-radius: 4px; */
font-family: 'VT323', monospace;
/* font-size: 10px; */
min-width: 200px;
cursor: pointer;
font-weight: bold;
}
.voice-select:hover {
border-color: #5fcf69;
box-shadow: 0 0 5px rgba(95, 207, 105, 0.3);
}
.voice-select:focus {
outline: none;
border-color: #5fcf69;
box-shadow: 0 0 5px rgba(95, 207, 105, 0.5);
}
.voice-select option {
background: #333;
color: #5fcf69;
padding: 5px;
font-weight: bold;
}