Py-detect / src /app /py-detect /py-detect.component.css
Oviya
all update
463dbc3
raw
history blame
6.93 kB
/* Custom Styles */
body, html {
background: url('/assets/background.jpg') no-repeat center center fixed;
background-color: #1a202c;
margin: 0;
padding: 0;
font-family: 'Inter', Arial, sans-serif;
}
.h-full {
min-height: 100vh;
}
.bg-gray-900 {
background-color: #1a202c;
}
.text-gray-200 {
color: #e2e8f0;
}
.flex {
display: flex;
}
.flex-col {
flex-direction: column;
}
.justify-between {
justify-content: space-between;
}
.items-center {
align-items: center;
}
.p-4 {
padding: 1rem;
}
.border-b {
border-bottom: 1px solid #4a5568;
}
.bg-gray-800 {
background-color: #2d3748;
}
.text-lg {
font-size: 1.125rem;
}
.font-semibold {
font-weight: 600;
}
.tracking-wide {
letter-spacing: 0.05em;
}
.text-white {
color: #fff;
}
.gap-4 {
gap: 1rem;
}
.home-btn, .btn-start, .btn-stop {
background: none;
border: none;
color: #fff;
font-size: 1rem;
padding: 0.5rem 1.2rem;
border-radius: 6px;
cursor: pointer;
transition: background 0.2s;
}
.home-btn:hover, .btn-start:hover, .btn-stop:hover {
background: #2b6cb0;
}
.max-w-4xl {
max-width: 56rem;
}
.mx-auto {
margin-left: auto;
margin-right: auto;
}
.space-y-6 > * + * {
margin-top: 1.5rem;
}
.bg-gray-800 {
background-color: #2d3748;
}
.border {
border: 1px solid #4a5568;
}
.rounded-xl {
border-radius: 1rem;
}
.shadow-md {
box-shadow: 0 4px 24px rgba(0,0,0,0.12);
}
.text-sm {
font-size: 0.875rem;
}
.text-gray-400 {
color: #a0aec0;
}
.mb-2 {
margin-bottom: 0.5rem;
}
.text-lg {
font-size: 1.125rem;
}
.font-semibold {
font-weight: 600;
}
.text-gray-200 {
color: #e2e8f0;
}
.mb-4 {
margin-bottom: 1rem;
}
.flex {
display: flex;
}
.items-center {
align-items: center;
}
.justify-between {
justify-content: space-between;
}
.badge {
padding: 4px 8px;
border-radius: 9999px;
font-size: 12px;
letter-spacing: 0.5px;
background: #2d3748;
color: #fff;
margin-right: 8px;
}
.badge.bg-blue-600 {
background: #3182ce;
}
.badge.bg-green-600 {
background: #38a169;
}
.badge.bg-yellow-600 {
background: #ecc94b;
color: #222;
}
.mic {
width: 12px;
height: 12px;
border-radius: 50%;
background: #4a5568;
box-shadow: 0 0 0 0 rgba(31, 130, 68, 0.7);
transition: box-shadow 0.25s ease;
margin-right: 8px;
}
.mic.bg-green-600 {
background: #2f855a;
box-shadow: 0 0 8px 2px rgba(31, 130, 68, 0.7);
}
.recog {
font-size: 12px;
padding: 4px 10px;
border-radius: 6px;
border: 1px dashed #3a3f47;
opacity: 0.8;
background: #2d3748;
color: #fff;
}
.recog.bg-blue-600 {
border-style: solid;
border-color: #3b82f6;
}
.text-xs {
font-size: 0.75rem;
}
.text-gray-500 {
color: #718096;
}
.flex-1 {
flex: 1;
}
.mt-2 {
margin-top: 0.5rem;
}
.space-x-6 > * + * {
margin-left: 1.5rem;
}
.w-full {
width: 100%;
}
.bg-gray-700 {
background-color: #4a5568;
}
.rounded-xl {
border-radius: 1rem;
}
/* Stylish font and button animation */
.stylish-font {
font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif;
letter-spacing: 2px;
text-shadow: 0 0 8px #38bdf8, 0 2px 8px #22222244;
transition: color 0.3s, text-shadow 0.3s;
}
.main-flex-layout {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: flex-start;
width: 100%;
height: 80vh;
gap: 32px;
}
.question-section {
flex: 1;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
min-width: 420px;
max-width: 700px;
padding: 32px 24px 32px 32px;
position: relative;
}
.big-question {
font-size: 3.2rem;
font-weight: 900;
color: #38bdf8;
margin-bottom: 24px;
text-align: left;
min-height: 100px;
max-width: 700px;
word-break: break-word;
}
.big-question-animated {
animation: questionFadeIn 0.7s, pulseText 1.2s infinite alternate;
}
@keyframes pulseText {
0% { text-shadow: 0 0 8px #38bdf8, 0 2px 8px #22222244; }
100% { text-shadow: 0 0 32px #38bdf8, 0 2px 24px #22222288; }
}
.video-section {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: flex-start;
min-width: 400px;
max-width: 100vw;
padding: 32px 32px 32px 0;
}
.camera-video {
border-radius: 18px;
border: 4px solid #38bdf8;
box-shadow: 0 0 24px #38bdf844, 0 0 8px #1e293b88;
background: #222;
object-fit: cover;
margin-bottom: 18px;
transition: box-shadow 0.4s, border 0.4s;
}
.camera-video-large {
width: 60vw;
max-width: 800px;
height: 40vh;
max-height: 60vh;
}
/* Animated buttons */
.home-btn, .btn-start, .btn-stop, .btn-resume, .btn-submit, .back-btn {
font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif;
font-size: 1.05rem;
font-weight: 700;
letter-spacing: 2px;
background: linear-gradient(90deg, #38bdf8 0%, #23272b 100%);
color: #e3f6ff;
box-shadow: 0 2px 16px #38bdf888;
border: none;
border-radius: 12px;
padding: 0.55rem 1.3rem;
margin: 0 0.3rem;
cursor: pointer;
transition: background 0.4s, box-shadow 0.4s, color 0.3s, transform 0.2s;
position: relative;
overflow: hidden;
animation: buttonPulse 1.2s infinite alternate;
}
.btn-submit {
position: fixed;
right: 32px;
bottom: 32px;
z-index: 1000;
font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif;
font-size: 1.05rem;
font-weight: 700;
letter-spacing: 2px;
background: linear-gradient(90deg, #38bdf8 0%, #23272b 100%);
color: #e3f6ff;
box-shadow: 0 2px 16px #38bdf888;
border: none;
border-radius: 12px;
padding: 0.55rem 1.3rem;
margin: 0 0.3rem;
cursor: pointer;
transition: background 0.4s, box-shadow 0.4s, color 0.3s, transform 0.2s;
overflow: hidden;
animation: buttonPulse 1.2s infinite alternate;
}
@keyframes buttonPulse {
0% { box-shadow: 0 2px 16px #38bdf888; transform: scale(1); }
100% { box-shadow: 0 2px 32px #bae6fd88; transform: scale(1.07); }
}
.home-btn:hover, .btn-start:hover, .btn-stop:hover, .btn-resume:hover, .btn-submit:hover, .back-btn:hover {
background: linear-gradient(90deg, #23272b 0%, #38bdf8 100%);
color: #bae6fd;
box-shadow: 0 2px 24px #bae6fd88;
animation: buttonPulse 0.7s;
}
.fade-out {
opacity: 0.4;
pointer-events: none;
transition: opacity 0.5s;
}
.global-bottom-left-btn {
position: fixed;
left: 24px;
bottom: 24px;
z-index: 1000;
}
/* Reduce Pykara logo size in py-detect topbar */
header .pykara-logo-small {
width: 48px;
height: 48px;
object-fit: contain;
}
/* Pykara logo size for consistency across homepage, py-detect, and infopage */
.pykara-logo-consistent {
width: 120px;
height: 120px;
object-fit: contain;
}
header .text-lg.font-semibold.tracking-wide.text-white {
font-size: 2.8rem;
font-weight: 900;
letter-spacing: 8px;
color: #e3f6ff;
font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif;
text-shadow: 0 0 16px #1e293b, 0 0 8px #38bdf8, 0 2px 8px #22222244;
}