body {
	background-image: url('../img/all.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
}
.container { max-width: 600px; width: 100%; }
.progress { height: 30px; }
.popup {
	display: none;
	background-color: black;
	color: #fff;
	padding: 0px;
	border-radius: 8px;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 1000;
	width: 75%;
	text-align: center;
}
.popup .btn-close { color: white; font-size: 24px; border: none; }
.btn-report { margin-top: 20px; }
.radar-container { margin: 0 auto; position: relative; text-align: center; max-width: 250px; }
.radar-title {
	position: absolute;
	top: 50%; left: 50%;
	transform: translate(-50%, -50%);
}
.radar-title h5 {
	color: #3DD3D1;
	font-size: 20px;
	white-space: nowrap;
	font-weight: bold;
	z-index: 2;
	background: linear-gradient(to right, #ff6a00, #ee0979);
	-webkit-background-clip: text;
	text-shadow: 0 0 8px rgba(255,255,255,.8), 0 0 20px rgba(255,255,255,.5);
}
.radar-title span { font-size: 14px; color: white; font-weight: bold; z-index: 2; white-space: nowrap; }
#startDiagnosis {
	font-weight: bold;
	text-shadow: 0 0 8px rgba(255,255,255,.8), 0 0 20px rgba(255,255,255,.5);
}
.radar-image {
	background-image: url('../img/012.png');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #fff;
	padding: 10px;
	font-size: 36px;
	text-align: center;
	width: 100%;
	height: 100%;
	animation: rotateRadar 5s linear infinite;
	z-index: 1;
}
@keyframes rotateRadar { 0% { transform: rotate(0deg);} 100% { transform: rotate(360deg);} }
.scroll-container { margin-top: 20%; height: 120px; overflow: hidden; position: relative; }
.scroll-content { position: absolute; width: 100%; animation: scrollUp 10s linear infinite; }
@keyframes scrollUp { 0% { top: 0; } 100% { top: -480px; } }
h1 {
	height: 202px;
	background-image: url('../img/img02.png');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	color: #fff;
	padding: 60px;
	font-size: 36px;
	text-align: center;
}
.scroll-content p { font-size: 16px; font-weight: bold; padding: 10px 0; margin: 0; text-align: center; color: white; }
#resultTitle { font-size: 14px; font-weight: bold; color: white; margin-bottom: 10px; }
hr { border: 1px solid #fff; margin: 10px 0; }
#resultPopup .btn-report {
	margin-top: 0; margin-bottom: 15px;
	font-size: 14px;
	background-color: #20C930;
	border-color: #20C930;
	color: white;
	animation: bounce 2s infinite;
}
@keyframes bounce {
	0% { transform: scale(1); }
	30% { transform: scale(1.1); }
	50% { transform: scale(1); }
	70% { transform: scale(1.1); }
	100% { transform: scale(1); }
}

/* === Text replacement (semantic names instead of random) === */
.page-title::after { content: "AI Stock Diagnosis"; }
.subtitle-main::after { content: "Free AI Analysis"; }
.subtitle-data::after { content: "AI Big Data Analysis"; }
.subtitle-tip::after { content: "Know Buy or Sell in 1 Second"; }
.btn-start::after { content: "Start Analysis"; }
.progress-title::after { content: "Analysis in Progress..."; }
.progress-desc::after { content: "Diagnosing..."; }
.result-done::after { content: "AI Analysis Report Completed"; }
.loading-text::after { content: "Loading..."; }
.btn-addline::after { content: "Add WhatsApp to Receive AI Report"; }

/* scrolling names */
.scroll-1::after { content: "Kenichi Sato received the free report!"; }
.scroll-2::after { content: "Mika Tanaka received the free report!"; }
.scroll-3::after { content: "Daisuke Suzuki received the free report!"; }
.scroll-4::after { content: "Kazuko Yamada received the free report!"; }
.scroll-5::after { content: "Kiyoshi Kato received the free report!"; }
.scroll-6::after { content: "Sachiko Nakamura received the free report!"; }
.scroll-7::after { content: "Daichi Kobayashi received the free report!"; }
.scroll-8::after { content: "Yuto Yoshida received the free report!"; }
.scroll-9::after { content: "Naoki Iwata received the free report!"; }
.scroll-10::after { content: "Saori Takahashi received the free report!"; }
.scroll-11::after { content: "Mie Fujii received the free report!"; }
.scroll-12::after { content: "Shota Nagata received the free report!"; }
.scroll-13::after { content: "Mao Miura received the free report!"; }
.scroll-14::after { content: "Yoshino Endo received the free report!"; }
.scroll-15::after { content: "Atsuko Kimura received the free report!"; }