body{
margin:0;
font-family:Arial;



background:#000;   /* pure black */

height:100vh;
overflow:hidden;
color:white;

height:100vh;
overflow:hidden;
color:white;
}

#topbar{
position:fixed;
top:0;
left:0;
right:0;
height:60px;

background:rgba(0,0,0,.6);
backdrop-filter:blur(5px);

display:flex;
align-items:center;
gap:10px;
padding:10px;

z-index:10;
}

#stage{
position:absolute;
top:60px;
bottom:0;
left:0;
right:0;

display:flex;
justify-content:center;
align-items:center;
}


#particles{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;

z-index:5;
pointer-events:none;
}


#photo{
opacity:0;
display:none;
}

#arrow{
position:absolute;
font-size:50px;

color:red;

text-shadow:
0 0 10px red,
0 0 20px red,
0 0 40px red;

transition:all 1s;

z-index:20;
pointer-events:none;
}

.marker{

position:absolute;

width:28px;
height:28px;

background:red;

border-radius:50%;

display:flex;
align-items:center;
justify-content:center;

font-weight:bold;

color:white;

z-index:15;
}
button{
padding:8px 16px;
border:none;
border-radius:6px;
background:#ff4b4b;
color:white;
font-weight:bold;
cursor:pointer;
}

button:hover{
background:#ff2222;
}
/* ===== TOP BAR ===== */

#topbar{
display:flex;
align-items:center;
gap:12px;
padding:10px 15px;
background:#111;
box-shadow:0 3px 10px rgba(0,0,0,0.5);
}

/* ===== LANGUAGE DROPDOWN ===== */

#language{
padding:8px 12px;
font-size:15px;
border-radius:6px;
border:none;
background:#1e1e1e;
color:white;
outline:none;
cursor:pointer;
transition:0.2s;
}

#language:hover{
background:#2c2c2c;
}

/* ===== START / STOP BUTTONS ===== */

button{
padding:8px 16px;
font-size:14px;
border:none;
border-radius:6px;
cursor:pointer;
transition:0.2s;
font-weight:bold;
}

#startVoice{
background:#2ecc71;
color:white;
}

#startVoice:hover{
background:#27ae60;
}

#stopVoice{
background:#e74c3c;
color:white;
}

#stopVoice:hover{
background:#c0392b;
}

/* ===== FILE BUTTON ===== */

input[type="file"]{
padding:6px;
background:#1e1e1e;
color:white;
border-radius:6px;
border:1px solid #444;
cursor:pointer;
}

input[type="file"]::-webkit-file-upload-button{
background:#3498db;
color:white;
border:none;
padding:6px 12px;
border-radius:5px;
cursor:pointer;
font-weight:bold;
}

input[type="file"]::-webkit-file-upload-button:hover{
background:#2980b9;
}

#tutorialText{
padding:8px 12px;
border-radius:6px;
border:none;
background:#222;
color:white;
width:220px;
}

#tutorialBtn{
background:#9b59b6;
color:white;
}

#tutorialBtn:hover{
background:#8e44ad;
}


/* ===== MOBILE SUPPORT ===== */

@media (max-width:768px){

/* top bar stacks vertically */

#topbar{
flex-direction:column;
align-items:stretch;
gap:8px;
padding:10px;
}

/* buttons full width */

button,
#language,
input[type="file"]{
width:100%;
font-size:16px;
padding:12px;
}

/* make image fit screen */

#photo{
max-width:100%;
max-height:70vh;
object-fit:contain;
}

/* arrow smaller for phone */

#arrow{
font-size:35px;
}

/* stage padding */

#stage{
padding:10px;
}

}