/* MiTrabajoOnline Style for WP Job Manager - clean pro layout */
:root {
	--mto-bg: #eef3fb;
	--mto-card: #ffffff;
	--mto-border: #dbe4f3;
	--mto-text: #1f2a44;
	--mto-muted: #6f7b91;
	--mto-primary: #1463ff;
	--mto-primary-dark: #0d4fe0;
	--mto-shadow: 0 14px 32px rgba(22, 33, 74, 0.08);
	--mto-radius-lg: 24px;
	--mto-radius-md: 18px;
}
body.mto-trabajoonline-style-active { background: var(--mto-bg); }
.mto-shell,.mto-shell *,.mto-results-panel .job_listings *,.mto-results-panel ul.job_listings li.job_listing a * {
	box-sizing: border-box; writing-mode: horizontal-tb !important; word-break: normal !important; overflow-wrap: anywhere;
}
.mto-shell {
	max-width: 1180px; margin: 0 auto; padding: 28px 18px 48px; display: grid;
	grid-template-columns: minmax(0, 1fr) 300px; gap: 22px; align-items: start;
	font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--mto-text);
}
.mto-main-column { display:flex; flex-direction:column; gap:18px; min-width:0; }
.mto-card { background:var(--mto-card); border:1px solid var(--mto-border); border-radius:var(--mto-radius-lg); box-shadow:var(--mto-shadow); padding:22px; }
.mto-page-header h1 { margin:0; font-size:clamp(2rem,3vw,3rem); line-height:1.05; letter-spacing:-0.04em; }
.mto-page-header p,.mto-newsletter-card p,.mto-cta-card p { color:var(--mto-muted); line-height:1.55; }
.mto-page-header p { margin:8px 0 0; font-size:1.05rem; }
.mto-search-bar {
	display:grid; grid-template-columns:1.2fr 18px 1fr auto; align-items:center; background:var(--mto-card);
	border:1px solid var(--mto-border); box-shadow:var(--mto-shadow); border-radius:18px; padding:6px;
}
.mto-search-input { width:100%; min-height:58px; border:none; outline:none; background:transparent; padding:0 18px; font-size:1.05rem; color:var(--mto-text); }
.mto-search-divider { width:1px; height:32px; background:var(--mto-border); justify-self:center; }
.mto-btn {
	display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 18px; border-radius:14px;
	border:none; text-decoration:none; font-weight:700; cursor:pointer; transition:transform .18s ease, background .18s ease, color .18s ease;
}
.mto-btn:hover { transform: translateY(-1px); }
.mto-btn-primary { background:var(--mto-primary); color:#fff; box-shadow:0 10px 18px rgba(20,99,255,.22); }
.mto-btn-primary:hover { background:var(--mto-primary-dark); color:#fff; }
.mto-btn-full { width:100%; }
.mto-search-button { margin:4px; padding-inline:28px; }
.mto-results-panel > .job_listings,.mto-results-panel > .job_filters,.mto-results-panel .job_listings,.mto-results-panel .job_filters { background:transparent; }
.mto-results-panel .job_filters { margin:0; }
.mto-results-panel .job_filters .search_jobs {
	position:absolute !important; left:-9999px !important; top:auto !important; width:1px !important; height:1px !important; overflow:hidden !important;
}
.mto-results-panel .job_filters .showing_jobs,
.mto-results-panel .job_filters .job_types,
.mto-results-panel .job_filters .search_categories,
.mto-results-panel .job_filters .search_region,
.mto-results-panel .job_filters .search_submit,
.mto-results-panel .job_filters .search_location label,
.mto-results-panel .job_filters .search_keywords label { display:none !important; }
.mto-results-panel ul.job_listings {
	margin:0 !important; padding:0 !important; border:0 !important; display:flex; flex-direction:column; gap:14px; list-style:none !important;
}
.mto-results-panel ul.job_listings li.job_listing,.mto-results-panel ul.job_listings li.no_job_listings_found {
	background:var(--mto-card); border:1px solid var(--mto-border) !important; border-radius:22px; box-shadow:var(--mto-shadow); padding:0 !important; overflow:hidden; width:100%;
}
.mto-results-panel ul.job_listings li.job_listing a {
	display:grid !important; grid-template-columns:76px minmax(320px,1fr) 180px 160px !important; align-items:center !important;
	gap:18px; padding:18px !important; text-decoration:none; width:100% !important; min-width:0 !important;
}
.mto-results-panel .company_logo,.mto-results-panel img.company_logo {
	position:relative !important; left:auto !important; top:auto !important; width:56px !important; height:56px !important;
	max-width:56px !important; min-width:56px !important; border-radius:16px !important; object-fit:cover !important;
	background:#edf3ff; padding:3px; box-shadow:0 12px 24px rgba(35,57,119,.18);
}
.mto-results-panel .position { padding:0 !important; float:none !important; width:auto !important; max-width:none !important; min-width:0 !important; overflow:visible !important; }
.mto-results-panel .position h3,.mto-results-panel .position .company,.mto-results-panel .position .tagline,.mto-results-panel .location,.mto-results-panel .date {
	display:block !important; width:auto !important; max-width:none !important; white-space:normal !important; word-break:keep-all !important; hyphens:none !important; text-align:left !important; transform:none !important;
}
.mto-results-panel .position h3 { font-size:1.12rem !important; line-height:1.3 !important; margin:0 0 6px !important; color:var(--mto-primary) !important; font-weight:800 !important; }
.mto-results-panel .position .company,.mto-results-panel .position .tagline { font-size:.98rem !important; color:var(--mto-muted) !important; font-weight:600 !important; }
.mto-results-panel .location,.mto-results-panel .date,.mto-results-panel .company { float:none !important; position:static !important; margin:0 !important; padding:0 !important; border:none !important; }
.mto-results-panel .location { font-weight:600; color:var(--mto-muted); }
.mto-results-panel .date { font-weight:600; color:var(--mto-muted); text-align:right !important; justify-self:end; }
.mto-results-panel .job-type,.mto-results-panel .job_listing .meta,.mto-results-panel .company strong { display:none !important; }
.mto-newsletter-form { display:flex; flex-direction:column; gap:12px; margin-top:14px; }
.mto-newsletter-form input { min-height:52px; border-radius:14px; border:1px solid var(--mto-border); padding:0 14px; font-size:1rem; }
.mto-sidebar { display:flex; flex-direction:column; gap:18px; }
.mto-newsletter-card h3,.mto-cta-card h3 { margin:0 0 14px; font-size:1.9rem; line-height:1.12; letter-spacing:-0.03em; text-wrap:balance; }
.mto-results-panel .load_more_jobs,.mto-results-panel .load_more_jobs strong { border-radius:14px !important; }
@media (max-width:980px) { .mto-shell { grid-template-columns:1fr; } }
@media (max-width:780px) {
	.mto-search-bar { grid-template-columns:1fr; gap:8px; padding:10px; }
	.mto-search-divider { display:none; }
	.mto-results-panel ul.job_listings li.job_listing a { grid-template-columns:56px 1fr !important; gap:14px; }
	.mto-results-panel .location,.mto-results-panel .date { grid-column:2; text-align:left !important; justify-self:start; }
}
