/**
 * Glassmorphism template styles.
 *
 * @package PasswordProtectMaster
 */

/* ===== Inline Form ===== */
.ppmstr-template-default {
	display: flex;
	justify-content: center;
	padding: 40px 16px;
}

.ppmstr-form-card {
	width: 100%;
	max-width: 420px;
	background: rgba(255, 255, 255, 0.25);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border-radius: 24px;
	padding: 44px 36px;
	box-shadow: 0 8px 32px rgba(31, 38, 135, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.4);
	text-align: center;
}

.ppmstr-form-icon { color: #6C5CE7; }
.ppmstr-form-headline { color: #1A1A2E !important; }
.ppmstr-form-desc { color: #555 !important; }

.ppmstr-form-input {
	background: rgba(255, 255, 255, 0.5) !important;
	backdrop-filter: blur(8px);
	border: 1.5px solid rgba(108, 92, 231, 0.15) !important;
	border-radius: 14px !important;
}

.ppmstr-form-input:focus {
	border-color: rgba(108, 92, 231, 0.5) !important;
	box-shadow: 0 0 0 4px rgba(108, 92, 231, 0.1) !important;
	background: rgba(255, 255, 255, 0.7) !important;
}

.ppmstr-form-submit {
	background: linear-gradient(135deg, rgba(108, 92, 231, 0.85) 0%, rgba(168, 85, 247, 0.85) 100%) !important;
	backdrop-filter: blur(8px);
	border-radius: 14px !important;
}

.ppmstr-form-submit:hover {
	box-shadow: 0 8px 24px rgba(108, 92, 231, 0.35) !important;
}

.ppmstr-form-error {
	background: rgba(225, 112, 85, 0.12) !important;
	backdrop-filter: blur(8px);
	border: 1px solid rgba(225, 112, 85, 0.2) !important;
}

/* ===== Full-Page ===== */
.ppmstr-fullpage-body {
	margin: 0;
	padding: 0;
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
	background-size: 300% 300%;
	animation: ppmstr-glass-bg 15s ease infinite;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

@keyframes ppmstr-glass-bg {
	0%   { background-position: 0% 50%; }
	50%  { background-position: 100% 50%; }
	100% { background-position: 0% 50%; }
}

.ppmstr-fullpage-wrap {
	width: 100%;
	max-width: 460px;
	padding: 20px;
}

.ppmstr-fullpage-card {
	background: rgba(255, 255, 255, 0.2);
	backdrop-filter: blur(24px);
	-webkit-backdrop-filter: blur(24px);
	border-radius: 28px;
	padding: 52px 40px 40px;
	box-shadow: 0 8px 32px rgba(31, 38, 135, 0.2),
	            inset 0 1px 0 rgba(255, 255, 255, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.3);
	text-align: center;
	animation: ppmstr-card-in 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes ppmstr-card-in {
	from { opacity: 0; transform: translateY(28px) scale(0.95); }
	to   { opacity: 1; transform: translateY(0) scale(1); }
}

.ppmstr-fullpage-card .ppmstr-form-headline {
	font-size: 26px;
	color: #FFFFFF;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.ppmstr-fullpage-card .ppmstr-form-desc {
	color: rgba(255, 255, 255, 0.8);
}

.ppmstr-fullpage-card .ppmstr-form-icon { color: #FFFFFF; }

.ppmstr-fullpage-card .ppmstr-form-input {
	background: rgba(255, 255, 255, 0.3);
	border: 1.5px solid rgba(255, 255, 255, 0.3);
	color: #FFFFFF;
}

.ppmstr-fullpage-card .ppmstr-form-input::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.ppmstr-fullpage-card .ppmstr-eye-toggle { color: rgba(255, 255, 255, 0.6); }
.ppmstr-fullpage-card .ppmstr-eye-toggle:hover { color: #FFFFFF; }

.ppmstr-fullpage-footer {
	margin-top: 24px;
	font-size: 12px;
	color: rgba(255, 255, 255, 0.5);
}
