VoiceVision-AI / static /style.css
azizmeer40's picture
Upload 19 files
4b943a0 verified
/* ================================================================
SECTION 1: GLOBAL STYLES & ANIMATIONS
================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Petit+Formal+Script&display=swap');
* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Poppins', sans-serif;
}
body {
margin: 0;
min-height: 100vh;
color: white;
text-align: center;
overflow-x: hidden;
position: relative;
background: #000;
}
body::before {
content: "";
position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
background: url('bg.jpg') no-repeat center center/cover;
animation: animateBg 10s linear infinite;
z-index: -1;
}
@keyframes animateBg {
100% { filter: hue-rotate(360deg); }
}
section {
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
width: 100%;
}
/* ================================================================
SECTION 2: LOGIN & SIGNUP BOXES (Icon Fix)
================================================================ */
.login-box {
position: relative;
width: 400px;
background: rgba(255, 255, 255, 0.1);
border: 2px solid rgba(255, 255, 255, 0.3);
border-radius: 20px;
backdrop-filter: blur(15px);
-webkit-backdrop-filter: blur(15px);
padding: 30px;
margin: 20px;
}
h2 { font-size: 2.2em; color: white; text-align: center; margin-bottom: 20px; }
.input-box {
position: relative;
width: 100%;
margin: 25px 0;
border-bottom: 2px solid white;
}
/* Icon Fix: Right side par fit kiya */
.input-box .icon, .input-box i {
position: absolute;
right: 10px;
top: 50%;
transform: translateY(-50%);
color: white;
font-size: 1.2em;
z-index: 2;
}
.input-box label {
position: absolute;
top: 50%;
left: 5px;
transform: translateY(-50%);
font-size: 1em;
color: white;
pointer-events: none;
transition: .5s;
}
.input-box input {
width: 100%;
height: 45px;
background: transparent;
border: none;
outline: none;
font-size: 1em;
color: white;
padding: 0 40px 0 5px;
}
.input-box input:focus ~ label,
.input-box input:valid ~ label {
top: -5px;
transform: translateY(0);
}
button {
width: 100%;
height: 45px;
background: white;
border: none;
border-radius: 40px;
cursor: pointer;
font-size: 1em;
color: black;
font-weight: 600;
transition: 0.3s;
margin-top: 10px;
}
button:hover {
background: #00fff0;
color: #000;
transform: translateY(-2px);
}
/* ================================================================
SECTION 3: DASHBOARD CARD & EXPANSION
================================================================ */
#mainDashboardContent {
width: 100%;
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
padding: 40px 20px;
}
.dashboard-card {
position: relative;
width: 95%;
max-width: 900px;
min-height: 400px;
background: rgba(255, 255, 255, 0.1);
border: 2px solid rgba(255, 255, 255, 0.2);
border-radius: 40px;
backdrop-filter: blur(25px);
-webkit-backdrop-filter: blur(25px);
padding: 50px 30px;
margin: 40px auto;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
box-shadow: 0 30px 60px rgba(0, 0, 0, 0.6);
transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
overflow: hidden;
}
.card-expanded {
max-width: 1200px !important;
min-height: 850px !important;
}
/* ================================================================
SECTION 4: RESPONSIVE WELCOME TEXT (135px)
================================================================ */
.iphone-hello-container {
width: 100%;
display: flex;
justify-content: center;
}
.iphone-svg { width: 100%; height: auto; }
.iphone-style-h2 {
font-family: 'Petit Formal Script', cursive;
font-size: 135px !important;
fill: white;
stroke: white;
stroke-width: 0.5px;
letter-spacing: 1px;
stroke-dasharray: 2000;
stroke-dashoffset: 2000;
animation: iphoneSlowWrite 6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@keyframes iphoneSlowWrite {
0% { stroke-dashoffset: 2000; fill: rgba(255, 255, 255, 0); }
70% { stroke-dashoffset: 0; fill: rgba(255, 255, 255, 0); }
100% { stroke-dashoffset: 0; fill: rgba(255, 255, 255, 1); }
}
/* ================================================================
SECTION 5: CAMERA & MODES
================================================================ */
/* .camera-box {
width: 600px !important;
height: 600px !important;
max-width: 100% !important;
border: 4px solid #ffffff !important;
border-radius: 30px !important;
box-shadow: 0 0 40px rgba(0, 255, 240, 0.5) !important;
background: #000;
overflow: hidden;
display: none;
margin: 20px auto;
} */
.camera-box {
width: 640px !important;
height: 480px !important;
max-width: 100% !important;
border: 4px solid #ffffff !important;
border-radius: 30px !important;
box-shadow: 0 0 40px rgba(0, 255, 240, 0.5) !important;
background: #000;
overflow: hidden;
display: none;
margin: 20px auto;
position: relative; /* Ye zaroori hai taake canvas iske upar baithe */
}
#video { width: 100%; height: 100%; object-fit: cover; }
.mode-group-horizontal {
display: none;
gap: 15px;
justify-content: center;
width: 100%;
margin: 30px 0;
flex-wrap: wrap;
}
.dashboard-card .buttons {
width: 100%;
max-width: 400px;
display: flex;
flex-direction: column;
gap: 15px;
margin-top: 30px;
}
#powerOffBtn { background: #ffcc00 !important; color: black !important; }
#logoutBtn { background: #ff4d4d !important; color: white !important; }
/* Camera container ko fix karein taake layout na hile */
.video-container {
width: 640px;
height: 480px;
margin: 20px;
background-color:transparent;
border-radius: 15px;
overflow: hidden;
position: relative;
box-shadow: 0 0 20px rgba(0,0,0,0.5);
display: flex;
align-items: center;
justify-content: center;
}
/* Video aur Canvas dono ko ek doosre ke upar lock karein */
#video, #canvas {
position: absolute;
top: 0;
left: 0;
width: 640px;
height: 480px;
object-fit: cover;
}
/* Jab system off ho toh black screen dikhe bajaye chota-bara hone ke */
#cameraBox {
width: 100%;
height: 100%;
}