/* Fauna Marin – Balling Light Calculator (RTL Hebrew) */

.fbl-wrap {
	max-width: 1100px;
	margin: 0 auto;
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 3px;
	overflow: hidden;
	font-family: inherit;
	font-weight: 400;
	line-height: 1.35;
}

/* Reduce top gaps inside typical WP themes */
.fbl-wrap, .fbl-wrap * { box-sizing: border-box; }
.fbl-wrap { padding-top: 0; }
.fbl-body { padding: 18px 18px 22px; }

.fbl-topbar {
	background: #0b5d8f;
	padding: 10px 14px;
}

.fbl-title {
	color: #fff;
	font-weight: 700;
	font-size: 20px;
}

.fbl-subtitle {
	margin: 10px 0 14px;
	color: #333;
	font-size: 13px;
}

.fbl-notes {
	background: #fbfbfb;
	border: 1px solid #efefef;
	border-radius: 3px;
	padding: 12px 12px 10px;
	margin-bottom: 14px;
}

.fbl-notes-title {
	font-weight: 700;
	font-size: 12px;
	margin-bottom: 6px;
}

.fbl-notes ul {
	margin: 0 18px 6px 0;
	padding: 0;
	font-size: 12px;
	color: #222;
}

.fbl-notes li { margin: 3px 0; }

.fbl-readmore {
	display: inline-block;
	margin-top: 6px;
	color: #0b5d8f;
	text-decoration: none;
	font-size: 12px;
}
.fbl-readmore:hover { text-decoration: underline; }

.fbl-note-small {
	margin-top: 8px;
	font-size: 11px;
	color: #666;
}

.fbl-row {
	display: flex;
	gap: 12px;
	align-items: center;
	justify-content: space-between;
	margin: 10px 0 14px;
}

.fbl-label {
	font-weight: 700;
	font-size: 12px;
	color: #222;
	white-space: nowrap;
}

.fbl-water-controls {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 1;
	justify-content: flex-start;
}

.fbl-unit-toggle {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.fbl-radio {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: #222;
	cursor: pointer;
	user-select: none;
}

.fbl-input {
	width: 100%;
	border: 1px solid #d9d9d9;
	border-radius: 3px;
	padding: 9px 10px;
	font-size: 13px;
	background: #fff;
}

.fbl-row-water .fbl-input {
	max-width: 240px;
}

.fbl-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
}

.fbl-group {
	border-top: 1px solid #eee;
	padding-top: 12px;
}

.fbl-group-title {
	font-weight: 700;
	font-size: 12px;
	margin-bottom: 6px;
	color: #222;
}

.fbl-small {
	display: block;
	font-size: 11px;
	color: #333;
	margin: 8px 0 6px;
}

.fbl-result-title {
	margin-top: 12px;
	font-weight: 700;
	font-size: 12px;
	color: #222;
}

.fbl-output {
	background: #efefef;
	color: #222;
}

.fbl-footer {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid #eee;
}

.fbl-footnote {
	font-size: 11px;
	color: #666;
}

/* Responsive */
@media (max-width: 900px) {
	.fbl-grid { grid-template-columns: 1fr; }
	.fbl-row { flex-direction: column; align-items: stretch; }
	.fbl-water-controls { justify-content: space-between; }
	.fbl-row-water .fbl-input { max-width: none; }
}

/* Ensure RTL input alignment feels natural */
.fbl-wrap input[type="number"],
.fbl-wrap input[type="text"] {
	text-align: right;
	direction: rtl;
}


/* Keep proportions on small screens */
@media (max-width: 900px) {
  .fbl-wrap { font-size: 16px; }
  .fbl-title { font-size: 21px; }
  .fbl-input { font-size: 16px; }
}

/* Typography sizing (strong override for theme builders like Elementor) */
.fbl-wrap{
  --fbl-base: 18px;
  font-size: var(--fbl-base) !important;
  font-weight: 400 !important;
}

/* Headline */
.fbl-title{ font-size: 24px !important; }

/* Body text */
.fbl-subtitle{ font-size: 16px !important; }
.fbl-notes-title{ font-size: 15px !important; }
.fbl-notes ul{ font-size: 15px !important; }
.fbl-readmore{ font-size: 15px !important; }
.fbl-note-small{ font-size: 14px !important; }

.fbl-label{ font-size: 15px !important; }
.fbl-radio{ font-size: 15px !important; }
.fbl-group-title{ font-size: 15px !important; }
.fbl-small{ font-size: 14px !important; }
.fbl-result-title{ font-size: 15px !important; }
.fbl-footnote{ font-size: 14px !important; }

/* Inputs */
.fbl-input{
  font-size: 16px !important;
  padding: 12px 12px !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
}
.fbl-row-water .fbl-input{ max-width: 320px !important; }

/* Mobile */
@media (max-width: 900px){
  .fbl-wrap{ --fbl-base: 18px; }
  .fbl-title{ font-size: 22px !important; }
  .fbl-input{ font-size: 16px !important; }
}
