/**
 * Organela Profil Plugin Styles
 */

/* General Form Styles */
.organela-form {
	max-width: 600px;
	margin: 0 auto;
	padding: 30px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.organela-form-title {
	margin: 0 0 25px 0;
	font-size: 28px;
	font-weight: 600;
	color: #333;
	text-align: center;
}

.organela-form-group {
	margin-bottom: 20px;
}

.organela-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px;
}

@media (max-width: 600px) {
	.organela-form-row {
		grid-template-columns: 1fr;
	}
}

.organela-form-group label {
	display: block;
	margin-bottom: 8px;
	font-weight: 500;
	color: #333;
	font-size: 14px;
}

.organela-form-group label .required {
	color: #e74c3c;
	margin-left: 3px;
}

.organela-input {
	width: 100%;
	padding: 12px 15px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
	transition: border-color 0.3s ease;
	box-sizing: border-box;
}

.organela-input:focus {
	outline: none;
	border-color: #0073aa;
	box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.1);
}

.organela-help-text {
	display: block;
	margin-top: 5px;
	font-size: 12px;
	color: #666;
}

.organela-checkbox-label {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}

.organela-checkbox-label input[type="checkbox"] {
	width: auto;
	margin: 0;
	cursor: pointer;
}

/* Buttons */
.organela-button {
	padding: 12px 24px;
	border: none;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-block;
	text-align: center;
}

.organela-button-primary {
	background: #0073aa;
	color: #fff;
	width: 100%;
}

.organela-button-primary:hover {
	background: #005a87;
	color: #fff;
}

.organela-button-primary:disabled {
	background: #ccc;
	cursor: not-allowed;
}

.organela-button-small {
	padding: 8px 16px;
	font-size: 13px;
	background: #0073aa;
	color: #fff;
}

.organela-button-small:hover {
	background: #005a87;
	color: #fff;
}

/* Messages */
.organela-message {
	padding: 12px 15px;
	margin-bottom: 20px;
	border-radius: 4px;
	font-size: 14px;
}

.organela-message-error {
	background: #fee;
	border-left: 4px solid #e74c3c;
	color: #c0392b;
}

.organela-message-success {
	background: #efe;
	border-left: 4px solid #27ae60;
	color: #229954;
}

.organela-form-footer {
	margin-top: 20px;
	text-align: center;
	font-size: 14px;
}

.organela-form-footer p {
	margin: 10px 0;
}

.organela-form-footer a {
	color: #0073aa;
	text-decoration: none;
}

.organela-form-footer a:hover {
	text-decoration: underline;
}

/* ============================================
   LOGIN BOX - Organela Design
   ============================================ */

:root {
	--brand-green: #53B748;
	--brand-dark: #3d8c35;
	--natural-white: #FFFFFF;
	--earth-text: #333333;
	--soft-shadow: rgba(83, 183, 72, 0.08);
}

/* Override Elementor styles */
.organela-login-wrapper *,
.organela-login-wrapper *::before,
.organela-login-wrapper *::after {
	box-sizing: border-box !important;
}

/* Login Wrapper */
.organela-login-wrapper {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	min-height: 60vh !important;
	padding: 40px 20px !important;
	font-family: 'Montserrat', sans-serif !important;
}

/* Main Login Box */
.organela-login-wrapper .login-box,
.login-box {
	background-color: var(--natural-white) !important;
	width: 100% !important;
	max-width: 420px !important;
	padding: 50px 40px !important;
	border-radius: 24px !important;
	text-align: center !important;
	box-shadow: 
		0 10px 25px rgba(0, 0, 0, 0.02),
		0 20px 48px var(--soft-shadow) !important;
	border: 1px solid rgba(0, 0, 0, 0.03) !important;
	margin: 0 auto !important;
	position: relative !important;
}

.organela-login-wrapper .login-box h2,
.login-box h2 {
	font-family: 'Playfair Display', serif !important;
	color: var(--brand-dark) !important;
	font-size: 2rem !important;
	margin-bottom: 10px !important;
	margin-top: 0 !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

.login-box p {
	color: #777 !important;
	font-size: 0.9rem !important;
	margin-bottom: 35px !important;
	margin-top: 0 !important;
}

/* Brand Icon */
.brand-icon {
	max-width: 150px !important;
	height: auto !important;
	width: auto !important;
	margin-bottom: 15px !important;
	display: block !important;
	margin-top: 0 !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Input Groups */
.organela-login-wrapper .input-group,
.login-box .input-group,
.input-group {
	margin-bottom: 20px !important;
	text-align: left !important;
}

.organela-login-wrapper .input-group label,
.login-box .input-group label,
.input-group label {
	display: block !important;
	font-weight: 600 !important;
	font-size: 0.85rem !important;
	margin-bottom: 8px !important;
	color: var(--earth-text) !important;
	margin-left: 5px !important;
	margin-top: 0 !important;
}

.organela-login-wrapper .input-group input,
.login-box .input-group input,
.input-group input {
	width: 100% !important;
	padding: 14px 20px !important;
	border-radius: 12px !important;
	border: 1px solid #e0e6dd !important;
	background-color: white !important;
	font-size: 1rem !important;
	outline: none !important;
	transition: all 0.3s ease !important;
	box-sizing: border-box !important;
	font-family: 'Montserrat', sans-serif !important;
	margin: 0 !important;
}

.organela-login-wrapper .input-group input:focus,
.login-box .input-group input:focus,
.input-group input:focus {
	border-color: var(--brand-green) !important;
	box-shadow: 0 0 0 4px rgba(83, 183, 72, 0.1) !important;
}

.input-group input::placeholder {
	color: #999 !important;
}

/* Meta Options (Remember me & Forgot password) */
.meta-options {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-bottom: 30px !important;
	font-size: 0.85rem !important;
}

.remember-me {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	color: #666 !important;
	cursor: pointer !important;
	font-weight: 400 !important;
	margin: 0 !important;
}

.remember-me input[type="checkbox"] {
	width: auto !important;
	margin: 0 !important;
	cursor: pointer !important;
}

.forgot-pass {
	color: var(--brand-green) !important;
	text-decoration: none !important;
	font-weight: 600 !important;
}

.forgot-pass:hover {
	text-decoration: underline !important;
}

/* Login Button */
.organela-login-wrapper .btn-login,
.login-box .btn-login,
#organela-login-submit.btn-login,
.btn-login {
	background-color: var(--brand-green) !important;
	color: white !important;
	border: none !important;
	width: 100% !important;
	padding: 16px !important;
	border-radius: 12px !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	transition: all 0.3s ease !important;
	box-shadow: 0 4px 12px rgba(83, 183, 72, 0.2) !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	font-family: 'Montserrat', sans-serif !important;
	margin: 0 !important;
}

.organela-login-wrapper .btn-login:hover,
.login-box .btn-login:hover,
#organela-login-submit.btn-login:hover,
.btn-login:hover {
	background-color: var(--brand-dark) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 18px rgba(83, 183, 72, 0.3) !important;
}

.organela-login-wrapper .btn-login:disabled,
.login-box .btn-login:disabled,
#organela-login-submit.btn-login:disabled,
.btn-login:disabled {
	background-color: #ccc !important;
	cursor: not-allowed !important;
	transform: none !important;
	box-shadow: none !important;
}

/* Register Footer */
.register-footer {
	margin-top: 30px !important;
	padding-top: 25px !important;
	border-top: 1px solid #f0f0f0 !important;
	font-size: 0.9rem !important;
	color: #666 !important;
}

.register-footer a {
	color: var(--brand-green) !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

.register-footer a:hover {
	text-decoration: underline !important;
}

/* Messages in Login Box */
.login-box .organela-message {
	margin-bottom: 25px !important;
	padding: 12px 15px !important;
	border-radius: 12px !important;
	font-size: 0.9rem !important;
}

.login-box .organela-message-error {
	background: #fee !important;
	border-left: 4px solid #e74c3c !important;
	color: #c0392b !important;
}

.login-box .organela-message-success {
	background: #efe !important;
	border-left: 4px solid #27ae60 !important;
	color: #229954 !important;
}

/* Register Wrapper - Same as Login */
.organela-register-wrapper {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	min-height: 60vh !important;
	padding: 40px 20px !important;
	font-family: 'Montserrat', sans-serif !important;
}

/* Register Box - Same as Login Box */
.organela-register-wrapper .register-box,
.register-box {
	background-color: #FFFFFF !important;
	width: 100% !important;
	max-width: 420px !important;
	padding: 50px 40px !important;
	border-radius: 24px !important;
	text-align: center !important;
	box-shadow: 
		0 10px 25px rgba(0, 0, 0, 0.02),
		0 20px 48px var(--soft-shadow) !important;
	border: 1px solid rgba(0, 0, 0, 0.03) !important;
	margin: 0 auto !important;
	position: relative !important;
}

.organela-register-wrapper .register-box h2,
.register-box h2 {
	font-family: 'Playfair Display', serif !important;
	color: var(--brand-dark) !important;
	font-size: 2rem !important;
	margin-bottom: 10px !important;
	margin-top: 0 !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

.organela-register-wrapper .register-box p,
.register-box p {
	color: #777 !important;
	font-size: 0.9rem !important;
	margin-bottom: 35px !important;
}

.organela-register-wrapper .register-box .brand-icon,
.register-box .brand-icon {
	max-width: 150px !important;
	height: auto !important;
	width: auto !important;
	margin-bottom: 15px !important;
	display: block !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Register Input Groups */
.organela-register-wrapper .input-group,
.register-box .input-group,
.register-box .input-group {
	margin-bottom: 20px !important;
	text-align: left !important;
}

.organela-register-wrapper .input-group label,
.register-box .input-group label {
	display: block !important;
	font-weight: 600 !important;
	font-size: 0.85rem !important;
	margin-bottom: 8px !important;
	color: var(--earth-text) !important;
	margin-left: 5px !important;
	margin-top: 0 !important;
}

.organela-register-wrapper .input-group input,
.register-box .input-group input {
	width: 100% !important;
	padding: 14px 20px !important;
	border-radius: 12px !important;
	border: 1px solid #e0e6dd !important;
	background-color: white !important;
	font-size: 1rem !important;
	outline: none !important;
	transition: all 0.3s ease !important;
	box-sizing: border-box !important;
	font-family: 'Montserrat', sans-serif !important;
	margin: 0 !important;
}

.organela-register-wrapper .input-group input:focus,
.register-box .input-group input:focus {
	border-color: var(--brand-green) !important;
	box-shadow: 0 0 0 4px rgba(83, 183, 72, 0.1) !important;
}

.organela-register-wrapper .input-group small,
.register-box .input-group small {
	display: block !important;
	margin-top: 5px !important;
	font-size: 0.75rem !important;
	color: #666 !important;
}

/* Terms Checkbox */
.organela-register-wrapper .terms-checkbox,
.register-box .terms-checkbox {
	display: flex !important;
	align-items: flex-start !important;
	gap: 8px !important;
	margin-bottom: 30px !important;
	text-align: left !important;
	font-size: 0.85rem !important;
	color: #666 !important;
}

.organela-register-wrapper .terms-checkbox input[type="checkbox"],
.register-box .terms-checkbox input[type="checkbox"] {
	margin-top: 3px !important;
	cursor: pointer !important;
}

.organela-register-wrapper .terms-checkbox label,
.register-box .terms-checkbox label {
	cursor: pointer !important;
	margin: 0 !important;
}

.organela-register-wrapper .terms-checkbox a,
.register-box .terms-checkbox a {
	color: var(--brand-green) !important;
	text-decoration: none !important;
}

.organela-register-wrapper .terms-checkbox a:hover,
.register-box .terms-checkbox a:hover {
	text-decoration: underline !important;
}

/* Register Button */
.organela-register-wrapper .btn-register,
.register-box .btn-register,
#organela-register-submit.btn-register,
.btn-register {
	background-color: var(--brand-green) !important;
	color: white !important;
	border: none !important;
	width: 100% !important;
	padding: 16px !important;
	border-radius: 12px !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	transition: all 0.3s ease !important;
	box-shadow: 0 4px 12px rgba(83, 183, 72, 0.2) !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	font-family: 'Montserrat', sans-serif !important;
	margin: 0 !important;
}

.organela-register-wrapper .btn-register:hover,
.register-box .btn-register:hover,
#organela-register-submit.btn-register:hover,
.btn-register:hover {
	background-color: var(--brand-dark) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 18px rgba(83, 183, 72, 0.3) !important;
}

.organela-register-wrapper .btn-register:disabled,
.register-box .btn-register:disabled,
#organela-register-submit.btn-register:disabled,
.btn-register:disabled {
	background-color: #ccc !important;
	cursor: not-allowed !important;
	transform: none !important;
	box-shadow: none !important;
}

/* Register Footer */
.organela-register-wrapper .register-footer,
.register-box .register-footer {
	margin-top: 30px !important;
	padding-top: 25px !important;
	border-top: 1px solid #f0f0f0 !important;
	font-size: 0.9rem !important;
	color: #666 !important;
}

.organela-register-wrapper .register-footer a,
.register-box .register-footer a {
	color: var(--brand-green) !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

.organela-register-wrapper .register-footer a:hover,
.register-box .register-footer a:hover {
	text-decoration: underline !important;
}

/* Dashboard Styles */
.organela-dashboard-wrapper {
	max-width: 1200px;
	margin: 40px auto;
	padding: 0 20px;
}

.organela-dashboard-header {
	margin-bottom: 30px;
	text-align: center;
}

.organela-dashboard-title {
	font-size: 32px;
	font-weight: 600;
	color: #333;
	margin: 0 0 10px 0;
}

.organela-dashboard-welcome {
	font-size: 16px;
	color: #666;
	margin: 0;
}

/* Tabs */
.organela-dashboard-tabs {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	overflow: hidden;
}

.organela-tab-nav {
	display: flex;
	border-bottom: 2px solid #eee;
	background: #f9f9f9;
}

.organela-tab-button {
	flex: 1;
	padding: 15px 20px;
	background: transparent;
	border: none;
	border-bottom: 3px solid transparent;
	font-size: 15px;
	font-weight: 500;
	color: #666;
	cursor: pointer;
	transition: all 0.3s ease;
}

.organela-tab-button:hover {
	color: #0073aa;
	background: #f0f0f0;
}

.organela-tab-button.active {
	color: #0073aa;
	border-bottom-color: #0073aa;
	background: #fff;
}

.organela-tab-content {
	display: none;
	padding: 30px;
}

.organela-tab-content.active {
	display: block;
}

/* Profile Form */
.organela-profile-form-wrapper {
	max-width: 800px;
}

/* Orders Table */
.organela-orders-list {
	overflow-x: auto;
}

.organela-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 20px;
}

.organela-table thead {
	background: #f9f9f9;
}

.organela-table th {
	padding: 12px 15px;
	text-align: left;
	font-weight: 600;
	color: #333;
	border-bottom: 2px solid #eee;
	font-size: 14px;
}

.organela-table td {
	padding: 12px 15px;
	border-bottom: 1px solid #eee;
	font-size: 14px;
}

.organela-table tbody tr:hover {
	background: #f9f9f9;
}

.organela-table a {
	color: #0073aa;
	text-decoration: none;
}

.organela-table a:hover {
	text-decoration: underline;
}

/* Addresses */
.organela-addresses-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	margin-top: 20px;
}

@media (max-width: 768px) {
	.organela-addresses-wrapper {
		grid-template-columns: 1fr;
	}
}

.organela-address-section {
	padding: 20px;
	background: #f9f9f9;
	border-radius: 4px;
}

.organela-address-section h3 {
	margin: 0 0 15px 0;
	font-size: 18px;
	color: #333;
}

.organela-address-content address {
	font-style: normal;
	line-height: 1.8;
	color: #666;
	margin-bottom: 15px;
}

.organela-address-content p {
	color: #666;
	margin-bottom: 15px;
}

/* Loading State */
.organela-loading {
	opacity: 0.6;
	pointer-events: none;
	position: relative;
}

.organela-loading::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	margin: -10px 0 0 -10px;
	border: 2px solid #0073aa;
	border-top-color: transparent;
	border-radius: 50%;
	animation: organela-spin 0.6s linear infinite;
}

@keyframes organela-spin {
	to {
		transform: rotate(360deg);
	}
}

/* Responsive */
@media (max-width: 768px) {
	.organela-login-wrapper,
	.organela-register-wrapper {
		min-height: auto !important;
		padding: 20px 15px !important;
	}
	
	.login-box,
	.register-box {
		padding: 40px 30px !important;
		max-width: 100% !important;
	}
	
	.login-box h2,
	.register-box h2 {
		font-size: 1.75rem !important;
	}
	
	.meta-options {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 15px !important;
	}
	
	.organela-form {
		padding: 20px;
	}
	
	.organela-dashboard-wrapper {
		padding: 0 10px;
	}
	
	.organela-tab-content {
		padding: 20px;
	}
	
	.organela-table {
		font-size: 12px;
	}
	
	.organela-table th,
	.organela-table td {
		padding: 8px 10px;
	}
}

@media (max-width: 480px) {
	.login-box,
	.register-box {
		padding: 30px 20px !important;
		border-radius: 20px !important;
	}
	
	.login-box h2,
	.register-box h2 {
		font-size: 1.5rem !important;
	}
	
	.brand-icon {
		max-width: 120px !important;
	}
}

