/* Medicine Archive Filter - Frontend Styles */

/* ---- Layout ---- */
.maf-wrapper { max-width:100%; margin:0 auto; padding:0px; display:flex; gap:14px; align-items:flex-start; flex-wrap:wrap; }

/* ---- Sidebar ---- */
.maf-sidebar {
	flex: 0 0 290px;
	background:#fff;
	border:1px solid #eee;
	border-radius:8px;
	padding:16px;
}
.maf-sidebar-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.maf-sidebar-head h3 { margin:0; font-size:16px; }
.maf-clear { font-size:14px; color:var(--maf-accent, #fd9900); text-decoration:none; background:none; border:none; cursor:pointer; padding:0; font-weight: 700; }

.maf-filter-group { border-bottom:1px solid #eee; padding:10px 0; }
.maf-group-toggle {
	width:100%; background:none; border:none; padding:0;
	display:flex; justify-content:space-between; align-items:center;
	font-weight:600; font-size:14px; cursor:pointer; color:#222;
}
.maf-arrow { font-size:10px; transition:transform .2s; }
.maf-filter-group.maf-collapsed .maf-arrow  { transform:rotate(180deg); }
.maf-filter-group.maf-collapsed .maf-group-body { display:none; }
.maf-group-body { margin-top:10px; }

/* Search inside a filter group */
.maf-cat-search-wrap { margin-bottom:8px; }
.maf-cat-search {
	width:100%; box-sizing:border-box; padding:7px 10px;
	border:1px solid #ddd; border-radius:6px; font-size:13px;
	outline:none; color:#333; background:#fafafa;
}
.maf-cat-search:focus { border-color:var(--maf-accent, #e0a23b); background:#fff; }

/* Scrollable option list */
.maf-cat-list { max-height:350px; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#ddd #f5f5f5; }
.maf-cat-list::-webkit-scrollbar { width:4px; }
.maf-cat-list::-webkit-scrollbar-track { background:#f5f5f5; border-radius:4px; }
.maf-cat-list::-webkit-scrollbar-thumb { background:#ddd; border-radius:4px; }
.maf-cat-list::-webkit-scrollbar-thumb:hover { background:#bbb; }

/* Checkboxes */
.maf-checkbox { display:flex; align-items:center; gap:8px; font-size:13px; padding:4px 0; cursor:pointer; }
.maf-checkbox.maf-locked { opacity:.6; cursor:default; }
.maf-checkbox input[type=checkbox] { accent-color:var(--maf-accent, #e0a23b); width:15px; height:15px; flex-shrink:0; }
.maf-label-text { flex:1; color:#444; }
.maf-count { color:#999; font-size:12px; }

/* ---- Content ---- */
.maf-content { flex:1 1 0; min-width:0; position:relative; }
.maf-topbar  { display:flex; gap:12px; justify-content:space-between; align-items:center; margin-bottom:20px; flex-wrap:wrap; }

/* Search box */
.maf-search-box {
	display:flex; flex:1; max-width:600px;
	border:1px solid #ddd; border-radius:6px; overflow:visible;
	position:relative;
}
.maf-search-box input { flex:1; border:none; padding:10px 14px; outline:none; border-radius:6px 0 0 6px; }
.maf-search-btn { background:#FD9900; color:#fff; border:none; padding:10px 22px; cursor:pointer; border-radius:0 6px 6px 0; }

/* Autocomplete dropdown */
.maf-suggestions {
	position:absolute; top:calc(100% + 4px); left:0; right:0;
	background:#fff; border:1px solid #ddd; border-radius:6px;
	z-index:999; box-shadow:0 4px 12px rgba(0,0,0,.1);
	max-height:240px; overflow-y:auto;
}
.maf-suggest-item {
	display:block; padding:9px 14px; font-size:14px; color:#333;
	text-decoration:none; border-bottom:1px solid #f0f0f0;
}
.maf-suggest-item:last-child { border-bottom:none; }
.maf-suggest-item:hover { background:#f9f5ee; color:#b3812e; }

.maf-sort-box select { padding:10px 14px; border:1px solid #ddd; border-radius:6px; }

/* Loading overlay */
.maf-loading {
	position:absolute; top:52px; left:0; right:0; bottom:0;
	display:flex; align-items:flex-start; justify-content:center;
	padding-top:60px; z-index:10; pointer-events:none;
}
.maf-spinner {
	width:36px; height:36px;
	border:4px solid #eee;
	border-top-color:var(--maf-primary, #2b3674);
	border-radius:50%;
	animation:maf-spin .7s linear infinite;
}
@keyframes maf-spin { to { transform:rotate(360deg); } }

/* ---- Grid ---- */
.maf-grid { display:grid; gap:20px; }
.maf-columns-3 { grid-template-columns:repeat(3,1fr); }
.maf-columns-2 { grid-template-columns:repeat(2,1fr); }
.maf-columns-4 { grid-template-columns:repeat(4,1fr); }
@media (max-width:992px) {
	.maf-columns-3,.maf-columns-2,.maf-columns-4 { grid-template-columns:repeat(2,1fr); }
	.maf-sidebar { flex:0 0 100%; }
}
@media (max-width:600px) {
	.maf-columns-3,.maf-columns-2,.maf-columns-4 { grid-template-columns:1fr; }
}

/* ---- Card ---- */
.maf-card {
	border-radius:var(--maf-card-radius, 16px); overflow:hidden; background:#fff;
	display:flex; flex-direction:column;
	border: 1px solid #e1e1e1;
}
.maf-card-image { background:#fafafa; display:flex; align-items:center; justify-content:center; min-height:200px; padding:0px; }
.maf-card-image a { display:block; width:100%; }
.maf-card-image img.maf-img { width:100%; height:100%; object-fit:cover; display:block; mix-blend-mode:normal; }
.maf-card-body { padding:16px; display:flex; flex-direction:column; gap:8px; flex:1; }

.maf-cat-badge { display:inline-block; }
.maf-cat-badge a {
	display:inline-block; background:var(--maf-badge-bg, #fff8ec); color:var(--maf-badge-text, #c87f2a);
	border:1px solid var(--maf-badge-border, #f0d49a); border-radius:20px;
	font-size:11px; font-weight:600; padding:3px 12px;
	text-decoration:none; letter-spacing:.3px;
}
.maf-card-title { margin:4px 0 0; }
.maf-card-title a { color:var(--maf-title-color, #1a1a2e); font-size:var(--maf-title-size, 16px); font-weight:700; text-decoration:none; line-height:1.3; }
.maf-card-title a:hover { color:var(--maf-primary, #2b3674); }
.maf-composition { color:var(--maf-composition-color, #777); font-size:var(--maf-composition-size, 13px); margin:0; line-height:1.5; }

.maf-actions { margin-top:auto; padding-top:10px; display:flex; gap:8px; }
.maf-call-back-btn {
	flex:1; text-align:center; background:var(--maf-primary, #1e2d6b); color:var(--maf-button-text, #fff);
	padding:10px; border-radius:50px; font-size:14px; font-weight:700;
	text-decoration:none; letter-spacing:.3px; transition:background .2s; box-sizing:border-box;
	border: none; cursor: pointer;
}
.maf-call-back-btn:hover { background:var(--maf-primary, #2b3674); color:var(--maf-button-text, #fff); filter:brightness(1.1); }
.maf-eye-btn {
	width:46px; height:46px; flex-shrink:0;
	display:flex; align-items:center; justify-content:center;
	border:1.5px solid #dde0ef; border-radius:50px;
	text-decoration:none; font-size:18px; color:var(--maf-primary, #2b3674);
	transition:border-color .2s,background .2s; box-sizing:border-box;
}
.maf-eye-btn:hover { border-color:var(--maf-primary, #2b3674); background:#f0f2f8; }

.maf-price-row { display:flex; justify-content:space-between; align-items:center; margin-top:2px; }
.maf-price { font-weight:700; font-size:var(--maf-price-size, 16px); color:var(--maf-price-color, #1a1a2e); }
.maf-price .woocommerce-Price-amount { font-weight:700; }
.maf-rating { font-size:13px; color:var(--maf-rating-color, #e0a23b); font-weight:600; }

.maf-no-products { padding:20px; color:#999; text-align:center; }

/* ---- Load More ---- */
.maf-load-more-wrap { margin-top:24px; display:flex; justify-content:center; }
.maf-load-more-btn {
	background:var(--maf-primary, #2b3674); color:var(--maf-button-text, #fff); border:none;
	padding:12px 34px; border-radius:50px;
	font-size:14px; font-weight:700; letter-spacing:.3px;
	cursor:pointer; transition:background .2s;
}
.maf-load-more-btn:hover { background:var(--maf-primary, #1e2d6b); filter:brightness(1.1); }
.maf-load-more-btn:disabled { opacity:.6; cursor:default; }

/* ---- Get a Call Back Modal ---- */
.maf-modal-overlay {
	display:none; position:fixed; inset:0; z-index:99999;
	background:rgba(20,20,30,.55);
	align-items:center; justify-content:center;
	padding:20px; box-sizing:border-box;
}
.maf-modal-overlay.maf-modal-active { display:flex; }
.maf-modal-box {
	background:#fff; border-radius:12px; padding:26px;
	width:100%; max-width:480px; max-height:90vh; overflow-y:auto;
	position:relative; box-shadow:0 10px 40px rgba(0,0,0,.25);
}
.maf-modal-close {
	position:absolute; top:12px; right:14px;
	background:none; border:none; font-size:26px; line-height:1;
	color:#888; cursor:pointer; padding:4px;
}
.maf-modal-close:hover { color:#222; }
.maf-modal-title { margin:0 0 4px; font-size:19px; color:var(--maf-title-color, #1a1a2e); }
.maf-modal-product { margin:0 0 14px; font-size:13px; color:var(--maf-badge-text, #c87f2a); font-weight:600; }
.maf-modal-body .wpcf7-form p { margin:0 0 12px; }
.maf-modal-body .wpcf7-form input[type="text"],
.maf-modal-body .wpcf7-form input[type="email"],
.maf-modal-body .wpcf7-form input[type="tel"],
.maf-modal-body .wpcf7-form textarea {
	width:100%; box-sizing:border-box; padding:10px 12px;
	border:1px solid #ddd; border-radius:6px; font-size:14px;
}
.maf-modal-body .wpcf7-form input[type="submit"] {
	background:var(--maf-primary, #1e2d6b); color:var(--maf-button-text, #fff); border:none;
	padding:11px 26px; border-radius:50px; font-weight:700;
	cursor:pointer;
}
.maf-modal-body .wpcf7-form input[type="submit"]:hover { background:var(--maf-primary, #2b3674); filter:brightness(1.1); }
